翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Nitro Enclaves の条件キー
次の条件キーは Nitro Enclaves のアテステーションに固有です。
kms:RecipientAttestation:ImageSha384
| AWS KMS 条件キー | 条件の種類 | 値の型 | API オペレーション | ポリシータイプ |
|---|---|---|---|---|
|
|
String |
単一値 |
|
キーポリシーと IAM ポリシー |
kms:RecipientAttestation:ImageSha384 条件キーは、リクエスト内の署名付きアテステーションドキュメントからのイメージダイジェストが条件キーの値と一致する場合に、KMS キーを使用して Decrypt、DeriveSharedSecret、GenerateDataKey、GenerateDataKeyPair、GenerateRandom へのアクセスを制御します。ImageSha384 値は、アテステーションドキュメントの PCR0 に対応します。この条件キーは、リクエストの Recipientパラメータが AWS Nitro エンクレーブの署名付きアテステーションドキュメントを指定している場合にのみ有効です。
この値は、Nitro エンクレーブの へのリクエスト AWS KMS の CloudTrail イベントにも含まれます。
例えば、次のキーポリシーステートメントでは、Decrypt、DeriveSharedSecret、GenerateDataKey、GenerateDataKeyPair、GenerateRandom の各オペレーション向けの KMS キーの使用を data-processing ロールに許可します。kms:RecipientAttestation:ImageSha384 条件キーでは、リクエスト内のアテステーションドキュメントのイメージダイジェスト値 (PCR0) が条件内のイメージダイジェスト値と一致する場合にのみ、オペレーションを許可します。この条件キーは、リクエストの Recipientパラメータが AWS Nitro エンクレーブの署名付きアテステーションドキュメントを指定している場合にのみ有効です。
リクエストに AWS Nitro エンクレーブからの有効なアテステーションドキュメントが含まれていない場合、この条件が満たされないため、アクセス許可は拒否されます。
{ "Sid" : "Enable enclave data processing", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:role/data-processing" }, "Action": [ "kms:Decrypt", "kms:DeriveSharedSecret", "kms:GenerateDataKey", "kms:GenerateDataKeyPair", "kms:GenerateRandom" ], "Resource" : "*", "Condition": { "StringEqualsIgnoreCase": { "kms:RecipientAttestation:ImageSha384": "9fedcba8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef1abcdef0abcdef1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef99" } } }
kms:RecipientAttestation:PCR<PCR_ID>
| AWS KMS 条件キー | 条件の種類 | 値の型 | API オペレーション | ポリシータイプ |
|---|---|---|---|---|
|
|
String |
単一値 |
|
キーポリシーと IAM ポリシー |
kms:RecipientAttestation:PCR<PCR_ID> 条件キーは、リクエスト内の署名付きアテステーションドキュメントからのプラットフォーム設定登録 (PCR) が条件キー内の PCR と一致する場合にのみ、KMS キーを使用して Decrypt、DeriveSharedSecret、GenerateDataKey、GenerateDataKeyPair、GenerateRandom へのアクセスを制御します。この条件キーは、リクエストの Recipientパラメータが AWS Nitro エンクレーブから署名付きアテステーションドキュメントを指定する場合にのみ有効です。
この値は、Nitro エンクレーブ AWS KMS の へのリクエストを表す CloudTrail イベントにも含まれます。
PCR 値を指定するには、次の形式を使用します。PCR ID を条件キー名に連結します。6 つのエンクレーブ測定値のいずれかを識別する PCR ID、または特定のユースケースに対して定義したカスタム PCR ID を指定できます。PCR 値は、最大 96 バイトの小文字の 16 進文字列である必要があります。
"kms:RecipientAttestation:PCRPCR_ID": "PCR_value"
たとえば、次の条件キーは PCR1 の特定の値を指定します。これは、エンクレーブとブートストラッププロセスに使用されるカーネルのハッシュに対応します。
kms:RecipientAttestation:PCR1: "abc1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"
次のキーポリシーステートメントの例では、data-processing ロールに Decrypt オペレーションでの KMS キーの使用を許可します。
このステートメントの kms:RecipientAttestation:PCR 条件キーでは、リクエスト内の署名付きアテステーションドキュメントの PCR1 値が条件の kms:RecipientAttestation:PCR1 値と一致した場合にのみ、オペレーションを許可します。StringEqualsIgnoreCase ポリシー演算子を使用して、PCR 値の大文字と小文字を区別しない比較を要求します。
リクエストにアテステーションドキュメントが含まれない場合は、この条件が満たされないため、アクセス許可は拒否されます。
{ "Sid" : "Enable enclave data processing", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:role/data-processing" }, "Action": "kms:Decrypt", "Resource" : "*", "Condition": { "StringEqualsIgnoreCase": { "kms:RecipientAttestation:PCR1": "abc1de4f2dcf774f6e3b679f62e5f120065b2e408dcea327bd1c9dddaea6664e7af7935581474844767453082c6f1586116376cede396a30a39a611b9aad7966c87" } } }