Amazon S3 Tables のアクション、リソース、条件キー
Amazon S3 Tables (サービスプレフィックス: s3tables) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソース、アクション、および条件コンテキストキーが用意されています。
リファレンス:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
Amazon S3 Tables で定義されるアクション
IAM ポリシーステートメントの Action エレメントでは、以下のアクションを指定できます。ポリシーを使用して、AWS でオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
アクションテーブルの [アクセスレベル] 列では、アクションの指定方法 (リスト、読み取り、アクセス許可管理、タグ付け) について説明します。このように分類することで、ポリシーで使用する際にアクションで付与するアクセスレベルを理解しやすくなります。アクセスレベルの詳細については、「ポリシー概要内のアクセスレベル」を参照してください。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource 要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition 要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
Actions テーブルの [依存アクション] 列には、アクションを正常に呼び出すために必要な追加のアクセス許可が表示されます。これらのアクセス許可は、アクション自体のアクセス許可に加えて必要になる場合があります。アクションが依存アクションを指定すると、それらの依存関係は、テーブルにリストされている最初のリソースだけでなく、そのアクションに定義された追加のリソースに適用される場合があります。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
| アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
|---|---|---|---|---|---|
| CreateNamespace | HTTP 名前空間を作成するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| CreateTable | テーブルを作成する許可を付与。 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| CreateTableBucket | 新しいバケットを作成するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| DeleteNamespace | 名前空間を削除するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| DeleteTable | テーブルを削除する許可を付与。 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| DeleteTableBucket | テーブルバケットを削除するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| DeleteTableBucketEncryption | テーブルバケット上の暗号化設定を削除するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| DeleteTableBucketPolicy | テーブルバケットのポリシーを削除するアクセス許可を付与 | 権限の管理 | |||
| DeleteTablePolicy | テーブルのポリシーを削除するアクセス許可を付与 | 権限の管理 | |||
| GetNamespace | 名前空間を取得するアクセス許可を付与 | 読み取り | |||
| GetTable | テーブルを取得する許可を付与。 | 読み取り | |||
| GetTableBucket | テーブルバケットを取得する許可を付与 | 読み取り | |||
| GetTableBucketEncryption | テーブルバケット上の暗号化設定を取得するアクセス許可を付与 | 読み取り | |||
| GetTableBucketMaintenanceConfiguration | テーブルバケットのメンテナンス設定を取得するアクセス許可を付与 | 読み取り | |||
| GetTableBucketPolicy | テーブルバケットのポリシーを取得するアクセス許可を付与 | 読み取り | |||
| GetTableData [アクセス許可のみ] | S3 API を使用してテーブルストレージエンドポイントからメタデータとデータオブジェクトを読み取るアクセス許可を付与 | 読み取り | |||
| GetTableEncryption | テーブル上の暗号化設定を取得するアクセス許可を付与 | 読み取り | |||
| GetTableMaintenanceConfiguration | テーブルのメンテナンス設定を取得するアクセス許可を付与 | 読み取り | |||
| GetTableMaintenanceJobStatus | テーブルのメンテナンスジョブのステータスを取得するアクセス許可を付与 | 読み取り | |||
| GetTableMetadataLocation | テーブルのメタデータの場所を取得するアクセス許可を付与 | 読み取り | |||
| GetTablePolicy | テーブルのポリシーを取得するアクセス許可を付与 | 読み取り | |||
| ListNamespaces | 名前空間を一覧表示するアクセス許可を付与 | リスト | |||
| ListTableBuckets | テーブルバケットを一覧表示するアクセス許可を付与 | リスト | |||
| ListTables | テーブルを一覧表示するアクセス許可を付与 | リスト | |||
| PutTableBucketEncryption | テーブルバケット上の暗号化設定を追加または上書きするアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| PutTableBucketMaintenanceConfiguration | テーブルバケットのメンテナンス設定を配置するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| PutTableBucketPolicy | テーブルバケットでポリシーを作成または上書きするアクセス許可を付与 | 権限の管理 | |||
| PutTableData [アクセス許可のみ] | S3 API を使用してテーブルストレージエンドポイントからメタデータとデータオブジェクトを書き込むアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| PutTableEncryption [アクセス許可のみ] | テーブルバケット上の暗号化設定を追加するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| PutTableMaintenanceConfiguration | テーブルのメンテナンス設定を配置するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| PutTablePolicy | テーブルのポリシーを作成または上書きするアクセス許可を付与 | 権限の管理 | |||
| RenameTable | テーブルの名前を変更したり、名前空間間でテーブルを移動したりするアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
| UpdateTableMetadataLocation | テーブルのメタデータの場所を更新するアクセス許可を付与 | あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。 | |||
Amazon S3 Tables で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
| リソースタイプ | ARN | 条件キー |
|---|---|---|
| TableBucket |
arn:${Partition}:s3tables:${Region}:${Account}:bucket/${TableBucketName}
|
|
| Table |
arn:${Partition}:s3tables:${Region}:${Account}:bucket/${TableBucketName}/table/${TableID}
|
Amazon S3 Tables の条件キー
Amazon S3 Tables は、IAM ポリシーの Condition 要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、「AWSグローバル条件コンテキストキー」を参照してください。
| 条件キー | 説明 | [Type] (タイプ) |
|---|---|---|
| s3tables:KMSKeyArn | テーブルの暗号化に使用するキーの AWS KMS キー ARN でアクセスをフィルタリングします | ARN |
| s3tables:SSEAlgorithm | テーブルの暗号化に使用するサーバー側の暗号化アルゴリズムでアクセスをフィルタリングします | 文字列 |
| s3tables:namespace | テーブルバケットで作成された名前空間でアクセスをフィルタリングします | 文字列 |
| s3tables:tableName | テーブルバケット内のテーブルの名前でアクセスをフィルタリングします | 文字列 |