如何使用 Rails 保护图像?
我的 Rails 应用程序中有一个画廊,只需要允许向特定的登录用户显示某些图像。我现在使用 Paperclip 进行图像处理,但它将所有图像保存在任何人都可以使用的公共文件夹中。
请注意,如果有更好的方法,我不必使用 Paperclip,并且我已经有了登录系统。我只需要一种方法将图像放置在非公共位置,但仍然能够根据需要提供它们。
是否可以只允许将这些图像提供给经过身份验证的用户?
I have a gallery in my rails app that needs to only allow certain images to be shown to specific, logged in users. I am using Paperclip for image processing now, but it saves all images in a public folder available to anyone.
Note that I don't have to use Paperclip if there is a better way, and I already have the login system in place. I just need a way to place the images in a non-public location, but still be able to serve them as needed.
Is it possible to only allow these images to be served to authenticated users?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在这里您可以找到如何更改上传图片的路径。如果你已经这样做了。您需要创建一个为这些静态文件提供服务的控制器。
例如: 回形针示例应用程序第 2 部分:通过控制器下载文件
是的,您只需要检查用户是否在负责图像的控制器操作中登录。
Here you can find how to change the path of the uploaded pictures. If you have done this. You need to create a controller which serves these static files.
For Example: Paperclip sample app part 2: downloading files through a controller
Yes, you just need to check if the user is logged in in the controller action responsible for the image.