AWS Key Management Service のアクション、リソース、および条件キー - サービス認証リファレンス

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

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

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

参照:

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

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

[リソースタイプ] 列は、各アクションがリソースレベルのアクセス許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource 要素ですべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれる場合、そのアクションを含むステートメントでそのタイプの ARN を指定できます。必須リソースは、アスタリスク (*) でテーブルに示されています。このアクションを使用してステートメントでリソースレベルのアクセス許可 ARN を指定する場合、このタイプである必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、一方を使用することはできますが、他方を使用することはできません。

以下の表の列の詳細については、「アクションテーブル」を参照してください。

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

key*

kms:CallerAccount

kms:ViaService

ConnectCustomKeyStore カスタムキーストアを、それに関連付けられた AWS CloudHSM クラスターに接続または再接続するアクセス許可を制御します 書き込み
CreateAlias カスタマーマスターキー (CMK) のエイリアスを作成するアクセス許可を制御します。エイリアスはカスタマーマスターキーに関連付けることができるオプションのわかりやすい名前です 書き込み

alias*

key*

kms:CallerAccount

kms:ViaService

CreateCustomKeyStore 所有および管理している AWS CloudHSM クラスターに関連付けられているカスタムキーストアを作成するアクセス許可を制御します 書き込み

cloudhsm:DescribeClusters

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

key*

kms:CallerAccount

kms:GrantConstraintType

kms:GrantIsForAWSResource

kms:ViaService

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

kms:BypassPolicyLockoutSafetyCheck

kms:CustomerMasterKeySpec

kms:CustomerMasterKeyUsage

kms:KeyOrigin

Decrypt カスタマーマスターキーで暗号化された暗号化テキストを復号化する許可を制御します 書き込み

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ViaService

DeleteAlias エイリアスを削除するアクセス許可を制御します。エイリアスはカスタマーマスターキーに関連付けることができるオプションのわかりやすい名前です 書き込み

alias*

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

DescribeCustomKeyStores アカウントおよびリージョンのカスタムキーストアに関する詳細情報を表示するアクセス許可を制御します Read
DescribeKey カスタマーマスターキーに関する詳細情報を表示するアクセス許可を制御します Read

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

DisconnectCustomKeyStore 関連付けられている AWS CloudHSM クラスターからカスタムキーストアを切断するアクセス許可を制御します 書き込み
EnableKey カスタマーマスターキー (CMK) の状態を有効に変更するアクセス許可を制御します。これにより、CMK を暗号化オペレーションで使用することができます 書き込み

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ViaService

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

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ViaService

GenerateDataKeyPair カスタマーマスターキーを使用してデータキーペアを生成するアクセス許可を制御します 書き込み

key*

kms:CallerAccount

kms:DataKeyPairSpec

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ViaService

GenerateDataKeyPairWithoutPlaintext カスタマーマスターキーを使用してデータとデータキーペアを生成するアクセス許可を制御します。GenerateDataKeyPair オペレーションとは異なり、このオペレーションは、暗号化されたプライベートキーを、プレーンテキストコピーなしで返します 書き込み

key*

kms:CallerAccount

kms:DataKeyPairSpec

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ViaService

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

key*

kms:CallerAccount

kms:EncryptionAlgorithm

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

GetPublicKey 非対称カスタマーマスターキーのパブリックキーをダウンロードするアクセス許可を制御します Read

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:ExpirationModel

kms:ValidTo

kms:ViaService

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

key*

kms:CallerAccount

kms:GrantIsForAWSResource

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

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

key*

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

key*

kms:BypassPolicyLockoutSafetyCheck

kms:CallerAccount

kms:ViaService

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

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ReEncryptOnSameKey

kms:ViaService

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

key*

kms:CallerAccount

kms:EncryptionAlgorithm

kms:EncryptionContextKeys

kms:ReEncryptOnSameKey

kms:ViaService

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

key*

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

key*

kms:CallerAccount

kms:GrantIsForAWSResource

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

Sign メッセージのデジタル署名を作成する許可を制御します 書き込み

key*

kms:CallerAccount

kms:MessageType

kms:SigningAlgorithm

kms:ViaService

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

key*

kms:CallerAccount

kms:ViaService

UntagResource カスタマーマスターキーに添付されているタグを削除する許可を制御します タグ付け

key*

kms:CallerAccount

kms:ViaService

UpdateAlias エイリアスを別のカスタマーマスターキーに関連付けるアクセス許可を制御します。エイリアスは、カスタマーマスターキーに関連付けることができるオプションのわかりやすい名前です 書き込み

alias*

key*

kms:CallerAccount

kms:ViaService

UpdateCustomKeyStore カスタムキーストアのプロパティを変更する許可を制御します 書き込み
UpdateKeyDescription カスタマーマスターキーの説明を削除または変更する許可を制御します 書き込み

key*

kms:CallerAccount

kms:ViaService

Verify 指定されたカスタマーマスターキーを使用してデジタル署名を検証する許可を制御します 書き込み

key*

kms:CallerAccount

kms:MessageType

kms:SigningAlgorithm

kms:ViaService

AWS Key Management Service で定義されるリソースタイプ

以下のリソースタイプは、このサービスによって定義され、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 要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。

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

条件キー 説明 タイプ
aws:ResourceTag/${TagKey} カスタマーマスターキーに割り当てられたタグに基づいて、指定された AWS KMS オペレーションへのアクセスをフィルタリングします 文字列
kms:BypassPolicyLockoutSafetyCheck リクエストの BypassPolicyLockoutSafetyCheck パラメータの値に基づいて、CreateKey オペレーションおよび PutKeyPolicy オペレーションへのアクセスをフィルタリングします Bool
kms:CallerAccount 発信者の AWS アカウント ID に基づいて、指定された AWS KMS オペレーションへのアクセスをフィルタリングします。この条件キーを使用して、単一のポリシーステートメント内の AWS アカウントのすべての IAM ユーザーおよびロールへのアクセスを許可または拒否できます。 文字列
kms:CustomerMasterKeySpec オペレーションによって作成される、またはオペレーションで使用される CMK の CustomerMasterKeySpec プロパティに基づいて、API オペレーションへのアクセスをフィルタリングします。これを使用して、CreateKey オペレーションまたは CMK リソースに対して認可されているオペレーションの承認を認定します 文字列
kms:CustomerMasterKeyUsage オペレーションによって作成された、またはオペレーションで使用される CMK の KeyUsage プロパティに基づいて、API オペレーションへのアクセスをフィルタリングします。これを使用して、CreateKey オペレーションまたは CMK リソースに対して認可されているオペレーションの承認を認定します 文字列
kms:DataKeyPairSpec リクエストの DataKeyPairSpec パラメータの値に基づいて、GenerateDataKeyPair および GenerateDataKeyPairWithoutPlaintext オペレーションへのアクセスをフィルタリングします 文字列
kms:EncryptionAlgorithm リクエスト内の暗号化アルゴリズムの値に基づいて、暗号化オペレーションへのアクセスをフィルタリングします 文字列
kms:EncryptionContextKeys 暗号化コンテキストの指定されたキーのプレゼンスに基づいて、アクセスをフィルタリングします。暗号化コンテキストは、暗号化オペレーションにおけるオプションの要素です 文字列
kms:ExpirationModel リクエストの ExpirationModel パラメータの値に基づいて、ImportKeyMaterial オペレーションへのアクセスをフィルタリングします 文字列
kms:GrantConstraintType リクエストの許可の制約に基づいて、CreateGrant オペレーションへのアクセスをフィルタリングします 文字列
kms:GrantIsForAWSResource 指定された AWS のサービスからリクエストが送信されたときに、CreateGrant オペレーションへのアクセスをフィルタリングします Bool
kms:GrantOperations 権限のオペレーションに基づいて、CreateGrant オペレーションへのアクセスをフィルタリングします 文字列
kms:GranteePrincipal 権限の被付与者プリンシパルに基づいて、CreateGrant オペレーションへのアクセスをフィルタリングします 文字列
kms:KeyOrigin オペレーションによって作成された、またはオペレーションで使用される CMK の Origin プロパティに基づいて、API オペレーションへのアクセスをフィルタリングします。これを使用して、CreateKey オペレーションまたは CMK リソースに対して認可されているオペレーションの承認を認定します 文字列
kms:MessageType リクエストの MessageType パラメータの値に基づいて、Sign オペレーションおよび Verify オペレーションへのアクセスをフィルタリングします 文字列
kms:ReEncryptOnSameKey 暗号化オペレーションに使用されたのと同じカスタマーマスターキーを使用する場合に、ReEncrypt オペレーションへのアクセスをフィルタリングします Bool
kms:RequestAlias リクエスト内のエイリアスに基づいて、暗号化操作、DescribeKey、および GetPublicKey へのアクセスをフィルタリングします 文字列
kms:ResourceAliases カスタマーマスターキーに関連付けられたエイリアスに基づいて、指定された AWS KMS オペレーションへのアクセスをフィルタリングします 文字列
kms:RetiringPrincipal 権限の削除プリンシパルに基づいて、CreateGrant オペレーションへのアクセスをフィルタリングします 文字列
kms:SigningAlgorithm リクエストの署名アルゴリズムに基づいて、Sign および Verify オペレーションへのアクセスをフィルタリングします 文字列
kms:ValidTo リクエストの ValidTo パラメータの値に基づいて、ImportKeyMaterial オペレーションへのアクセスをフィルタリングします。この条件キーを使用すると、指定した日付までに期限が切れた場合にのみ、ユーザーがキーマテリアルをインポートできるようになります 数値
kms:ViaService プリンシパルに代わって行われたリクエストが指定された AWS のサービスからのものである場合に、アクセスをフィルタリングします 文字列
kms:WrappingAlgorithm リクエストの WrappingAlgorithm パラメータの値に基づいて、GetParametersForImport オペレーションへのアクセスをフィルタリングします 文字列
kms:WrappingKeySpec リクエストの WrappingKeySpec パラメータの値に基づいて、GetParametersForImport オペレーションへのアクセスをフィルタリングします 文字列