Amazon PrivateLink:表示 Amazon S3 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon PrivateLink:表示 Amazon S3

借助适用于 Amazon S3 的 Amazon PrivateLink,您可以在 Virtual Private Cloud (VPC) 中预置接口 VPC 端点(接口端点)。这些端点可从本地(通过 VPN 及 Amazon Direct Connect)或其他 Amazon Web Services 区域(通过 VPC 对等连接)中的应用程序直接访问。

接口端点由一个或多个弹性网络接口 (ENI) 代表,这些接口是从 VPC 中的子网分配的私有 IP 地址。通过接口端点向 Amazon S3 发出的请求仍留在 Amazon 网络上。您还可以通过 Amazon Direct Connect 或 Amazon Virtual Private Network (Amazon VPN) 从本地部署应用程序访问 VPC 中的接口端点。有关如何将 VPC 与本地网络连接的更多信息,请参阅 Amazon Direct Connect 用户指南Amazon Site-to-Site VPN 用户指南

有关接口端点的一般信息,请参阅 Amazon PrivateLink 指南中的接口 VPC 端点 (Amazon PrivateLink)

适用于 Amazon S3 的 VPC 端点类型

您可以使用两种类型的 VPC 端点访问 Amazon S3:网关端点接口端点(使用 Amazon PrivateLink)。网关端点是您在路由表中指定的网关,用于通过 Amazon 网络从 VPC 访问 Amazon S3。接口端点通过私有 IP 地址将请求从您的 VPC 内部、本地或其他 Amazon Web Services 区域中的 VPC 使用 VPC 对等连接或 Amazon Transit Gateway 路由到 Amazon S3,从而扩展网关端点的功能。有关更多信息,请参阅什么是 VPC 对等连接?Transit Gateway 与 VPC 对等连接

接口端点与网关端点兼容。如果您在 VPC 中有现有网关端点,则可以在同一 VPC 中使用这两种类型的端点。

适用于 Amazon S3 的网关端点

适用于 Amazon S3 的接口端点

在这两种情况下,您的网络流量仍保留在 Amazon 网络中。

使用 Amazon S3 公有 IP 地址

使用 VPC 中的私有 IP 地址访问 Amazon S3

使用相同的 Simple Storage Service (Amazon S3) DNS 名称

需要特定于端点的 Simple Storage Service (Amazon S3) DNS 名称

不允许从本地访问

允许从本地访问

不允许从其他 Amazon Web Services 区域访问

允许从另一个 Amazon Web Services 区域使用 VPC 对等连接或 Amazon Transit Gateway 进行访问

不计费

已计费

有关网关端点的更多信息,请参阅 Amazon PrivateLink 指南中的网关 VPC 端点

VPC 限制应用于适用于 Amazon S3 的 Amazon PrivateLink。有关更多信息,请参阅《Amazon PrivateLink 指南》中的接口端点注意事项Amazon PrivateLink 限额。此外,以下限制将适用:

适用于 Amazon S3 的 Amazon PrivateLink 不支持以下各项:

创建 VPC 端点

要创建 VPC 接口端点,请参阅《Amazon PrivateLink 指南》中的创建 VPC 端点

访问 Amazon S3 接口端点

创建接口端点时,Amazon S3 会生成两种特定于端点的 S3 DNS 名称:区域地区

  • 区域 DNS 名称包括唯一的 VPC 端点 ID、服务标识符、Amazon Web Services 区域和以其命名的 vpce.amazonaws.com。例如,对于 VPC 端点 ID vpce-1a2b3c4d,生成的 DNS 名称可能类似于 vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com

  • 区域 DNS 名称包括可用区 – 例如 vpce-1a2b3c4d-5e6f-us-east-1a.s3.us-east-1.vpce.amazonaws.com。如果您的架构隔离了可用区,则可以使用此选项。例如,您可以将其用于故障控制或降低区域数据传输成本。

可以从 S3 公有 DNS 域解析特定于端点的 S3 DNS 名称。

私有 DNS

VPC 接口端点的私有 DNS 选项简化了通过 VPC 端点路由 S3 流量的过程,并帮助您充分利用应用程序可用的最低成本网络路径。您可以使用私有 DNS 选项来路由区域 S3 流量,而无需更新 S3 客户端以使用接口端点的端点特定 DNS 名称,也无需管理 DNS 基础设施。启用私有 DNS 名称后,对于以下端点,区域 S3 DNS 查询将解析为 Amazon PrivateLink 的私有 IP 地址:

  • 区域存储桶端点(例如 s3.us-east-1.amazonaws.com

  • 控制端点(例如 s3-control.us-east-1.amazonaws.com

  • 接入点端点(例如 s3-accesspoint.us-east-1.amazonaws.com

适用于 Amazon S3 的 Amazon PrivateLink 不支持 Using Amazon S3 dual-stack endpoints。如果您使用 S3 双堆栈 DNS 名称作为私有 DNS 名称,则 IPv6 流量将被丢弃,或者,如果虚拟私有云(VPC)有互联网网关,则 IPv6 流量将通过 VPC 中的互联网网关路由。

如果您的 VPC 中有网关端点,则可以通过现有 S3 网关端点自动路由 VPC 内请求,并通过接口端点自动路由本地请求。此方法允许您使用 VPC 内流量不计费的网关端点来优化网络成本。您的本地应用程序可以在入站解析器端点的帮助下使用 Amazon PrivateLink。Amazon 为您的 VPC 提供 DNS 服务器,称为 Route 53 Resolver。入站解析器端点将来自本地网络的 DNS 查询转发到 Route 53 Resolver。

重要

要在使用仅对入站端点启用私有 DNS 时充分利用成本最低的网络路径,您的 VPC 中必须存在网关端点。当选择仅对入站端点启用私有 DNS 选项时,网关端点的存在有助于确保 VPC 内流量始终通过 Amazon 私有网络路由。当选择仅对入站端点启用私有 DNS 选项时,必须维护此网关端点。如果要删除网关端点,则必须先清除仅对入站端点启用私有 DNS

如果您想要将现有接口端点更新为仅对入站端点启用私有 DNS,请先确认您的 VPC 具有 S3 网关端点。有关网关端点和管理私有 DNS 名称的更多信息,请分别参阅《Amazon PrivateLink 指南》中的网关 VPC 端点管理 DNS 名称

仅对入站端点启用私有 DNS 选项仅适用于支持网关端点的服务。

有关创建使用仅对入站端点启用私有 DNS 的 VPC 端点的更多信息,请参阅《Amazon PrivateLink 指南》中的创建接口端点

使用 VPC 控制台

在控制台中,您有两个选项:启用 DNS 名称仅对入站端点启用私有 DNS启用 DNS 名称是 Amazon PrivateLink 支持的选项。通过使用启用 DNS 名称选项,您可以使用 Amazon 的与 Amazon S3 的私有连接,同时向默认公有端点 DNS 名称发出请求。启用此选项后,客户可以利用其应用程序可用的成本最低的网络路径。

当您在 Amazon S3 的现有或新的 VPC 接口端点上启用私有 DNS 名称时,默认情况下会选择仅对入站端点启用私有 DNS 选项。如果选择此选项,则您的应用程序仅对本地流量使用接口端点。这种 VPC 内流量会自动使用成本较低的网关端点。或者,您可以清除仅对入站端点启用私有 DNS,以通过您的接口端点路由所有 S3 请求。

使用 Amazon CLI

如果不指定 PrivateDnsOnlyForInboundResolverEndpoint 的值,则它默认为 true。但是,在您的 VPC 应用设置之前,它会进行检查以确保 VPC 中存在网关端点。如果 VPC 中存在网关端点,则调用成功。否则,您将看到以下错误消息:

要将 PrivateDnsOnlyForInboundResolverEndpoint 设置为 true,VPC vpce_id 必须具有该服务的网关端点。

对于新的接口 VPC 端点

使用 private-dns-enableddns-options 属性通过命令行启用私有 DNS。dns-options 属性中的 PrivateDnsOnlyForInboundResolverEndpoint 选项必须设置为 true。将 user input placeholders 替换为您自己的信息。

aws ec2 create-vpc-endpoint \ --region us-east-1 \ --service-name s3-service-name \ --vpc-id client-vpc-id \ --subnet-ids client-subnet-id \ --vpc-endpoint-type Interface \ --private-dns-enabled \ --ip-address-type ip-address-type \ --dns-options PrivateDnsOnlyForInboundResolverEndpoint=true \ --security-group-ids client-sg-id

对于现有 VPC 端点

如果您想对现有 VPC 端点使用私有 DNS,请使用以下示例命令并将 user input placeholders 替换为您自己的信息。

aws ec2 modify-vpc-endpoint \ --region us-east-1 \ --vpc-endpoint-id client-vpc-id \ --private-dns-enabled \ --dns-options PrivateDnsOnlyForInboundResolverEndpoint=false

如果您想更新现有 VPC 端点以仅对入站解析器启用私有 DNS,请使用以下示例并将示例值替换为您自己的值。

aws ec2 modify-vpc-endpoint \ --region us-east-1 \ --vpc-endpoint-id client-vpc-id \ --private-dns-enabled \ --dns-options PrivateDnsOnlyForInboundResolverEndpoint=true

从 S3 接口端点访问存储桶、接入点和 Amazon S3 控制 API 操作

您可以使用 Amazon CLI 或 Amazon SDK 通过 S3 接口端点访问存储桶、S3 接入点和 Amazon S3 控制 API 操作。

下图显示了 VPC 控制台详细信息选项卡,您可以在其中找到 VPC 端点的 DNS 名称。在此示例中,VPC 端点 ID (vpce-id)vpce-0e25b8cdd720f900eDNS 名称*.vpce-0e25b8cdd720f900e-argc85vg.s3.us-east-1.vpce.amazonaws.com

VPC 控制台中的详细信息选项卡。

使用 DNS 名称访问资源时,将 * 替换为相应的值。用来代替 * 的相应值如下所示:

  • bucket

  • accesspoint

  • control

例如,要访问存储桶,请使用如下所示的 DNS 名称

bucket.vpce-0e25b8cdd720f900e-argc85vg.s3.us-east-1.vpce.amazonaws.com

有关如何使用 DNS 名称访问存储桶、接入点和 Amazon S3 控制 API 操作的示例,请参阅下面的章节:Amazon CLI 示例Amazon SDK 示例

有关如何查看端点特定 DNS 名称的更多信息,请参阅《VPC 用户指南》中的查看端点服务私有 DNS 名称配置

要在 Amazon CLI 命令中通过 S3 接口端点访问 S3 存储桶、S3 接入点或 Amazon S3 控制 API操作,请使用 --region--endpoint-url 参数。

示例:使用端点 URL 列出存储桶中的对象

在以下示例中,将存储桶名称 my-bucket、区域 us-east-1 和 VPC 端点 ID 的 DNS 名称 vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

aws s3 ls s3://my-bucket/ --region us-east-1 --endpoint-url https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com

示例:使用端点 URL 列出接入点中的对象

  • 方法 1 – 将接入点的 Amazon 资源名称(ARN)与接入点端点结合使用

    将 ARN us-east-1:123456789012:accesspoint/accesspointexamplename、区域 us-east-1 和 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

    aws s3api list-objects-v2 --bucket arn:aws:s3:us-east-1:123456789012:accesspoint/accesspointexamplename --region us-east-1 --endpoint-url https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com

    如果您无法成功运行该命令,请将 Amazon CLI 更新为最新版本,然后重试。有关更新说明的更多信息,请参阅《Amazon Command Line Interface 用户指南》中的安装或更新 Amazon CLI 的最新版本

  • 方法 2 – 将接入点的别名与区域存储桶端点结合使用

    在以下示例中,将接入点别名 accesspointexamplename-8tyekmigicmhun8n9kwpfur39dnw4use1a-s3alias、区域 us-east-1 和 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

    aws s3api list-objects-v2 --bucket accesspointexamplename-8tyekmigicmhun8n9kwpfur39dnw4use1a-s3alias --region us-east-1 --endpoint-url https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
  • 方法 3 – 将接入点的别名与接入点端点结合使用

    首先,要构造一个包含存储桶作为主机名一部分的 S3 端点,请将寻址样式设置为 virtual 以供 aws s3api 使用。有关 AWS configure 的更多信息,请参阅《Amazon Command Line Interface 用户指南》中的配置和凭证文件设置

    aws configure set default.s3.addressing_style virtual

    然后,在以下示例中,将接入点别名 accesspointexamplename-8tyekmigicmhun8n9kwpfur39dnw4use1a-s3alias、区域 us-east-1 和 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。有关接入点别名的更多信息,请参阅为您的 S3 存储桶接入点使用存储桶式别名

    aws s3api list-objects-v2 --bucket accesspointexamplename-8tyekmigicmhun8n9kwpfur39dnw4use1a-s3alias --region us-east-1 --endpoint-url https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com
示例:使用端点 URL 通过 S3 控制 API 操作列出任务

在以下示例中,将区域 us-east-1、VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 和账户 ID 12345678 替换为您自己的信息。

aws s3control --region us-east-1 --endpoint-url https://control.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com list-jobs --account-id 12345678

要在使用 Amazon SDK 时通过 S3 接口端点访问 S3 存储桶、S3 接入点、Amazon S3 控制 API 操作,请将 SDK 更新到最新版本。然后,将客户端配置为使用端点 URL 通过 S3 接口端点访问存储桶、接入点或 Amazon S3 控制 API 操作。

SDK for Python (Boto3)
示例:使用端点 URL 访问 S3 存储桶

在以下示例中,将区域 us-east-1 和 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

s3_client = session.client( service_name='s3', region_name='us-east-1', endpoint_url='https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com' )
示例:使用端点 URL 访问 S3 接入点

在以下示例中,将区域 us-east-1 和 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

ap_client = session.client( service_name='s3', region_name='us-east-1', endpoint_url='https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com' )
示例:使用端点 URL 访问 Amazon S3 控制 API

在以下示例中,将区域 us-east-1 和 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

control_client = session.client( service_name='s3control', region_name='us-east-1', endpoint_url='https://control.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com' )
SDK for Java 1.x
示例:使用端点 URL 访问 S3 存储桶

在以下示例中,将 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

// bucket client final AmazonS3 s3 = AmazonS3ClientBuilder.standard().withEndpointConfiguration( new AwsClientBuilder.EndpointConfiguration( "https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com", Regions.DEFAULT_REGION.getName() ) ).build(); List<Bucket> buckets = s3.listBuckets();
示例:使用端点 URL 访问 S3 接入点

在以下示例中,将 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 和 ARN us-east-1:123456789012:accesspoint/prod 替换为您自己的信息。

// accesspoint client final AmazonS3 s3accesspoint = AmazonS3ClientBuilder.standard().withEndpointConfiguration( new AwsClientBuilder.EndpointConfiguration( "https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com", Regions.DEFAULT_REGION.getName() ) ).build(); ObjectListing objects = s3accesspoint.listObjects("arn:aws:s3:us-east-1:123456789012:accesspoint/prod");
示例:使用端点 URL 访问 Amazon S3 控制 API 操作

在以下示例中,将 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 替换为您自己的信息。

// control client final AWSS3Control s3control = AWSS3ControlClient.builder().withEndpointConfiguration( new AwsClientBuilder.EndpointConfiguration( "https://control.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com", Regions.DEFAULT_REGION.getName() ) ).build(); final ListJobsResult jobs = s3control.listJobs(new ListJobsRequest());
SDK for Java 2.x
示例:使用端点 URL 访问 S3 存储桶

在以下示例中,将 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 和区域 Region.US_EAST_1 替换为您自己的信息。

// bucket client Region region = Region.US_EAST_1; s3Client = S3Client.builder().region(region) .endpointOverride(URI.create("https://bucket.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com")) .build()
示例:使用端点 URL 访问 S3 接入点

在以下示例中,将 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 和区域 Region.US_EAST_1 替换为您自己的信息。

// accesspoint client Region region = Region.US_EAST_1; s3Client = S3Client.builder().region(region) .endpointOverride(URI.create("https://accesspoint.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com")) .build()
示例:使用端点 URL 访问 Amazon S3 控制 API

在以下示例中,将 VPC 端点 ID vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com 和区域 Region.US_EAST_1 替换为您自己的信息。

// control client Region region = Region.US_EAST_1; s3ControlClient = S3ControlClient.builder().region(region) .endpointOverride(URI.create("https://control.vpce-1a2b3c4d-5e6f.s3.us-east-1.vpce.amazonaws.com")) .build()

更新本地 DNS 配置

使用特定于端点的 DNS 名称访问适用于 Amazon S3 的接口端点时,您无需更新本地 DNS 解析程序。您可以使用来自公有 Amazon S3 DNS 域的接口端点的私有 IP 地址解析特定于端点的 DNS 名称。

使用接口端点访问 Amazon S3,无需 VPC 中的网关端点和互联网网关

VPC 中的接口端点可以通过 Amazon 网络将 VPC 内的应用程序和本地应用程序路由到 Amazon S3,如下图所示。

数据流程图,显示了使用接口端点和 Amazon PrivateLink 访问 Amazon S3。

该图阐释了以下内容:

  • 您的本地部署网络使用 Amazon Direct Connect 或者 Amazon VPN 连接到 VPC A。

  • 本地和 VPC A 中的应用程序使用特定于端点的 DNS 名称通过 S3 接口端点访问 Amazon S3。

  • 本地部署应用程序通过 Amazon Direct Connect(或 Amazon VPN)将数据发送到 VPC 中的接口端点。Amazon PrivateLink 通过 Amazon 网络将数据从接口端点移动到 Amazon S3。

  • VPC 中的应用程序还向接口端点发送通信。Amazon PrivateLink 通过 Amazon 网络将数据从接口端点移动到 Amazon S3。

在同一 VPC 中同时使用网关端点和接口端点来访问 Amazon S3

您可以创建接口端点并将现有网关端点保留在同一 VPC 中,如下图所示。通过这种方法,您可以允许 VPC 内应用程序继续通过网关端点访问 Amazon S3,而无需付费。然后,只有您的本地应用程序才会使用接口端点访问 Amazon S3。要通过这种方式访问 Amazon S3,您必须更新本地应用程序,以使用适用于 Amazon S3 的特定于端点的 DNS 名称。

数据流程图,显示了使用网关端点和接口端点访问 Amazon S3。

该图阐释了以下内容:

  • 本地部署应用程序使用特定于端点的 DNS 名称通过 Amazon Direct Connect(或 Amazon VPN)将数据发送到 VPC 中的接口端点。Amazon PrivateLink 通过 Amazon 网络将数据从接口端点移动到 Amazon S3。

  • 使用默认的区域 Amazon S3 名称,VPC 内应用程序会将数据发送到通过 Amazon 网络连接到 Amazon S3 的网关端点。

有关网关端点的更多信息,请参阅 VPC 用户指南中的网关 VPC 端点

为 Amazon S3 创建 VPC 端点策略

您可以为 VPC 端点附加控制对 Amazon S3 的访问的端点策略。该策略指定以下信息:

  • 可执行操作的 Amazon Identity and Access Management (IAM) 主体

  • 可执行的操作

  • 可对其执行操作的资源

您还可以使用 Amazon S3 存储桶策略,通过使用存储桶策略中的 aws:sourceVpce 条件限制从特定 VPC 端点访问特定存储桶。以下示例显示了限制对存储桶或端点的访问的策略。

您可以创建一个端点策略来仅允许访问特定的 Amazon S3 存储桶。如果您的 VPC 中有使用存储桶的其他 Amazon Web Services 服务,这种策略会非常有用。以下存储桶策略限制为仅可访问 amzn-s3-demo-bucket1。要使用此端点策略,请将 amzn-s3-demo-bucket1 替换为您的存储桶名称。

{ "Version": "2012-10-17", "Id": "Policy1415115909151", "Statement": [ { "Sid": "Access-to-specific-bucket-only", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket1", "arn:aws:s3:::amzn-s3-demo-bucket1/*"] } ] }

您可以创建一个端点策略,以限制仅访问特定 Amazon Web Services 账户中的 S3 存储桶。要防止 VPC 内的客户端访问并非您拥有的存储桶,请在端点策略中使用以下语句。以下示例语句创建了一个策略,此策略将访问限制为由单个 Amazon Web Services 账户 ID 111122223333 拥有的资源。

{ "Statement": [ { "Sid": "Access-to-bucket-in-specific-account-only", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Deny", "Resource": "arn:aws:s3:::*", "Condition": { "StringNotEquals": { "aws:ResourceAccount": "111122223333" } } } ] }
注意

要指定要访问的资源的 Amazon Web Services 账户 ID,可以在 IAM 策略中使用 aws:ResourceAccounts3:ResourceAccount 键。但请注意,有些 Amazon Web Services 服务依赖于访问 Amazon 托管式存储桶。因此,在 IAM 策略中使用 aws:ResourceAccounts3:ResourceAccount 键也可能会影响对这些资源的访问。

示例:限制对 S3 存储桶策略中特定 VPC 端点的访问

以下 Amazon S3 存储桶策略仅允许从 VPC 端点 vpce-1a2b3c4d 访问特定的存储桶 amzn-s3-demo-bucket2。如果未使用指定的端点,则该策略拒绝对存储桶的所有访问。aws:sourceVpce 条件指定端点,而不需要 VPC 端点资源的 Amazon 资源名称(ARN),只需要端点 ID。要使用此存储桶策略,请将 amzn-s3-demo-bucket2vpce-1a2b3c4d 替换为您的存储桶名称和端点。

重要
{ "Version": "2012-10-17", "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": "s3:*", "Effect": "Deny", "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket2", "arn:aws:s3:::amzn-s3-demo-bucket2/*"], "Condition": {"StringNotEquals": {"aws:sourceVpce": "vpce-1a2b3c4d"}} } ] }

有关更多策略示例,请参阅 VPC 用户指南中的 Amazon S3 端点

有关 VPC 连接的更多信息,请参阅 Amazon 白皮书 Amazon Virtual Private Cloud 连接性选项中的 Network-to-VPC connectivity options(从网络到 VPC 的连接性选项)。