为您的 S3 存储桶接入点使用存储桶式别名 - Amazon Simple Storage Service

为您的 S3 存储桶接入点使用存储桶式别名

当您创建接入点时,Amazon S3 会自动生成一个别名。您可以使用该别名来替代 Amazon S3 存储桶名称以进行数据访问。对于接入点数据面板操作,您可以使用此接入点别名,而不是 Amazon 资源名称(ARN)。有关这些操作的列表,请参阅接入点与AWS服务的兼容性

下面显示了名为 my-access-point 的接入点的示例 ARN 和接入点别名。

  • ARNarn:aws:s3:region:account-id:accesspoint/my-access-point

  • 接入点别名my-access-point-hrzrlukc5m36ft7okagglf3gmwluquse1b-s3alias

有关 ARN 的更多信息,请参阅《AWS 一般参考》中的 Amazon 资源名称(ARN)

接入点别名

接入点别名是在与 Amazon S3 存储桶相同的命名空间中创建的。此别名自动生成,无法更改。接入点别名符合有效 Amazon S3 存储桶名称的所有要求,包括以下部分:

access point prefix-metadata-s3alias

注意

-s3alias 后缀是为接入点别名预留的,不能用于存储桶或接入点名称。有关 Amazon S3 存储桶命名规则的更多信息,请参阅存储桶命名规则

接入点别名使用案例和限制条件

采用接入点时,您可以使用接入点别名,而无需对代码进行大量更改。

当您创建接入点时,Amazon S3 会自动生成一个接入点别名,如下例所示。要运行此命令,请将 user input placeholders 替换为您自己的信息。

aws s3control create-access-point --bucket amzn-s3-demo-bucket1 --name my-access-point --account-id 111122223333 { "AccessPointArn": "arn:aws:s3:region:111122223333:accesspoint/my-access-point", "Alias": "my-access-point-aqfqprnstn7aefdfbarligizwgyfouse1a-s3alias" }

在任何数据层面操作中,您都可以使用此接入点别名而不是 Amazon S3 存储桶名称。有关这些操作的列表,请参阅接入点与AWS服务的兼容性

以下有关 get-object 命令的 AWS CLI 示例使用存储桶的接入点别名来返回有关指定对象的信息。要运行此命令,请将 user input placeholders 替换为您自己的信息。

aws s3api get-object --bucket my-access-point-aqfqprnstn7aefdfbarligizwgyfouse1a-s3alias --key dir/my_data.rtf my_data.rtf { "AcceptRanges": "bytes", "LastModified": "2020-01-08T22:16:28+00:00", "ContentLength": 910, "ETag": "\"00751974dc146b76404bb7290f8f51bb\"", "VersionId": "null", "ContentType": "text/rtf", "Metadata": {} }

限制

  • 客户无法配置别名。

  • 无法在接入点上删除、修改或禁用别名。

  • 在某些数据面板操作中,您可以使用此接入点别名,而不是 Amazon S3 存储桶名称。有关这些操作的列表,请参阅接入点与 S3 操作的兼容性

  • 您不能将一个接入点别名用于多个 Amazon S3 控制层面操作。有关 Amazon S3 控制层面操作的列表,请参阅《Amazon Simple Storage Service API 参考》中的 Amazon S3 控制

  • 您不能使用 S3 接入点别名作为 Amazon S3 控制台中移动操作的源或目标。

  • 别名不能用于 AWS Identity and Access Management(IAM)策略中。

  • 别名不能用作 S3 服务器访问日志的日志记录目标。

  • 别名不能用作 AWS CloudTrail 日志的日志记录目标。

  • Amazon SageMaker GroundTruth 不支持接入点别名。