Amazon DynamoDB のアクション、リソース、および条件キー
Amazon DynamoDB (サービスプレフィックス: dynamodb
) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
参照:
-
このサービスを設定する方法について説明します。
-
このサービスで使用可能な API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法を学びます。
Amazon DynamoDB で定義されるアクション
IAM ポリシーステートメントの Action
エレメントでは、以下のアクションを指定できます。ポリシーを使用して、AWS でオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource
要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource
要素でリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN またはパターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition
要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
---|---|---|---|---|---|
BatchGetItem | 1 つ以上の表から 1 つ以上の項目の属性を返す許可を付与します。 | 読み込み | |||
BatchWriteItem | 1 つ以上の表を配置もしくは削除する許可を付与します。 | 書き込み | |||
ConditionCheckItem | ConditionCheckItem オペレーションにより、指定されたプライマリキーを持つ項目で一連の属性が存在するかどうかがチェックする許可を付与します。 | 読み取り | |||
CreateBackup | 既存の表のバックアップを作成するためのアクセス許可を付与します。 | 書き込み | |||
CreateGlobalTable | 既存の表からグローバル表を作成するアクセス許可を付与します。 | 書き込み | |||
CreateTable | CreateTable オペレーションで新しい表をアカウントに追加しする許可を付与します。 | 書き込み | |||
CreateTableReplica [アクセス許可のみ] | 新しいレプリカ表を追加するアクセス許可を付与します。 | 書き込み | |||
DeleteBackup | 表の既存のバックアップを削除するアクセス許可を付与します。 | 書き込み | |||
DeleteItem | プライマリキーを使用して表から 1 つの項目を削除する権限を付与します。 | 書き込み | |||
DeleteResourcePolicy | リソースに添付されたリソースベースのポリシーを削除する許可を付与する | 権限の管理 | |||
DeleteTable | DeleteTable オペレーションで表およびその項目をすべて削除する許可を付与します。 | 書き込み | |||
DeleteTableReplica [アクセス許可のみ] | レプリカ表およびその項目をすべて削除するアクセス許可を付与します。 | 書き込み | |||
DescribeBackup | 表の既存のバックアップを記述するアクセス許可を付与します。 | 読み取り | |||
DescribeContinuousBackups | 指定された表のバックアップの復元設定のステータスを確認する許可を付与します。 | 読み取り | |||
DescribeContributorInsights | 特定の表およびグローバルセカンダリインデックスの寄稿者インサイトステータスを記述する許可を付与します。 | 読み取り | |||
DescribeEndpoints | リージョンレベルのエンドポイントに関する情報を返すための許可を付与します | 読み取り | |||
DescribeExport | 表の既存のエクスポートを記述するアクセス許可を付与します。 | 読み取り | |||
DescribeGlobalTable | 指定したグローバル表に関する情報を返すアクセス許可を付与します。 | 読み取り | |||
DescribeGlobalTableSettings | 指定されたグローバル表に関する設定情報を返すアクセス許可を付与します。 | 読み取り | |||
DescribeImport | 既存のインポートを記述する許可を付与 | 読み取り | |||
DescribeKinesisStreamingDestination | 所与の表の Kinesis ストリーミングのステータスおよび関連する詳細を記述する権限を付与します。 | 読み取り | |||
DescribeLimits | リージョンの AWS アカウント に設定されている現在のプロビジョンドキャパシティーの制限を返す許可を付与します。対象はリージョン全体と、そこで作成した任意の DynamoDB 表の両方です。 | 読み取り | |||
DescribeReservedCapacity [アクセス許可のみ] | 1 つ以上の購入されたリザーブドキャパシティーを記述する許可を付与します。 | 読み取り | |||
DescribeReservedCapacityOfferings [アクセス許可のみ] | 購入可能なリザーブドキャパシティーの提供内容を記述する許可を付与します。 | 読み取り | |||
DescribeStream | ストリームに関する情報 (例: ストリームの最新ステータス、Amazon リソースネーム (ARN)、シャードの構成、対応する DynamoDB テーブル) を返す許可を付与します。 | 読み取り | |||
DescribeTable | 表に関する情報を返すアクセス許可を付与します。 | 読み取り | |||
DescribeTableReplicaAutoScaling | グローバル表のすべてのレプリカにおける Auto Scaling 設定を記述する許可を付与します。 | 読み取り | |||
DescribeTimeToLive | 指定された表の 有効期限 (TTL) ステータスの説明をする許可を付与します。 | 読み取り | |||
DisableKinesisStreamingDestination | DynamoDB テーブルから Kinesis データストリームへのレプリケーションを停止する権限を付与します。 | 書き込み | |||
EnableKinesisStreamingDestination | イネーブルワークフローで選択されたタイムスタンプに従い、指定された Kinesis データストリームへの表データレプリケーションを開始する権限を付与します。 | 書き込み | |||
ExportTableToPointInTime | DynamoDB 表の S3 へのエクスポートを開始するアクセス許可を付与します。 | 書き込み | |||
GetItem | 指定されたプライマリキーを持つ項目の属性のセットを返しますGetlemオペレーションへのアクセス許可を付与します。 | 読み取り | |||
GetRecords | 特定のシャード内からストリームレコードを取得する許可を付与します。 | 読み取り | |||
GetResourcePolicy | リソースのリソースベースのポリシーを表示する許可を付与する | 読み取り | |||
GetShardIterator | シャードイテレータを返すアクセス許可を付与します。 | 読み取り | |||
ImportTable | S3 から DynamoDB 表へのインポートを開始する許可を付与 | 書き込み | |||
ListBackups | アカウントおよびエンドポイントに関連付けられているバックアップを一覧表示するアクセス許可を付与します。 | リスト | |||
ListContributorInsights | 現在のアカウントとエンドポイントに関連付けられているすべての表およびグローバルセカンダリインデックスの ContributorInsightsSummary を一覧表示する許可を付与します。 | リスト | |||
ListExports | アカウントおよびエンドポイントに関連付けられているエクスポートを一覧表示するアクセス許可を付与します。 | リスト | |||
ListGlobalTables | 指定されたリージョンにレプリカを持つすべてのグローバル表を一覧表示する許可を付与します。 | リスト | |||
ListImports | アカウントおよびエンドポイントに関連付けられているインポートを一覧表示する許可を付与 | リスト | |||
ListStreams | 現在のアカウントおよびエンドポイントに関連付けられたストリーム ARN の配列を返す許可を付与します。 | 読み取り | |||
ListTables | 現在のアカウントおよびエンドポイントに関連付けられた表の名前の配列を返す許可を付与します。 | リスト | |||
ListTagsOfResource | Amazon DynamoDB リソースのすべてのタグを一覧表示する許可を付与します。 | 読み取り | |||
PartiQLDelete | プライマリキーを使用してテーブルから 1 つの項目を削除する権限を付与します。 | Write | |||
PartiQLInsert | 同じプライマリキーを持つ項目がテーブルに存在しない場合に新しい項目を作成する権限を付与します。 | Write | |||
PartiQLSelect | テーブルまたはインデックスから項目の属性セットを読み取る権限を付与します | Read | |||
PartiQLUpdate | 既存の項目の属性を編集する権限を付与します。 | 書き込み | |||
PurchaseReservedCapacityOfferings [アクセス許可のみ] | アカウントで使用するリザーブドキャパシティーを購入する許可を付与します。 | 書き込み | |||
PutItem | 新しい項目を作成するか、古い項目を新しい項目に置き換える許可を付与します。 | 書き込み | |||
PutResourcePolicy | リソースにリソースベースのポリシーをアタッチする許可を付与する | 権限の管理 | |||
Query | 表のプライマリキーもしくはセカンダリインデックスを使用してその表もしくはインデックスの項目に直接アクセスする許可を付与します。 | 読み取り | |||
RestoreTableFromAwsBackup [アクセス許可のみ] | AWSバックアップ上のリカバリポイントから新しい表を作成するアクセス許可を付与します。 | 書き込み | |||
RestoreTableFromBackup | 既存のバックアップから新しい 表を作成するアクセス権限を付与します。 | 書き込み |
dynamodb:BatchWriteItem dynamodb:DeleteItem dynamodb:GetItem dynamodb:PutItem dynamodb:Query dynamodb:Scan dynamodb:UpdateItem |
||
RestoreTableToPointInTime | 表を任意の時点に復元する許可を付与します。 | 書き込み |
dynamodb:BatchWriteItem dynamodb:DeleteItem dynamodb:GetItem dynamodb:PutItem dynamodb:Query dynamodb:Scan dynamodb:UpdateItem |
||
Scan | 表もしくはセカンダリインデックスの各項目にアクセスして、1 つ以上の項目または項目属性を返す許可を付与します。 | 読み取り | |||
StartAwsBackupJob [アクセス許可のみ] | AWS高度な機能を有効にしたBackup上で、バックアップを作成するアクセス許可を付与します。 | 書き込み | |||
TagResource | タグのセットを Amazon DynamoDB リソースに関連付ける許可を付与します。 | タグ付け | |||
UntagResource | Amazon DynamoDB リソースからタグの関連付けを削除する許可を付与します。 | タグ付け | |||
UpdateContinuousBackups | 連続バックアップを有効または無効にするアクセス許可を付与します。 | 書き込み | |||
UpdateContributorInsights | 特定のテーブルもしくはグローバルセカンダリインデックスの寄稿者インサイトのステータスを更新します。 | 書き込み | |||
UpdateGlobalTable | 指定したグローバル表にユーザーがレプリカを追加または削除するアクセス許可を付与します。 | 書き込み | |||
UpdateGlobalTableSettings | 指定されたグローバル表内の設定を更新する権限を付与します。 | 書き込み | |||
UpdateGlobalTableVersion [アクセス許可のみ] | 指定されたグローバルテーブル内のバージョンを更新するための許可を付与します | 書き込み | |||
UpdateItem | 既存項目の属性を編集、もしくは存在しない場合は新しい項目を表に追加する許可を付与します。 | 書き込み | |||
UpdateKinesisStreamingDestination | 指定された Kinesis データストリームのデータレプリケーション設定を更新する許可を付与する | 書き込み | |||
UpdateTable | 特定の表のプロビジョンドスループット設定、グローバルセカンダリインデックス、もしくは DynamoDB Streams 設定を変更する許可を付与します。 | 書き込み | |||
UpdateTableReplicaAutoScaling | レプリカ表の Auto Scaling 設定を更新する許可を付与します。 | 書き込み | |||
UpdateTimeToLive | 指定された表の TTL を有効または無効にするアクセス許可を付与します | 書き込み |
Amazon DynamoDB で定義されるリソースタイプ
以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource
エレメントで使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
リソースタイプ | ARN | 条件キー |
---|---|---|
index |
arn:${Partition}:dynamodb:${Region}:${Account}:table/${TableName}/index/${IndexName}
|
|
stream |
arn:${Partition}:dynamodb:${Region}:${Account}:table/${TableName}/stream/${StreamLabel}
|
|
table |
arn:${Partition}:dynamodb:${Region}:${Account}:table/${TableName}
|
|
backup |
arn:${Partition}:dynamodb:${Region}:${Account}:table/${TableName}/backup/${BackupName}
|
|
export |
arn:${Partition}:dynamodb:${Region}:${Account}:table/${TableName}/export/${ExportName}
|
|
global-table |
arn:${Partition}:dynamodb::${Account}:global-table/${GlobalTableName}
|
|
import |
arn:${Partition}:dynamodb:${Region}:${Account}:table/${TableName}/import/${ImportName}
|
Amazon DynamoDB の条件キー
Amazon DynamoDB では、IAM ポリシーの Condition
要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、使用できるグローバル条件キーを参照してください。
注記
IAM ポリシーを使用してコンテキストキーで DynamoDB アクセスを制限する方法については、Amazon DynamoDB 開発者ガイドの「詳細に設定されたアクセスコントロールのための IAM ポリシー条件の使用」を参照してください。
条件キー | 説明 | [Type] (タイプ) |
---|---|---|
dynamodb:Attributes | テーブルの属性 (フィールドまたは列) の名前でフィルタリングします | ArrayOfString |
dynamodb:EnclosingOperation | トランザクション API の呼び出しをブロックしてアクセスをフィルタリングし、非トランザクション API の呼び出しを許可します。その逆も可能です | 文字列 |
dynamodb:FullTableScan | テーブルのフルスキャンをブロックしてアクセスをフィルタリングします | Bool |
dynamodb:LeadingKeys | テーブルのパーティションキーでアクセスをフィルタリングします | ArrayOfString |
dynamodb:ReturnConsumedCapacity | リクエストの ReturnConsumedCapacity パラメータでアクセスをフィルタリングします。「TOTAL」もしくは「NONE」を含みます。 | 文字列 |
dynamodb:ReturnValues | リクエストの ReturnValues パラメータでアクセスをフィルタリングします。次のいずれかを含みます: 「ALL_OLD」、「UPDATED_OLD」、「ALL_NEW」、「UPDATED_NEW」もしくは「NONE」 | 文字列 |
dynamodb:Select | クエリまたはスキャンリクエストの Select パラメータでアクセスをフィルタリングします | 文字列 |