メニュー
AWS Identity and Access Management
ユーザーガイド

AWS Key Management Service のアクション、リソース、および条件キー

AWS Key Management Service (サービスプレフィックス: kms) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。

参照:

AWS Key Management Service で定義されるアクション

IAM ポリシーステートメントの Action 要素では、以下のアクションを指定できます。ポリシーを使用することにより、AWS でオペレーションを実行するすべてのユーザーのアクセス許可を定義します。ポリシーでアクションを使用する場合は、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。以下の表の列の詳細については、「アクションテーブル」を参照してください。

アクション 説明 アクセスレベル リソースタイプ (* 必須) 条件キー 依存アクション
CancelKeyDeletion カスタマーマスターキーのスケジュールされた削除をキャンセルするアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:ViaService

CreateAlias カスタマーマスターキー (CMK) のエイリアスを作成するアクセス許可を付与します。エイリアスは CMK に関連付けることができるオプションの表示名です。 書き込み

key*

kms:CallerAccount

kms:ViaService

CreateGrant カスタマーマスターキーに権限を追加するアクセス許可を付与します。権限を使用すると、キーポリシーまたは IAM ポリシーを変更することなくアクセス許可を追加できます。 アクセス権限の管理

key*

kms:CallerAccount

kms:GrantConstraintType

kms:GrantIsForAWSResource

kms:ViaService

CreateKey データキーやその他の機密情報を保護するために使用できるカスタマーマスターキーを作成するアクセス許可を付与します。 書き込み

kms:BypassPolicyLockoutSafetyCheck

kms:KeyOrigin

Decrypt カスタマーマスターキーで暗号化された暗号化テキストを復号化するアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:EncryptionContextKeys

kms:ViaService

DeleteAlias カスタマーマスターキーのオプションのフレンドリ名である、エイリアスを削除するアクセス許可を付与します。 書き込み

alias*

kms:CallerAccount

kms:ViaService

DeleteImportedKeyMaterial カスタマーマスターキーにインポートした暗号化マテリアルを削除するアクセス許可を付与します。このアクションにより、キーは使用できなくなります。 書き込み

key*

kms:CallerAccount

kms:ViaService

DescribeKey カスタマーマスターキーに関する詳細情報を表示するアクセス許可を付与します。 Read

key*

kms:CallerAccount

kms:ViaService

DisableKey カスタマーマスターキーを無効にするアクセス許可を付与します。これにより、暗号化オペレーションで使用されなくなります。 書き込み

key*

kms:CallerAccount

kms:ViaService

DisableKeyRotation カスタマー管理のカスタマーマスターキーの自動ローテーションを無効にするアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:ViaService

EnableKey カスタマーマスターキー (CMK) の状態を有効に変更するアクセス許可を付与します。これにより、CMK を暗号化オペレーションで使用することができます。 書き込み

key*

kms:CallerAccount

kms:ViaService

EnableKeyRotation カスタマーマスターキーの暗号化マテリアルの自動ローテーションを有効化するアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:ViaService

Encrypt 指定したカスタマーマスターキーを使用してデータとデータキーを暗号化するアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:EncryptionContextKeys

kms:ViaService

GenerateDataKey カスタマーマスターキーを使用してデータとデータキーを生成するアクセス許可を付与します。データキーを使用して、AWS KMS の外部のデータを暗号化することができます。 書き込み

key*

kms:CallerAccount

kms:EncryptionContextKeys

kms:ViaService

GenerateDataKeyWithoutPlaintext カスタマーマスターキーを使用してデータキーを生成するアクセス許可を付与します。GenerateDataKey オペレーションとは異なり、このオペレーションでは、暗号化されたデータキーが、データキーのプレーンテキストバージョンなしで返されます。 書き込み

key*

kms:CallerAccount

kms:EncryptionContextKeys

kms:ViaService

GenerateRandom 暗号化された安全な乱数バイト文字列を AWS KMS から取得するアクセス許可を付与します。 書き込み
GetKeyPolicy 指定されたカスタマーマスターキーのキーポリシーを表示するアクセス許可を付与します。 Read

key*

kms:CallerAccount

kms:ViaService

GetKeyRotationStatus カスタマーマスターキーで自動キーローテーションが有効になっているかどうかを判断するアクセス許可を付与します。 Read

key*

kms:CallerAccount

kms:ViaService

GetParametersForImport パブリックキーとインポートトークンを含む、暗号化されたマテリアルをカスタマー管理キーにインポートするために必要なデータを取得するアクセス許可を付与します。 Read

key*

kms:CallerAccount

kms:ViaService

kms:WrappingAlgorithm

kms:WrappingKeySpec

ImportKeyMaterial カスタマーマスターキーに暗号化マテリアルをインポートするアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:ExpirationModel

kms:ValidTo

kms:ViaService

ListAliases アカウントに定義されているエイリアスを表示するアクセス許可を付与します。エイリアスはカスタマーマスターキーに関連付けることができるオプションの表示名です。 リスト
ListGrants カスタマーマスターキーのすべての権限を表示するアクセス許可を付与します。 リスト

key*

kms:CallerAccount

kms:ViaService

ListKeyPolicies カスタマーマスターキーのキーポリシーの名前を表示するアクセス許可を付与します。 リスト

key*

kms:CallerAccount

kms:ViaService

ListKeys アカウントのすべてのカスタマーマスターキーのキー ID と Amazon リソースネーム (ARN) を表示するアクセス許可を付与します。 リスト
ListResourceTags カスタマーマスターキーに添付されているすべてのタグを表示するアクセス許可を付与します。 Read

key*

kms:CallerAccount

kms:ViaService

ListRetirableGrants 指定したプリンシパルが削除プリンシパルである権限付与を表示するアクセス許可を付与します。他のプリンシパルは権限付与を解除し、このプリンシパルは他の権限付与を解除する可能性があります。 リスト

key*

PutKeyPolicy 指定されたカスタマーマスターキーのキーポリシーを置き換えるアクセス許可を付与します。 アクセス権限の管理

key*

kms:BypassPolicyLockoutSafetyCheck

kms:CallerAccount

kms:ViaService

ReEncryptFrom AWS KMS 内のデータを復号化して再暗号化するプロセスの一環として、データを復号化するアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:EncryptionContextKeys

kms:ReEncryptOnSameKey

kms:ViaService

ReEncryptTo AWS KMS 内のデータを復号化して再暗号化するプロセスの一環として、データを暗号化するアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:EncryptionContextKeys

kms:ReEncryptOnSameKey

kms:ViaService

RetireGrant 許可を無効にするアクセス許可を付与します。RetireGrant オペレーションは、通常、タスクが完了した後で、実行することを許可された権限ユーザーによって呼び出されます。 アクセス権限の管理

key*

RevokeGrant 許可を取り消すアクセス許可を付与します。これは、その権限に依存するすべてのオペレーションのアクセス許可を拒否します。 アクセス権限の管理

key*

kms:CallerAccount

kms:ViaService

ScheduleKeyDeletion カスタマーマスターキーの削除をスケジュールするアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:ViaService

TagResource カスタマーマスターキーに添付されているのタグを作成または更新するアクセス許可を付与します。 タグ付け

key*

kms:CallerAccount

kms:ViaService

UntagResource カスタマーマスターキーに添付されているタグを削除するアクセス許可を付与します。 タグ付け

key*

kms:CallerAccount

kms:ViaService

UpdateAlias エイリアスを別のカスタマーマスターキーに関連付けるアクセス許可を付与します。 書き込み

alias*

key*

kms:CallerAccount

kms:ViaService

UpdateKeyDescription カスタマーマスターキーの説明を削除または変更するアクセス許可を付与します。 書き込み

key*

kms:CallerAccount

kms:ViaService

KMS で定義されるリソース

以下のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource 要素で使用できます。「アクション」テーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。

リソースタイプ ARN 条件キー
alias arn:${Partition}:kms:${Region}:${Account}:alias/${Alias}
key arn:${Partition}:kms:${Region}:${Account}:key/${KeyId}

AWS Key Management Service の条件キー

AWS Key Management Service は、IAM ポリシーの Condition 要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。

すべてのサービスで使用できるグローバル条件キーを確認するには、「IAM ポリシーの参照」の「使用できるグローバル条件キー」を参照してください。

条件キー 説明 タイプ
kms:BypassPolicyLockoutSafetyCheck リクエストの BypassPolicyLockoutSafetyCheck パラメータの値に基づき、CreateKey オペレーションおよび PutKeyPolicy オペレーションへのアクセスを制御します。 Bool
kms:CallerAccount 発信者の AWS アカウント ID に基づいて、指定された AWS KMS オペレーションへのアクセスを制御します。この条件キーを使用して、単一のポリシーステートメント内の AWS アカウントのすべての IAM ユーザーおよびロールへのアクセスを許可するか拒否できます。 文字列
kms:EncryptionContextKeys 暗号化コンテキストの指定されたキーの存在に基づいてアクセスを制御します。暗号化コンテキストは、暗号化オペレーションにおけるオプションの要素です。 文字列
kms:ExpirationModel リクエストの ExpirationModel パラメータの値に基づき、ImportKeyMaterial オペレーションへのアクセスを制御します。 文字列
kms:GrantConstraintType リクエストの許可の制約に基づいて CreateGrant オペレーションへのアクセスを制御します。 文字列
kms:GrantIsForAWSResource 指定された AWS サービスからリクエストが送信されたときに、CreateGrant オペレーションへのアクセスを制御します。 Bool
kms:GrantOperations 権限のオペレーションに基づいて CreateGrant オペレーションへのアクセスを制御します。 文字列
kms:GranteePrincipal 権限の被付与者プリンシパルに基づいて CreateGrant オペレーションへのアクセスを制御します。 文字列
kms:KeyOrigin リクエストの Origin パラメータの値に基づき、CreateKey オペレーションへのアクセスを制御します。Origin パラメータは、AWS KMS がキーの暗号化マテリアルを生成するか、それをインポートするかを決定します。 文字列
kms:RetiringPrincipal 権限の削除プリンシパルに基づいて CreateGrant オペレーションへのアクセスを制御します。 文字列
kms:ReEncryptOnSameKey 暗号化オペレーションに使用されたのと同じカスタマーマスターキーを使用する場合に、ReEncrypt オペレーションへのアクセスを制御します。 Bool
kms:ValidTo リクエストの ValidTo パラメータの値に基づき、ImportKeyMaterial オペレーションへのアクセスを制御します。この条件キーを使用すると、指定した日付までに期限が切れた場合にのみ、ユーザーがキーマテリアルをインポートできるようになります。 数値
kms:ViaService プリンシパルに代わって行われたリクエストが指定された AWS サービスからのものである場合にアクセスを制御します。 文字列
kms:WrappingAlgorithm リクエストの WrappingAlgorithm パラメータの値に基づき、GetParametersForImport オペレーションへのアクセスを制御します。 文字列
kms:WrappingKeySpec リクエストの WrappingKeySpec パラメータの値に基づき、GetParametersForImport オペレーションへのアクセスを制御します。 文字列