Amazon S3 中的策略和权限 - Amazon Simple Storage Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

欢迎使用新的 Amazon S3 用户指南! Amazon S3 用户指南结合了以下三个已停用的指南中的信息和说明:Amazon S3 开发人员指南Amazon S3 控制台用户指南Amazon S3 入门指南

Amazon S3 中的策略和权限

本页概述 Amazon S3 中的存储桶和用户策略,并介绍策略的基本元素。每个列出的元素都链接到有关该元素以及如何使用它的示例的更多详细信息。

要查看 Amazon S3 操作、资源和条件的完整列表,请参阅 Amazon S3 的操作、资源和条件键

就其最基本的意义而言,策略包含以下元素:

  • Resource – 存储桶、对象、访问点和作业是您可以允许或拒绝其权限的 Amazon S3 资源。在策略中,使用 Amazon 资源名称 (ARN) 标识资源。有关更多信息,请参阅 Amazon S3 资源

  • Action – 对于每个资源,Amazon S3 支持一组操作。您可使用操作关键字标识允许(或拒绝)的资源操作。

    例如,使用 s3:ListBucket 权限,用户可以使用 Amazon S3 GET Bucket (List Objects) 操作。有关更多信息,请参阅 Amazon S3 操作

  • Effect – 当用户请求特定操作(可以是 allowdeny)时的效果。

    如果没有显式授予 (允许) 对资源的访问权限,则隐式拒绝访问。您也可显式拒绝对资源的访问。您可以执行此操作以确保用户无法访问资源,即使其他策略授予访问权限也是如此。有关更多信息,请参阅 IAM JSON 策略元素:Effect

  • Principal – 允许访问语句中的操作和资源的账户或用户。在存储桶策略中,委托人是作为此权限的接收者的用户、账户、服务或其他实体。有关更多信息,请参阅 委托人

  • Condition – 策略生效时的条件。您可以使用 AWS 范围内的键和特定于 Amazon S3 的键来指定 Amazon S3 访问策略中的条件。有关更多信息,请参阅 Amazon S3 条件键示例

以下示例存储桶策略显示了效果、委托人、操作和资源元素。此策略允许账户 Account-ID 中的用户 Dave 对 awsexamplebucket1 存储桶具有 s3:GetObjects3:GetBucketLocation、和 s3:ListBucket Amazon S3 权限。

{ "Version": "2012-10-17", "Id": "ExamplePolicy01", "Statement": [ { "Sid": "ExampleStatement01", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:user/Dave" }, "Action": [ "s3:GetObject", "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::awsexamplebucket1/*", "arn:aws:s3:::awsexamplebucket1" ] } ] }

有关更多信息,请参阅以下主题。有关完整的策略语言信息,请参阅《IAM 用户指南》中的策略和权限IAM JSON 策略参考