在医疗保健应用程序中使用 s3,专用链接
Using s3 in a healthcare application, private links
我们开发了一个基于 rails 的医疗保健应用程序。配置我们的 s3 实现以便只有经过身份验证的用户才能访问图像的最佳方法是什么?
从 Documentation 开始,您应该使用 Amazon 的 "canned" ACL 之一。
Amazon 接受以下标准 ACL:
:private
:public_read
:public_read_write
:authenticated_read
:bucket_owner_read
:bucket_owner_full_control
您可以在创建存储桶时指定 ACL 或稍后更新存储桶。
# at create time, defaults to :private when not specified
bucket = s3.buckets.create('name', :acl => :public_read)
# replacing an existing bucket ACL
bucket.acl = :private
想要 post 这个问题的更新答案,因为 S3 API 自 2015 年以来发生了(轻微的)变化。这是 link 到 updated ACL section S3 文档。此外,上述答案反映了 Ruby SDK 的使用,并非每个人都使用。
罐装 ACL 是 S3 支持的预定义授权,具有特定的被授予者和适当的权限。可以通过 SDK 发送预制 ACL,如以上答案所示,或者在 HTTP 请求中使用 x-amz-acl
请求 header 获取新资源,或者使用请求 header 或 body 现有资源。
固定的 ACL 如下。除非另有说明,否则存储桶所有者除了列出的其他权限外还具有 FULL_CONTROL
:
- 私有:没有其他用户被授予访问权限(默认)
- public-read:AllUsers 组获得
READ
访问权限
- public-read-写入:AllUsers 组获得
READ
和 WRITE
访问权限(不推荐)
- aws-exec-read:Amazon EC2 获得
READ
访问 GET
Amazon 机器映像(捆绑包)
- authenticated-read:AuthenticatedUsers 组获得
READ
访问权限
- bucket-owner-read:存储桶所有者获得
READ
访问权限。创建桶时被忽略
- bucket-owner-full-control:object 和存储桶所有者都获得
FULL_CONTROL
超过 object。创建桶时被忽略
- log-delivery-write:LogDelivery 组获得
WRITE
和 READ_ACP
权限
文档中还指出:您只能在请求中指定一个固定 ACL
我们开发了一个基于 rails 的医疗保健应用程序。配置我们的 s3 实现以便只有经过身份验证的用户才能访问图像的最佳方法是什么?
从 Documentation 开始,您应该使用 Amazon 的 "canned" ACL 之一。
Amazon 接受以下标准 ACL:
:private
:public_read
:public_read_write
:authenticated_read
:bucket_owner_read
:bucket_owner_full_control
您可以在创建存储桶时指定 ACL 或稍后更新存储桶。
# at create time, defaults to :private when not specified
bucket = s3.buckets.create('name', :acl => :public_read)
# replacing an existing bucket ACL
bucket.acl = :private
想要 post 这个问题的更新答案,因为 S3 API 自 2015 年以来发生了(轻微的)变化。这是 link 到 updated ACL section S3 文档。此外,上述答案反映了 Ruby SDK 的使用,并非每个人都使用。
罐装 ACL 是 S3 支持的预定义授权,具有特定的被授予者和适当的权限。可以通过 SDK 发送预制 ACL,如以上答案所示,或者在 HTTP 请求中使用 x-amz-acl
请求 header 获取新资源,或者使用请求 header 或 body 现有资源。
固定的 ACL 如下。除非另有说明,否则存储桶所有者除了列出的其他权限外还具有 FULL_CONTROL
:
- 私有:没有其他用户被授予访问权限(默认)
- public-read:AllUsers 组获得
READ
访问权限 - public-read-写入:AllUsers 组获得
READ
和WRITE
访问权限(不推荐) - aws-exec-read:Amazon EC2 获得
READ
访问GET
Amazon 机器映像(捆绑包) - authenticated-read:AuthenticatedUsers 组获得
READ
访问权限 - bucket-owner-read:存储桶所有者获得
READ
访问权限。创建桶时被忽略 - bucket-owner-full-control:object 和存储桶所有者都获得
FULL_CONTROL
超过 object。创建桶时被忽略 - log-delivery-write:LogDelivery 组获得
WRITE
和READ_ACP
权限
文档中还指出:您只能在请求中指定一个固定 ACL