Amazon S3 中的 Identity and Access Management - Amazon Simple Storage Service

Amazon S3 中的 Identity and Access Management

默认情况下,所有 Amazon S3 资源都是私有的,包括存储桶、对象和相关子资源(例如,lifecycle 配置和 website 配置)。只有资源拥有者和创建资源的 AWS 账户可以访问该资源。资源拥有者可以选择通过编写访问策略授予他人访问权限。

Amazon S3 提供的访问策略选项大致可分为基于资源的策略和用户策略两类。附加到资源(存储桶和对象)的访问策略称为基于资源的策略。例如,存储桶策略和接入点策略都是基于资源的策略。您也可以将访问策略附加到您账户中的用户。这些策略称为用户策略。您可以选择使用基于资源的策略、用户策略或这些策略的某种组合来管理您的 Amazon S3 资源权限。您也可以使用访问控制列表 (ACL) 向其他 AWS 账户 授予基本的读/写权限。

预设情况下,当另一个 AWS 账户 将对象上载到您的 S3 存储桶,该账户(对象编写者)拥有该对象,拥有对象的访问权限,并可以授予其他用户通过 ACL 访问该数据元的权限。您可以使用对象所有权来更改此原定设置行为,以便禁用 ACL,并且作为存储桶拥有者,您可以自动拥有存储桶中的每个对象。因此,数据的访问控制基于策略,例如 IAM policy、S3 存储桶策略、虚拟私有云(VPC)端点策略和 AWS Organizations 服务控制策略(SCP)。

Amazon S3 中的大多数现代使用案例不再需要使用 ACL,我们建议您禁用 ACL,除非在需要单独控制每个对象的访问的异常情况下。使用对象所有权,您可以禁用 ACL 并依赖策略进行访问控制。禁用 ACL 时,您可以轻松通过不同的 AWS 账户 上载的对象维护存储桶。作为存储桶拥有者,您拥有存储桶中的所有对象,并可以使用策略管理对它们的访问。有关更多信息,请参阅为您的存储桶控制对象所有权和禁用 ACL。

有关管理对 Amazon S3 对象和存储桶的访问权限的更多信息,请参阅以下主题。