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

查看授权

您可以使用 Amazon S3 控制台、Amazon Command Line Interface(Amazon CLI)、Amazon S3 REST API 和 Amazon SDK 来查看 Amazon S3 Access Grants 实例中的访问授权的详细信息。

查看访问授权的详细信息
  1. 登录到Amazon Web Services Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 在左侧导航窗格中,选择 Access Grants

  3. S3 Access Grants 页面上,选择包含要使用的 S3 Access Grants 实例的区域。

  4. 对于实例,选择查看详细信息

  5. 在详细信息页面上,选择授权选项卡。

  6. 授权部分中,找到要查看的访问授权。要筛选授权列表,请使用搜索框。

要安装 Amazon CLI,请参阅 Amazon Command Line Interface 用户指南中的安装 Amazon CLI

要使用以下示例命令,请将 user input placeholders 替换为您自己的信息。

例 – 获取访问授权的详细信息
aws s3control get-access-grant \ --account-id 111122223333 \ --access-grant-id a1b2c3d4-5678-90ab-cdef-EXAMPLE22222

响应:

{ "CreatedAt": "2023-05-31T18:41:34.663000+00:00", "AccessGrantId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "AccessGrantArn": "arn:aws:s3:us-east-2:111122223333:access-grants/default/grant-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "Grantee": { "GranteeType": "IAM", "GranteeIdentifier": "arn:aws:iam::111122223333:user/data-consumer-3" }, "Permission": "READ", "AccessGrantsLocationId": "12a6710f-5af8-41f5-b035-0bc795bf1a2b", "AccessGrantsLocationConfiguration": { "S3SubPrefix": "prefixB*" }, "GrantScope": "s3://DOC-EXAMPLE-BUCKET/" }
例 – 列出 S3 Access Grants 实例中的所有访问授权

您可以选择使用以下参数将结果限制为 S3 前缀或 Amazon Identity and Access Management(IAM)身份:

  • 子前缀--grant-scope s3://bucket-name/prefix*

  • IAM 身份--grantee-type IAM--grantee-identifier arn:aws:iam::123456789000:role/accessGrantsConsumerRole

aws s3control list-access-grants \ --account-id 111122223333

响应:

{ "AccessGrantsList": [{"CreatedAt": "2023-06-14T17:54:46.542000+00:00", "AccessGrantId": "dd8dd089-b224-4d82-95f6-975b4185bbaa", "AccessGrantArn": "arn:aws:s3:us-east-2:111122223333:access-grants/default/grant/dd8dd089-b224-4d82-95f6-975b4185bbaa", "Grantee": { "GranteeType": "IAM", "GranteeIdentifier": "arn:aws:iam::111122223333:user/data-consumer-3" }, "Permission": "READ", "AccessGrantsLocationId": "23514a34-ea2e-4ddf-b425-d0d4bfcarda1", "GrantScope": "s3://DOC-EXAMPLE-BUCKET/prefixA*" }, {"CreatedAt": "2023-06-24T17:54:46.542000+00:00", "AccessGrantId": "ee8ee089-b224-4d72-85f6-975b4185a1b2", "AccessGrantArn": "arn:aws:s3:us-east-2:111122223333:access-grants/default/grant/ee8ee089-b224-4d72-85f6-975b4185a1b2", "Grantee": { "GranteeType": "IAM", "GranteeIdentifier": "arn:aws:iam::111122223333:user/data-consumer-9" }, "Permission": "READ", "AccessGrantsLocationId": "12414a34-ea2e-4ddf-b425-d0d4bfcacao0", "GrantScope": "s3://DOC-EXAMPLE-BUCKET/prefixB*" }, ] }

您可以使用 Amazon S3 API 操作来查看访问授权的详细信息,并列出 S3 Access Grants 实例中的所有访问授权。有关用于管理访问授权的 REST API 支持的信息,请参阅《Amazon Simple Storage Service API 参考》中的以下部分:

此部分中的示例说明了如何使用 Amazon SDK 获取访问授权的详细信息。

要使用以下示例,请将 user input placeholders 替换为您自己的信息。

Java

例 – 获取访问授权的详细信息
public void getAccessGrant() { GetAccessGrantRequest getRequest = GetAccessGrantRequest.builder() .accountId("111122223333") .accessGrantId("a1b2c3d4-5678-90ab-cdef-EXAMPLE22222") .build(); GetAccessGrantResponse getResponse = s3Control.getAccessGrant(getRequest); LOGGER.info("GetAccessGrantResponse: " + getResponse); }

响应:

GetAccessGrantResponse( CreatedAt=2023-06-07T05:20:26.330Z, AccessGrantId=a1b2c3d4-5678-90ab-cdef-EXAMPLE22222, AccessGrantArn=arn:aws:s3:us-east-2:111122223333:access-grants/default/grant-fd3a5086-42f7-4b34-9fad-472e2942c70e, Grantee=Grantee( GranteeType=IAM, GranteeIdentifier=arn:aws:iam::111122223333:user/data-consumer-3 ), Permission=READ, AccessGrantsLocationId=12a6710f-5af8-41f5-b035-0bc795bf1a2b, AccessGrantsLocationConfiguration=AccessGrantsLocationConfiguration( S3SubPrefix=prefixB* ), GrantScope=s3://DOC-EXAMPLE-BUCKET/ )
例 – 列出 S3 Access Grants 实例中的所有访问授权

您可以选择使用以下参数将结果限制为 S3 前缀或(IAM)身份:

  • 范围GrantScope=s3://bucket-name/prefix*

  • 被授权者GranteeType=IAMGranteeIdentifier= arn:aws:iam::111122223333:role/accessGrantsConsumerRole

public void listAccessGrants() { ListAccessGrantsRequest listRequest = ListAccessGrantsRequest.builder() .accountId("111122223333") .build(); ListAccessGrantsResponse listResponse = s3Control.listAccessGrants(listRequest); LOGGER.info("ListAccessGrantsResponse: " + listResponse); }

响应:

ListAccessGrantsResponse( AccessGrantsList=[ ListAccessGrantEntry( CreatedAt=2023-06-14T17:54:46.540z, AccessGrantId=dd8dd089-b224-4d82-95f6-975b4185bbaa, AccessGrantArn=arn:aws:s3:us-east-2:111122223333:access-grants/default/grant/dd8dd089-b224-4d82-95f6-975b4185bbaa, Grantee=Grantee( GranteeType=IAM, GranteeIdentifier= arn:aws:iam::111122223333:user/data-consumer-3 ), Permission=READ, AccessGrantsLocationId=23514a34-ea2e-4ddf-b425-d0d4bfcarda1, GrantScope=s3://DOC-EXAMPLE-BUCKET/prefixA ), ListAccessGrantEntry( CreatedAt=2023-06-24T17:54:46.540Z, AccessGrantId=ee8ee089-b224-4d72-85f6-975b4185a1b2, AccessGrantArn=arn:aws:s3:us-east-2:111122223333:access-grants/default/grant/ee8ee089-b224-4d72-85f6-975b4185a1b2, Grantee=Grantee( GranteeType=IAM, GranteeIdentifier= arn:aws:iam::111122223333:user/data-consumer-9 ), Permission=READ, AccessGrantsLocationId=12414a34-ea2e-4ddf-b425-d0d4bfcacao0, GrantScope=s3://DOC-EXAMPLE-BUCKET/prefixB* ) ] )