为您的 S3 存储桶接入点使用存储桶式别名
当您创建接入点时,Amazon S3 会自动生成一个别名。您可以使用该别名来替代 Amazon S3 存储桶名称以进行数据访问。对于接入点数据面板操作,您可以使用此接入点别名,而不是 Amazon 资源名称(ARN)。有关这些操作的列表,请参阅接入点与AWS服务的兼容性。
下面显示了名为
的接入点的示例 ARN 和接入点别名。my-access-point
-
ARN –
arn: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
--namemy-access-point
--account-id111122223333
{ "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 --keydir/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 不支持接入点别名。