创建接入点 - Amazon Simple Storage Service

创建接入点

一个接入点只与一个 Amazon S3 存储桶相关联。如果您想使用您的 AWS 账户中的存储桶,则必须首先创建存储桶。有关创建存储桶的更多信息,请参阅创建、配置和使用 Amazon S3 存储桶

您也可以创建与另一个 AWS 账户中的存储桶关联的跨账户接入点,只要您知道存储桶名称和存储桶拥有者的账户 ID。但是,在获得存储桶拥有者授予的权限之前,创建跨账户接入点不会授予您访问存储桶中数据的权限。存储桶拥有者必须通过存储桶策略向接入点拥有者的账户(您的账户)授予对存储桶的访问权限。有关更多信息,请参阅授予跨账户接入点的权限

默认情况下,您可为每个 AWS 账户在每个区域创建最多 10000 个接入点。如果您需要在单个区域为一个账户使用超过 10000 个接入点,则可以请求增加服务限额。有关服务限额和请求增加限额的更多信息,请参阅《AWS 一般参考》中的 AWS 服务限额

以下示例演示如何使用 AWS CLI 和 S3 控制台创建接入点。有关如何使用 REST API 创建接入点的信息,请参阅《Amazon Simple Storage Service API 参考》中的 CreateAccessPoint

创建接入点
  1. 登录到AWS Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 在左侧导航窗格中,选择接入点

  3. 接入点页面上,选择创建接入点

  4. 接入点名称字段中,输入接入点的名称。有关命名接入点的更多信息,请参阅命名 Amazon S3 接入点的规则

  5. 对于存储桶名称,指定要与接入点结合使用的 S3 存储桶。

    要使用您账户中的存储桶,请选择选择此账户中的存储桶,然后输入或浏览目标存储桶。

    要使用其他 AWS 账户中的存储桶,请选择指定另一个账户中的存储桶,然后输入该存储桶的 AWS 账户 ID 和名称。

    注意

    如果您使用其他 AWS 账户中的存储桶,存储桶拥有者必须更新存储桶策略才能授权来自接入点的请求。有关存储桶策略示例,请参阅 授予跨账户接入点的权限

  6. 选择网络来源。如果您选择 Virtual private cloud(VPC),请输入要与接入点一起使用的 VPC ID

    有关接入点的网络源的更多信息,请参阅创建限制到 Virtual Private Cloud 的接入点

  7. Block Public Access settings for this Access Point(阻止此接入点的公有访问设置)下,选择要应用于接入点的屏蔽公共访问权限设置。默认情况下,为新的接入点启用所有屏蔽公共访问权限设置。除非您有特定的需求要禁用任何一个设置,建议您将所有设置保持为启用状态。

    注意

    创建接入点后,无法更改其屏蔽公共访问权限设置。

    有关将 Amazon S3 屏蔽公共访问权限与接入点结合使用的更多信息,请参阅管理接入点的公有访问

  8. (可选)在 Access point policy(接入点策略)- optional(可选)下,指定接入点策略。在保存策略之前,确保解决任何安全警告、错误、一般警告和建议。有关指定接入点策略的更多信息,请参阅接入点策略示例

  9. 选择 Create access point(创建接入点)

以下示例命令为账户 111122223333 中的存储桶 DOC-EXAMPLE-BUCKET 创建了一个名为 example-ap 的接入点。要创建接入点,您需要向 Amazon S3 发送一个指定以下内容的请求:

  • 接入点名称。有关命名规则的信息,请参阅 命名 Amazon S3 接入点的规则

  • 要与接入点关联的存储桶的名称。

  • 拥有存储桶的 AWS 账户的账户 ID。

aws s3control create-access-point --name example-ap --account-id 111122223333 --bucket DOC-EXAMPLE-BUCKET

当您使用其他 AWS 账户中的存储桶创建接入点时,请包括 --bucket-account-id 参数。以下示例命令使用位于 AWS 账户 444455556666 中的存储桶 DOC-EXAMPLE-BUCKET2 在 AWS 账户 111122223333 中创建接入点。

aws s3control create-access-point --name example-ap --account-id 111122223333 --bucket DOC-EXAMPLE-BUCKET --bucket-account-id 444455556666