設定設定中繼資料表的許可 - Amazon Simple Storage Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定設定中繼資料表的許可

若要建立中繼資料表組態,您必須擁有必要的 AWS Identity and Access Management (IAM) 許可,才能建立和管理中繼資料表組態,以及建立和管理中繼資料表和存放中繼資料表的資料表儲存貯體。

若要建立和管理中繼資料表組態,您必須具有下列許可:

  • s3:CreateBucketMetadataTableConfiguration – 此許可允許您為一般用途儲存貯體建立中繼資料表組態。若要建立中繼資料資料表組態,需要其他許可,包括 S3 Tables 許可,如以下各節所述。如需所需許可的摘要,請參閱 儲存貯體操作和許可

  • s3:GetBucketMetadataTableConfiguration – 此許可允許您擷取中繼資料表組態的相關資訊。

  • s3:DeleteBucketMetadataTableConfiguration – 此許可允許您刪除中繼資料表組態。

  • s3:UpdateBucketMetadataJournalTableConfiguration – 此許可可讓您更新日誌資料表組態,使日誌資料表記錄過期。

  • s3:UpdateBucketMetadataInventoryTableConfiguration – 此許可可讓您更新清查資料表組態,以啟用或停用清查資料表。若要更新清查資料表組態,需要其他許可,包括 S3 Tables 許可。如需必要許可的清單,請參閱儲存貯體操作和許可

    注意

    s3:CreateBucketMetadataTableConfigurations3:GetBucketMetadataTableConfigurations3:DeleteBucketMetadataTableConfiguration許可用於 V1 和 V2 S3 中繼資料組態。對於 V2,對應的 API 操作名稱為 CreateBucketMetadataConfigurationGetBucketMetadataConfigurationDeleteBucketMetadataConfiguration

若要建立和使用資料表和資料表儲存貯體,您必須具有特定 s3tables 許可。若要建立中繼資料表組態,您至少必須具有下列 s3tables 許可:

  • s3tables:CreateTableBucket – 此許可可讓您建立受管資料表儲存 AWS 貯體。您帳戶和相同區域中的所有中繼資料表組態都會存放在名為 的單一 AWS 受管資料表儲存貯體中aws-s3。如需詳細資訊,請參閱中繼資料表的運作方式使用 AWS 受管資料表儲存貯體。

  • s3tables:CreateNamespace – 此許可允許您在資料表儲存貯體中建立命名空間。中繼資料表通常會使用 b_general_purpose_bucket_name 命名空間。如需中繼資料資料表命名空間的詳細資訊,請參閱 中繼資料表的運作方式

  • s3tables:CreateTable – 此許可可讓您建立中繼資料表。

  • s3tables:GetTable – 此許可可讓您擷取中繼資料表的相關資訊。

  • s3tables:PutTablePolicy – 此許可可讓您新增或更新中繼資料表政策。

  • s3tables:PutTableEncryption – 此許可可讓您設定中繼資料資料表的伺服器端加密。如果您想要使用伺服器端加密搭配 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 來加密中繼資料表,則需要其他許可。如需詳細資訊,請參閱 SSE-KMS 的許可

  • kms:DescribeKey – 此許可可讓您擷取 KMS 金鑰的相關資訊。

如需所有資料表和資料表儲存貯體許可的詳細資訊,請參閱 S3 Tables 的存取管理

重要

如果您也想要整合資料表儲存貯體與 AWS 分析服務,以便查詢中繼資料資料表,則需要額外的許可。如需詳細資訊,請參閱將 Amazon S3 Tables 與 AWS 分析服務整合

SSE-KMS 的許可

若要使用 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 使用伺服器端加密來加密中繼資料表,您必須擁有其他許可。

  1. 使用者或 AWS Identity and Access Management (IAM) 角色需要下列許可。您可以使用 IAM 主控台授予這些許可:https://https://console.aws.amazon.com/iam/

    1. s3tables:PutTableEncryption 設定資料表加密

    2. kms:DescribeKey 在所使用的 AWS KMS 金鑰上

  2. 在 KMS 金鑰的資源政策上,您需要下列許可。您可以使用 AWS KMS 主控台授予這些許可:https://https://console.aws.amazon.com/kms

    1. kms:GenerateDataKey許可授予 metadata.s3.amazonaws.commaintenance.s3tables.amazonaws.com

    2. kms:Decrypt許可授予 metadata.s3.amazonaws.commaintenance.s3tables.amazonaws.com

    3. 授予叫用 AWS 委託人的kms:DescribeKey許可。

除了這些許可之外,請確定用於加密資料表的客戶受管 KMS 金鑰仍然存在、處於作用中狀態、與您的一般用途儲存貯體位於相同的區域。

範例 政策

若要建立和使用中繼資料表和資料表儲存貯體,您可以使用下列範例政策。在此政策中,您要套用中繼資料表組態的一般用途儲存貯體稱為 amzn-s3-demo-bucket。若要使用此政策,請以您自己的資訊取代 user input placeholders

當您建立中繼資料表組態時,中繼資料表會存放在 受管資料表儲存 AWS 貯體中。您帳戶和相同區域中的所有中繼資料資料表組態都會存放在名為 的單一 AWS 受管資料表儲存貯體中aws-s3

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermissionsToWorkWithMetadataTables", "Effect": "Allow", "Action": [ "s3:CreateBucketMetadataTableConfiguration", "s3:GetBucketMetadataTableConfiguration", "s3:DeleteBucketMetadataTableConfiguration", "s3:UpdateBucketMetadataJournalTableConfiguration", "s3:UpdateBucketMetadataInventoryTableConfiguration", "s3tables:*", "kms:DescribeKey" ], "Resource": [ "arn:aws:s3:::bucket/amzn-s3-demo-bucket", "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3", "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3/table/*" ] } ] }

若要查詢中繼資料表,您可以使用下列範例政策。如果您的中繼資料表已使用 SSE-KMS 加密,您將需要 kms:Decrypt許可,如下所示。若要使用此政策,請以您自己的資訊取代 user input placeholders

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermissionsToQueryMetadataTables", "Effect": "Allow", "Action": [ "s3tables:GetTable", "s3tables:GetTableData", "s3tables:GetTableMetadataLocation", "kms:Decrypt" ], "Resource": [ "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3", "arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3/table/*" ] } ] }