翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS Key Management Service のアクション、リソース、および条件キー
AWS Key Management Service (サービスプレフィックス: kms
) では、IAM アクセス許可ポリシーで使用できるように、以下のサービス固有のリソースやアクション、条件コンテキストキーが用意されています。
リファレンス:
-
このサービスを設定する方法について説明します。
-
このサービスで使用できる API オペレーションのリストを表示します。
-
IAM アクセス許可ポリシーを使用して、このサービスとそのリソースを保護する方法について説明します。
トピック
AWS Key Management Service で定義されるアクション
IAM ポリシーステートメントの Action
要素で次のアクションを指定できます。ポリシーを使用して、 AWSでオペレーションを実行するアクセス許可を付与します。ポリシーでアクションを使用する場合、通常、同じ名前の API オペレーションまたは CLI コマンドへのアクセスを許可または拒否します。ただし、場合によっては、1 つのアクションによって複数のオペレーションへのアクセスが制御されます。あるいは、いくつかのオペレーションはいくつかの異なるアクションを必要とします。
[アクション] テーブルの [リソースタイプ] 列は、各アクションがリソースレベルの許可をサポートしているかどうかを示します。この列に値がない場合は、ポリシーステートメントの Resource
要素で、ポリシーが適用されるすべてのリソース (「*」) を指定する必要があります。列にリソースタイプが含まれている場合は、そのアクションを含むステートメントでそのタイプの ARN を指定できます。アクションで 1 つ以上のリソースが必須となっている場合、呼び出し元には、それらのリソースを伴うアクションを使用するための許可が付与されている必要があります。必須リソースは、アスタリスク (*) でテーブルに示されています。IAM ポリシーの Resource
要素を使用してリソースアクセスを制限する場合は、必要なリソースタイプごとに ARN または パターンを含める必要があります。一部のアクションでは、複数のリソースタイプがサポートされています。リソースタイプがオプション (必須として示されていない) の場合、オプションのリソースタイプのいずれかを使用することを選択できます。
[アクション] テーブルの [条件キー] 列には、ポリシーステートメントの Condition
要素で指定できるキーが含まれます。サービスのリソースに関連付けられている条件キーの詳細については、[リソースタイプ] テーブルの [条件キー] 列を参照してください。
注記
リソース条件キーは、リソースタイプテーブルに一覧表示されています。アクションに適用されるリソースタイプへのリンクは、[アクション] テーブルの [リソースタイプ (* 必須)] 列にあります。[リソースタイプ] テーブルのリソースタイプには、[アクション] テーブルのアクションに適用されるリソース条件キーである、[条件キー] 列が含まれています。
以下の表の列の詳細については、「アクションテーブル」を参照してください。
アクション | 説明 | アクセスレベル | リソースタイプ (* 必須) | 条件キー | 依存アクション |
---|---|---|---|---|---|
CancelKeyDeletion | an AWS KMS キーのスケジュールされた削除をキャンセルするアクセス許可を制御します | 書き込み | |||
ConnectCustomKeyStore | カスタムキーストアを、 の外部にある関連付けられた AWS CloudHSM クラスターまたは外部キーマネージャーに接続または再接続するアクセス許可を制御します AWS | 書き込み | |||
CreateAlias | an AWS KMS キーのエイリアスを作成するアクセス許可を制御します。エイリアスは、KMS キーに関連付けることができるオプションのフレンドリ名です。 | 書き込み | |||
CreateCustomKeyStore | AWS CloudHSM クラスターまたは 外の外部キーマネージャーによってバックアップされるカスタムキーストアを作成するアクセス許可を制御します AWS | 書き込み |
cloudhsm:DescribeClusters iam:CreateServiceLinkedRole |
||
CreateGrant | an AWS KMS キーに許可を追加するアクセス許可を制御します。キーポリシーまたは IAM ポリシーを変更せずに、権限を使用してアクセス許可を追加できます。 | 権限の管理 | |||
CreateKey | データキーやその他の機密情報を保護するために使用できる AWS KMS キーを作成するアクセス許可を制御します | 書き込み |
iam:CreateServiceLinkedRole kms:PutKeyPolicy kms:TagResource |
||
Decrypt | an AWS KMS キーで暗号化された暗号文を復号するアクセス許可を制御します | 書き込み | |||
kms:EncryptionContext:${EncryptionContextKey} |
|||||
DeleteAlias | エイリアスを削除するアクセス許可を制御します。エイリアスは、 AWS KMS キーに関連付けることができるオプションのフレンドリ名です。 | 書き込み | |||
DeleteCustomKeyStore | カスタムキーストアを削除するアクセス許可を制御します | 書き込み | |||
DeleteImportedKeyMaterial | an AWS KMS キーにインポートした暗号化マテリアルを削除するアクセス許可を制御します。このアクションにより、キーは使用できなくなります | 書き込み | |||
DeriveSharedSecret | 指定された AWS KMS キーを使用して共有シークレットを取得するアクセス許可を制御します | 書き込み | |||
DescribeCustomKeyStores | アカウントおよびリージョンのカスタムキーストアに関する詳細情報を表示するアクセス許可を制御します | 読み取り | |||
DescribeKey | an AWS KMS キーに関する詳細情報を表示するアクセス許可を制御します | 読み取り | |||
DisableKey | AWS KMS キーを無効にし、暗号化オペレーションで使用できないようにするアクセス許可を制御します | 書き込み | |||
DisableKeyRotation | カスタマー管理の AWS KMS キーの自動ローテーションを無効にするアクセス許可を制御します | 書き込み | |||
DisconnectCustomKeyStore | カスタムキーストアを、関連付けられた AWS CloudHSM クラスターまたは外部キーマネージャーから の外部で切断するアクセス許可を制御します AWS | 書き込み | |||
EnableKey | an AWS KMS キーの状態を有効に変更するアクセス許可を制御します。これにより、KMS キーを暗号化オペレーションで使用できるようになります。 | 書き込み | |||
EnableKeyRotation | an AWS KMS キー内の暗号化マテリアルの自動ローテーションを有効にするアクセス許可を制御します | 書き込み | |||
Encrypt | 指定された AWS KMS キーを使用してデータとデータキーを暗号化するアクセス許可を制御します | 書き込み | |||
GenerateDataKey | AWS KMS キーを使用してデータキーを生成するアクセス許可を制御します。データキーを使用して、 AWS KMS の外部でデータを暗号化できます。 | 書き込み | |||
kms:EncryptionContext:${EncryptionContextKey} |
|||||
GenerateDataKeyPair | AWS KMS キーを使用してデータキーペアを生成するアクセス許可を制御します | 書き込み | |||
GenerateDataKeyPairWithoutPlaintext | AWS KMS キーを使用してデータキーペアを生成するアクセス許可を制御します。 GenerateDataKeyPair オペレーションとは異なり、このオペレーションはプレーンテキストのコピーなしで暗号化されたプライベートキーを返します。 | 書き込み | |||
GenerateDataKeyWithoutPlaintext | AWS KMS キーを使用してデータキーを生成するアクセス許可を制御します。 GenerateDataKey オペレーションとは異なり、このオペレーションは暗号化されたデータキーを、プレーンテキストバージョンのデータキーなしで返します。 | 書き込み | |||
GenerateMac | AWS KMS キーを使用してメッセージ認証コードを生成するアクセス許可を制御します | 書き込み | |||
GenerateRandom | AWS KMS から暗号的に安全なランダムバイト文字列を取得するアクセス許可を制御します | 書き込み | |||
GetKeyPolicy | 指定された AWS KMS キーのキーポリシーを表示するアクセス許可を制御します | 読み取り | |||
GetKeyRotationStatus | an AWS KMS キーのキーローテーションステータスを表示するアクセス許可を制御します | 読み取り | |||
GetParametersForImport | パブリックキーとインポートトークンを含む、暗号化されたマテリアルをカスタマーマネージドキーにインポートするために、必要なデータを取得するアクセス許可を制御します | 読み取り | |||
GetPublicKey | asymmetric AWS KMS キーのパブリックキーをダウンロードするアクセス許可を制御します | 読み取り | |||
ImportKeyMaterial | 暗号化マテリアルを an AWS KMS キーにインポートするアクセス許可を制御します | 書き込み | |||
ListAliases | アカウントに定義されているエイリアスを表示するアクセス許可を制御します。エイリアスは、 AWS KMS キーに関連付けることができるオプションのフレンドリ名です。 | リスト | |||
ListGrants | an AWS KMS キーのすべての許可を表示するアクセス許可を制御します | リスト | |||
ListKeyPolicies | an AWS KMS キーのキーポリシーの名前を表示するアクセス許可を制御します | リスト | |||
ListKeyRotations | an AWS KMS キーの完了したキーローテーションのリストを表示するアクセス許可を制御します | リスト | |||
ListKeys | アカウントの all AWS KMS キーのキー ID と Amazon リソースネーム (ARN) を表示するアクセス許可を制御します | リスト | |||
ListResourceTags | an AWS KMS キーにアタッチされているすべてのタグを表示するアクセス許可を制御します | リスト | |||
ListRetirableGrants | 指定したプリンシパルが削除プリンシパルである権限付与を表示するアクセス許可を制御します。他のプリンシパルは権限付与を解除し、このプリンシパルは他の権限付与を解除する可能性があります | リスト | |||
PutKeyPolicy | 指定された AWS KMS キーのキーポリシーを置き換えるアクセス許可を制御します | 権限の管理 | |||
ReEncryptFrom | AWS KMS 内のデータを復号および再暗号化するプロセスの一環としてデータを復号するアクセス許可を制御します | 書き込み | |||
ReEncryptTo | AWS KMS 内のデータを復号化して再暗号化するプロセスの一環としてデータを暗号化するアクセス許可を制御します | 書き込み | |||
ReplicateKey | マルチリージョンのプライマリキーをレプリケートするアクセス許可を制御します | 書き込み |
iam:CreateServiceLinkedRole kms:CreateKey kms:PutKeyPolicy kms:TagResource |
||
RetireGrant | 許可を無効にするアクセス許可を制御します。 RetireGrant オペレーションは通常、グラントユーザーがグラントの実行を許可したタスクを完了した後に呼び出されます。 | 権限の管理 | |||
RevokeGrant | 許可を取り消す許可を制御します。これは、その許可に依存するすべてのオペレーションの許可を拒否します | 権限の管理 | |||
RotateKeyOnDemand | an AWS KMS キーで暗号化マテリアルのオンデマンドローテーションを呼び出すアクセス許可を制御します | 書き込み | |||
ScheduleKeyDeletion | an AWS KMS キーの削除をスケジュールするアクセス許可を制御します | 書き込み | |||
Sign | メッセージのデジタル署名を作成する許可を制御します | 書き込み | |||
SynchronizeMultiRegionKey[アクセス許可のみ] | マルチリージョンキーを同期する内部 APIs へのアクセスを制御します | 書き込み | |||
TagResource | an AWS KMS キーにアタッチされているタグを作成または更新するアクセス許可を制御します | タグ付け | |||
UntagResource | an AWS KMS キーにアタッチされているタグを削除するアクセス許可を制御します | タグ付け | |||
UpdateAlias | エイリアスを別の AWS KMS キーに関連付けるアクセス許可を制御します。エイリアスは、KMS キーに関連付けることができるオプションのフレンドリ名です。 | 書き込み | |||
UpdateCustomKeyStore | カスタムキーストアのプロパティを変更する許可を制御します | 書き込み | |||
UpdateKeyDescription | an AWS KMS キーの説明を削除または変更するアクセス許可を制御します | 書き込み | |||
UpdatePrimaryRegion | マルチリージョンのプライマリキーのプライマリリージョンを更新するアクセス許可を制御します | 書き込み | |||
Verify | 指定された AWS KMS キーを使用してデジタル署名を検証するアクセス許可を制御します | 書き込み | |||
VerifyMac | AWS KMS キーを使用してメッセージ認証コードを検証するアクセス許可を制御します | 書き込み | |||
AWS Key Management Service で定義されるリソースタイプ
次のリソースタイプは、このサービスによって定義され、IAM アクセス許可ポリシーステートメントの Resource
要素で使用できます。アクションテーブルの各アクションは、そのアクションで指定できるリソースタイプを示しています。リソースタイプは、ポリシーに含めることができる条件キーを定義することもできます。これらのキーは、[リソースタイプ] テーブルの最後の列に表示されます。以下の表の列の詳細については、「リソースタイプテーブル」を参照してください。
AWS Key Management Service の条件キー
AWS Key Management Service は、IAM ポリシーの Condition
要素で使用できる以下の条件キーを定義します。これらのキーを使用して、ポリシーステートメントが適用される条件をさらに絞り込むことができます。以下の表の列の詳細については、「条件キーテーブル」を参照してください。
すべてのサービスで使用できるグローバル条件キーを確認するには、「使用できるグローバル条件キー」を参照してください。
条件キー | 説明 | [Type] (タイプ) |
---|---|---|
aws:RequestTag/${TagKey} | リクエスト内のタグのキーと値の両方に基づいて、指定された AWS KMS オペレーションへのアクセスをフィルタリングします | 文字列 |
aws:ResourceTag/${TagKey} | AWS KMS キーに割り当てられたタグに基づいて、指定された AWS KMS オペレーションへのアクセスをフィルタリングします | 文字列 |
aws:TagKeys | リクエスト内のタグキーに基づいて、指定された AWS KMS オペレーションへのアクセスをフィルタリングします | ArrayOfString |
kms:BypassPolicyLockoutSafetyCheck | リクエスト内の CreateKey PutKeyPolicy パラメータの値に基づいて、Word および BypassPolicyLockoutSafetyCheck オペレーションへのアクセスをフィルタリングします | Bool |
kms:CallerAccount | 発信者の AWS アカウント ID に基づいて、指定の AWS KMS オペレーションへのアクセスをフィルタリングします。この条件キーを使用して、1 AWS アカウント つのポリシーステートメントで 内のすべての IAM ユーザーとロールへのアクセスを許可または拒否できます。 | 文字列 |
kms:CustomerMasterKeySpec | CustomerMasterKeySpec kms: 条件キーは廃止されました。代わりに、 kms: KeySpec 条件キーを使用します。 | 文字列 |
kms:CustomerMasterKeyUsage | CustomerMasterKeyUsage kms: 条件キーは廃止されました。代わりに、 kms: KeyUsage 条件キーを使用します。 | 文字列 |
kms:DataKeyPairSpec | リクエスト内の GenerateDataKeyPair GenerateDataKeyPairWithoutPlaintext パラメータの値に基づいて、Word および KeyPairSpec オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:EncryptionAlgorithm | リクエスト内の暗号化アルゴリズムの値に基づいて、暗号化オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:EncryptionContext:${EncryptionContextKey} | 暗号化オペレーションの暗号化コンテキストに基づいて、symmetric AWS KMS キーへのアクセスをフィルタリングします。この条件では、キーと値の各暗号化コンテキストペアのキーと値を評価します。 | 文字列 |
kms:EncryptionContextKeys | 暗号化オペレーションの暗号化コンテキストに基づいて、symmetric AWS KMS キーへのアクセスをフィルタリングします。この条件キーでは、キーと値の各暗号化コンテキストペアのキーのみを評価します。 | ArrayOfString |
kms:ExpirationModel | リクエスト内の ImportKeyMaterial パラメータの値に基づいて、 ExpirationModel オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:GrantConstraintType | リクエスト内の許可の制約に基づいて、 CreateGrant オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:GrantIsForAWSResource | リクエストが指定された AWS サービスから送信されたときに、 CreateGrant オペレーションへのアクセスをフィルタリングします | Bool |
kms:GrantOperations | 許可内のオペレーションに基づいて、 CreateGrant オペレーションへのアクセスをフィルタリングします | ArrayOfString |
kms:GranteePrincipal | 許可内の被付与者プリンシパルに基づいて、 CreateGrant オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:KeyAgreementAlgorithm | リクエスト内の DeriveSharedSecret パラメータの値に基づいて、 KeyAgreementAlgorithm オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:KeyOrigin | オペレーションによって作成または使用される API キーのオリジンプロパティに基づいて、 AWS KMS オペレーションへのアクセスをフィルタリングします。これを使用して、 CreateKey オペレーション、または KMS キーに対して承認されたオペレーションの認可を認定します。 | 文字列 |
kms:KeySpec | オペレーションによって作成または使用される API キーの AWS KMS KeySpec プロパティに基づいて、Word オペレーションへのアクセスをフィルタリングします。これを使用して、 CreateKey オペレーション、または KMS キーリソースに対して承認されたオペレーションの認可を認定します。 | 文字列 |
kms:KeyUsage | オペレーションによって作成または使用される API キーの AWS KMS KeyUsage プロパティに基づいて、Word オペレーションへのアクセスをフィルタリングします。これを使用して、 CreateKey オペレーション、または KMS キーリソースに対して承認されたオペレーションの認可を認定します。 | 文字列 |
kms:MacAlgorithm | リクエストの GenerateMac VerifyMac パラメータに基づいて、Word および MacAlgorithm オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:MessageType | リクエスト内の MessageType パラメータの値に基づいて、Sign and Verify オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:MultiRegion | オペレーションによって作成または使用される API キーの AWS KMS MultiRegion プロパティに基づいて、Word オペレーションへのアクセスをフィルタリングします。これを使用して、 CreateKey オペレーション、または KMS キーリソースに対して承認されたオペレーションの認可を認定します。 | Bool |
kms:MultiRegionKeyType | オペレーションによって作成または使用される API キーの AWS KMS MultiRegionKeyType プロパティに基づいて、Word オペレーションへのアクセスをフィルタリングします。これを使用して、 CreateKey オペレーション、または KMS キーリソースに対して承認されたオペレーションの認可を認定します。 | 文字列 |
kms:PrimaryRegion | リクエスト内の UpdatePrimaryRegion パラメータの値に基づいて、 PrimaryRegion オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:ReEncryptOnSameKey | Encrypt オペレーションに使用されたのと同じ ReEncrypt AWS KMS キーを使用する場合に、Word オペレーションへのアクセスをフィルタリングします | Bool |
kms:RecipientAttestation:ImageSha384 | リクエストのアテステーションドキュメント内のイメージハッシュに基づいて、Decrypt、 DeriveSharedSecret、 GenerateDataKey、 GenerateDataKeyPair、 GenerateRandom オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:RecipientAttestation:PCR | リクエストのアテステーションドキュメントのプラットフォーム設定レジスタ ( GenerateRandom PCRs) に基づいて、Decrypt、 GenerateDataKey、Word オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:ReplicaRegion | リクエスト内の ReplicateKey パラメータの値に基づいて、 ReplicaRegion オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:RequestAlias | リクエスト内のエイリアスに基づいて、暗号化オペレーション、 DescribeKey、 GetPublicKey へのアクセスをフィルタリングします | 文字列 |
kms:ResourceAliases | AWS KMS キーに関連付けられたエイリアスに基づいて、指定の AWS KMS オペレーションへのアクセスをフィルタリングします | ArrayOfString |
kms:RetiringPrincipal | グラントの廃止プリンシパルに基づいて、 CreateGrant オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:RotationPeriodInDays | リクエスト内の EnableKeyRotation パラメータの値に基づいて、 RotationPeriodInDays オペレーションへのアクセスをフィルタリングします | 数値 |
kms:ScheduleKeyDeletionPendingWindowInDays | リクエスト内の ScheduleKeyDeletion パラメータの値に基づいて、 PendingWindowInDays オペレーションへのアクセスをフィルタリングします | 数値 |
kms:SigningAlgorithm | リクエストの署名アルゴリズムに基づいて、Sign および Verify オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:ValidTo | リクエスト内の ImportKeyMaterial パラメータの値に基づいて、 ValidTo オペレーションへのアクセスをフィルタリングします。この条件キーを使用すると、指定した日付までに期限が切れた場合にのみ、ユーザーがキーマテリアルをインポートできるようになります | 日付 |
kms:ViaService | プリンシパルに代わって行われたリクエストが指定された AWS サービスから送信されたときにアクセスをフィルタリングします | 文字列 |
kms:WrappingAlgorithm | リクエスト内の GetParametersForImport パラメータの値に基づいて、 WrappingAlgorithm オペレーションへのアクセスをフィルタリングします | 文字列 |
kms:WrappingKeySpec | リクエスト内の GetParametersForImport パラメータの値に基づいて、 WrappingKeySpec オペレーションへのアクセスをフィルタリングします | 文字列 |