【问题标题】:Laravel 5.1 S3 Secure Image access via Restful APILaravel 5.1 S3 通过 Restful API 访问安全图像
【发布时间】:2016-11-03 13:22:05
【问题描述】:

我在 Laravel 5.1 上为 Restful API 使用基于令牌的身份验证。我使用 S3 作为文件存储来上传用户特定的图像。我想将访问权限限制为仅上传图像的用户。他们应该能够在移动 API 中查看图像。有没有办法在不公开 S3 目录的情况下使用 Laravel 5.1 和 S3?

【问题讨论】:

    标签: laravel amazon-s3 laravel-5.1


    【解决方案1】:

    您无法直接对请求者和 S3 执行此操作,但您可以将 S3 客户端 SDK 合并到充当中间人的 Laravel 项目中。

    您的 Laravel 项目将有一个 API 可以接收获取资源的请求,并且需要进行身份验证和授权。 这还需要从 user_ids 映射到用户有权访问的资源的 URL/名称列表。像 DynamoDB 这样的东西很好。

    如果成功,您可以做以下两件事之一:

    1. 获取对象并直接返回给请求者,这可能是最安全和最简单的。

    2. 获取签名 URL (http://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURL.html),以便请求者可以单独获取资源。这对于大型对象(例如视频)很有用,但任何有权访问中间 URL(例如代理服务器)的人也可以访问该资源。

    【讨论】:

      猜你喜欢
      • 2017-04-16
      • 2020-04-28
      • 2011-10-14
      • 2011-10-21
      • 2015-11-05
      • 2011-12-21
      • 1970-01-01
      • 2020-10-17
      • 1970-01-01
      相关资源
      最近更新 更多