为您的账户配置屏蔽公共访问权限设置 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

为您的账户配置屏蔽公共访问权限设置

Amazon S3 屏蔽公共访问权限提供接入点、存储桶和账户的设置,帮助您管理对 Amazon S3 资源的公有访问。默认情况下,新存储桶、接入点和对象不允许公有访问。

有关更多信息,请参阅阻止对您的 Amazon S3 存储的公有访问

注意

账户级别设置会覆盖各个对象的设置。将您的账户配置为屏蔽公共访问权限后,将覆盖对账户内单个对象所设定的任何公共访问权限设置。

您可以使用 S3 控制台、Amazon CLI、Amazon SDK 和 REST API 为账户中的所有存储桶配置屏蔽公共访问权限设置。有关更多信息,请参阅以下部分。

要为存储桶配置屏蔽公共访问权限设置,请参阅 为 S3 存储桶配置屏蔽公共访问权限设置。有关接入点的信息,请参阅 在接入点上执行屏蔽公共访问权限操作

Amazon S3 屏蔽公共访问权限将阻止所有在设置中允许对 S3 存储桶中的数据进行公有访问的应用程序。本部分介绍如何为 Amazon Web Services 账户 中的所有 S3 存储桶编辑屏蔽公共访问权限设置。有关屏蔽公共访问权限的更多信息,请参阅阻止对您的 Amazon S3 存储的公有访问

为 Amazon Web Services 账户 中的所有 S3 存储桶编辑屏蔽公共访问权限设置
  1. 登录到Amazon Web Services Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 请选择 Block Public Access settings for this account (阻止此账户的公有访问设置)

  3. 请选择 Edit(编辑)以便为 Amazon Web Services 账户 中的所有存储桶更改屏蔽公共访问权限设置。

  4. 请选择要更改的设置,然后选择 Save changes (保存更改)

  5. 当系统要求确认时,请输入 confirm。然后选择 Confirm (确认) 以保存更改。

您可以通过 Amazon CLI 使用 Amazon S3 屏蔽公共访问权限。有关设置和使用 Amazon CLI 的更多信息,请参阅什么是 Amazon Command Line Interface?

账户

  • 为了对账户执行屏蔽公共访问权限操作,请使用 Amazon CLI 服务 s3control。使用此服务的账户级别的操作如下所示:

    • PUT PublicAccessBlock(用于账户)

    • GET PublicAccessBlock(用于账户)

    • DELETE PublicAccessBlock(用于账户)

有关其他信息和示例,请参阅 Amazon CLI 参考中的 put-public-access-block

Java

以下示例展示了如何将 Amazon S3 屏蔽公共访问权限与 Amazon SDK for Java 结合使用,以在 Amazon S3 账户中放置公有访问阻止配置。有关如何创建和测试有效示例的说明,请参阅 使用 Amazon SDK for Java

AWSS3ControlClientBuilder controlClientBuilder = AWSS3ControlClientBuilder.standard(); controlClientBuilder.setRegion(<region>); controlClientBuilder.setCredentials(<credentials>); AWSS3Control client = controlClientBuilder.build(); client.putPublicAccessBlock(new PutPublicAccessBlockRequest() .withAccountId(<account-id>) .withPublicAccessBlockConfiguration(new PublicAccessBlockConfiguration() .withIgnorePublicAcls(<value>) .withBlockPublicAcls(<value>) .withBlockPublicPolicy(<value>) .withRestrictPublicBuckets(<value>)));
重要

此示例仅适用于使用 AWSS3Control 客户端类的账户级别操作。对于存储桶级别的操作,请参阅前面的示例。

Other SDKs

有关使用其他 Amazon SDK 的信息,请参阅 使用 Amazon 开发工具包和浏览器进行 Amazon S3 开发

有关通过 REST API 使用 Amazon S3 屏蔽公共访问权限的信息,请参阅 Amazon Simple Storage Service API 参考中的以下主题。