メタデータテーブルを設定するためのアクセス許可の設定
メタデータテーブル設定を作成するには、メタデータテーブル設定の作成と管理、およびメタデータテーブルとメタデータテーブルが保存されているテーブルバケットの作成と管理の両方に必要な AWS Identity and Access Management (IAM) アクセス許可を持っている必要があります。
メタデータテーブル設定を作成および管理するには、次のアクセス許可が必要です。
-
s3:CreateBucketMetadataTableConfiguration
– このアクセス許可により、汎用バケットのメタデータテーブル設定を作成できます。メタデータテーブル設定を作成するには、次のセクションで説明するように、S3 Tables のアクセス許可を含む追加のアクセス許可が必要です。必要なアクセス許可のリストについては、「バケットオペレーションとアクセス許可」を参照してください。 -
s3:GetBucketMetadataTableConfiguration
– このアクセス許可により、メタデータテーブル設定に関する情報を取得できます。 -
s3:DeleteBucketMetadataTableConfiguration
– このアクセス許可により、メタデータテーブル設定を削除できます。 -
s3:UpdateBucketMetadataJournalTableConfiguration
– このアクセス許可により、ジャーナルテーブル設定を更新してジャーナルテーブルレコードを期限切れにすることができます。 -
s3:UpdateBucketMetadataInventoryTableConfiguration
– このアクセス許可により、インベントリテーブルの設定を更新して、インベントリテーブルを有効または無効にできます。インベントリテーブル設定を更新するには、S3 Tables のアクセス許可を含む追加のアクセス許可が必要です。必要なアクセス権限のリストについては、「バケットオペレーションとアクセス許可」を参照してください。注記
s3:CreateBucketMetadataTableConfiguration
、s3:GetBucketMetadataTableConfiguration
、およびs3:DeleteBucketMetadataTableConfiguration
アクセス許可は、V1 と V2 両方の S3 Metadata 設定に使用されます。V2 の場合、対応する API オペレーションの名前はCreateBucketMetadataConfiguration
、GetBucketMetadataConfiguration
、およびDeleteBucketMetadataConfiguration
です。
テーブルとテーブルバケットを作成して操作するには、特定の s3tables
アクセス許可が必要です。メタデータテーブル設定を作成するには、少なくとも次の s3tables
アクセス許可が必要です。
-
s3tables:CreateTableBucket
– このアクセス許可により、AWS マネージドテーブルバケットを作成できます。アカウントと同じリージョンのすべてのメタデータテーブル設定は、aws-s3
という名前の単一の AWS マネージドテーブルバケットに保存されます。詳細については、「メタデータテーブルの仕組み」および「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 キーに関する情報を取得できます。
すべてのテーブルとテーブルバケットのアクセス許可の詳細については、「Access management for S3 Tables」を参照してください。
重要
メタデータテーブルをクエリできるようにテーブルバケットを AWS 分析サービスと統合する場合は、追加のアクセス許可が必要です。詳細については、「Integrating Amazon S3 Tables with AWS analytics services」を参照してください。
SSE-KMS のアクセス許可
AWS Key Management Service (AWS KMS) キーによるサーバー側の暗号化 (SSE-KMS) を使用してメタデータテーブルを暗号化するには、追加のアクセス許可が必要です。
-
ユーザーまたは AWS Identity and Access Management IAM ロールには以下のアクセス許可が必要です。IAM コンソール (https://console.aws.amazon.com/iam/
) を使用してこれらのアクセス許可を付与できます。 -
テーブル暗号化を設定する
s3tables:PutTableEncryption
-
使用する AWS KMS キーの
kms:DescribeKey
-
-
KMS キーのリソースポリシーでは、次のアクセス許可が必要です。AWS KMS コンソール (https://console.aws.amazon.com/kms
) を使用してこれらのアクセス許可を付与できます。 -
metadata.s3.amazonaws.com
およびmaintenance.s3tables.amazonaws.com
にkms:GenerateDataKey
アクセス許可を付与します。 -
metadata.s3.amazonaws.com
およびmaintenance.s3tables.amazonaws.com
にkms:Decrypt
アクセス許可を付与します。 -
呼び出し AWS プリンシパルへの
kms:DescribeKey
アクセス許可を付与します。
-
これらのアクセス許可に加えて、テーブルの暗号化に使用されるカスタマーマネージド KMS キーがまだ存在し、アクティブであり、汎用バケットと同じリージョンにあることを確認します。
ポリシーの例
メタデータテーブルとテーブルバケットを作成して操作するには、次のポリシー例を使用できます。このポリシーでは、メタデータテーブル設定を適用する汎用バケットを
と呼びます。このポリシーを使用するには、amzn-s3-demo-bucket
をユーザー自身の情報に置き換えます。user input placeholders
メタデータテーブル設定を作成すると、メタデータテーブルは AWS マネージドテーブルバケットに保存されます。アカウントと同じリージョンのすべてのメタデータテーブル設定は、aws-s3
という名前の単一の AWS マネージドテーブルバケットに保存されます。
メタデータテーブルをクエリするには、次のポリシー例を使用できます。メタデータテーブルが SSE-KMS で暗号化されている場合は、次に示すように kms:Decrypt
アクセス許可が必要です。このポリシーを使用するには、
をユーザー自身の情報に置き換えます。user input placeholders