管理目录存储桶的接入点的范围
本节介绍如何使用 Amazon Command Line Interface、REST API 或 Amazon SDK 来查看和修改目录存储桶的接入点的范围。可以使用接入点范围来限制对特定前缀或 API 操作的访问。
查看目录存储桶的接入点的范围
您可以使用 Amazon Command Line Interface、REST API 或 Amazon SDK 来查看目录存储桶的接入点的范围。
以下 get-access-point-scope
示例命令显示了如何使用 Amazon CLI 来查看接入点的范围。
以下命令显示了 Amazon Web Services 账户 111122223333
的接入点
--my-access-point
zoneID
--xa-s3 的范围。
aws s3control get-access-point-scope --name
--
my-access-point
zoneID
--xa-s3 --account-id111122223333
有关更多信息和示例,请参阅《Amazon CLI Command Reference》中的 get-access-point-scope
例 :get-access-point-scope
的结果
{ "Scope": { "Permissions": [ "ListBucket", "PutObject" ] "Prefixes": [ "Prefix": "MyPrefix1*", "Prefix": "MyObjectName.csv" ] } }
以下 GetAccessPointScope
示例请求显示了如何使用 REST API 来查看接入点的范围。
以下请求显示了 Amazon Web Services 账户 111122223333
的接入点
--my-access-point
region
-zoneID
--xa-s3 的范围。
GET /v20180820/accesspoint/
--
my-access-point
zoneID
--xa-s3/scope HTTP/1.1 Host: s3express-control.region
.amazonaws.com x-amz-account-id:111122223333
例 :GetAccessPointScope
的结果
HTTP/1.1 200 <?xml version="1.0" encoding="UTF-8"?> <GetAccessPointScopeResult> <Scope> <Prefixes> <Prefix>MyPrefix1*</Prefix> <Prefix>MyObjectName.csv</Prefix> </Prefixes> <Permissions> <Permission>ListBucket</Permission> <Permission>PutObject</Permission> </Permissions> <Scope> </GetAccessPointScopeResult>
可以使用 Amazon SDK 来查看接入点的范围。有关更多信息,请参阅《Amazon Simple Storage Service API Reference》中的 list of supported SDKs。
修改目录存储桶的接入点的范围
可以使用 Amazon Command Line Interface、REST API 或 Amazon SDK 来修改目录存储桶的接入点的范围。接入点范围用于限制对特定前缀、API 操作或两者组合的访问。
您可以包含以下一个或多个 API 操作作为权限:
PutObject
GetObject
DeleteObject
ListBucket
(对于ListObjectsV2
是必需的)GetObjectAttributes
AbortMultipartUploads
ListBucketMultipartUploads
ListMultipartUploadParts
注意
您可以指定任意数量的前缀,但所有前缀的字符总长度的大小必须小于 256 字节。
修改接入点的范围时,将替换现有范围。
以下 put-access-point-scope
示例命令显示了如何使用 Amazon CLI 来修改接入点的范围。
以下命令修改 Amazon Web Services 账户 111122223333
的
--my-access-point
zoneID
--xa-s3 的接入点范围。
注意
您可以使用星号(*)字符在前缀中使用通配符。如果要将星号字符用作文字,请在它之前添加一个反斜杠字符(\)以对它进行转义。
此外,所有前缀都有一个隐含的“*”结尾,这意味着所有带有该前缀的路径都将被包括在内。
aws s3control put-access-point-scope --name
--
my-access-point
zoneID
--xa-s3 --account-id111122223333
--scope Prefixes=string
,Permissions=string
有关更多信息和示例,请参阅《Amazon CLI Command Reference》中的 put-access-point-scope
以下 PutAccessPointScope
示例请求显示了如何使用 REST API 来修改接入点的范围。
以下请求修改 Amazon Web Services 账户 111122223333
的
--my-access-point
zoneID
--xa-s3 的接入点范围。
注意
您可以使用星号(*)字符在前缀中使用通配符。如果要将星号字符用作文字,请在它之前添加一个反斜杠字符(\)以对它进行转义。
此外,所有前缀都有一个隐含的“*”结尾,这意味着所有带有该前缀的路径都将被包括在内。
PUT /v20180820/accesspoint/
--
my-access-point
zoneID
--xa-s3/scope HTTP/1.1 Host: s3express-control.region
.amazonaws.com x-amz-account-id:111122223333
<?xml version="1.0" encoding="UTF-8"?> <PutAccessPointScopeRequest> <Scope> <Prefixes> <Prefix>Jane/*</Prefix> </Prefixes> <Permissions> <Permission>PutObject</Permission> <Permission>GetObject</Permission> </Permissions> <Scope> </PutAccessPointScopeRequest>
可以使用 Amazon CLI、Amazon SDK 或 REST API 来修改接入点的范围。有关更多信息,请参阅《Amazon Simple Storage Service API Reference》中的 list of supported SDKs。
删除目录存储桶的接入点的范围
可以使用 Amazon Command Line Interface、REST API 或 Amazon SDK 来删除目录存储桶的接入点的范围。
注意
删除接入点的范围时,将删除所有前缀和权限。
以下 delete-access-point-scope
示例命令显示了如何使用 Amazon CLI 来删除接入点的范围。
以下命令删除 Amazon Web Services 账户 111122223333
的接入点
--my-access-point
zoneID
--xa-s3 的范围。
aws s3control delete-access-point-scope --name
--
my-access-point
region
-zoneID
--xa-s3 --account-id111122223333
有关更多信息和示例,请参阅《Amazon CLI Command Reference》中的 delete-access-point-scope
以下请求删除 Amazon Web Services 账户 111122223333
的接入点
--my-access-point
zoneID
--xa-s3 的范围。
DELETE /v20180820/accesspoint/
--
my-access-point
zoneID
--xa-s3/scope HTTP/1.1 Host: s3express-control.region
.amazonaws.com x-amz-account-id:111122223333
可以使用 Amazon SDK 来删除接入点的范围。有关更多信息,请参阅《Amazon Simple Storage Service API Reference》中的 list of supported SDKs。