本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Nitro Enclaves 的條件索引鍵
下列條件金鑰專屬於 Nitro Enclaves 認證:
kms:RecipientAttestation:ImageSha384
| AWS KMS 條件金鑰 | 條件類型 | 值類型 | API 操作 | 政策類型 |
|---|---|---|---|---|
|
|
String |
單一值 |
|
金鑰政策和 IAM 政策 |
當請求中已簽署證明文件的映像摘要符合條件金鑰中的值時,kms:RecipientAttestation:ImageSha384條件金鑰GenerateRandom會使用 KMS 金鑰控制對 Decrypt DeriveSharedSecretGenerateDataKeyPair、、GenerateDataKey、 和 的存取。ImageSha384 值對應證明文件的 PCR0。只有在請求中的 Recipient 參數指定 AWS Nitro enclave 的已簽署證明文件時,此條件金鑰才有效。
此值也包含在對 for Nitro enclaves 的請求 AWS KMS 的 CloudTrail 事件中。
例如,下列金鑰政策陳述式允許data-processing角色將 KMS 金鑰用於 Decrypt、DeriveSharedSecret、GenerateDataKey、GenerateDataKeyPair 和 GenerateRandom 操作。僅當請求中證明文件的影像摘要值 (PCR0) 符合條件的影像摘要值時,kms:RecipientAttestation:ImageSha384 條件金鑰才會允許操作。只有在請求中的 Recipient 參數指定 AWS Nitro enclave 的已簽署證明文件時,此條件索引鍵才有效。
如果請求不包含來自 AWS Nitro enclave 的有效證明文件,則會拒絕許可,因為不符合此條件。
{ "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> 只有在請求中簽署的證明文件的平台組態註冊 PCRs) 符合條件金鑰中的 PCRs 時,條件金鑰才會控制對 GenerateDataKeyPair、、DecryptDeriveSharedSecretGenerateDataKey、 和 GenerateRandom的存取。只有在請求中的 Recipient 參數指定來自 AWS Nitro enclave 的已簽署證明文件時,此條件索引鍵才有效。
此值也包含在代表對 Nitro enclaves 請求 AWS KMS 的 CloudTrail 事件中。
若要指定 PCR 值,請使用以下格式。將 PCR ID 串連到條件索引鍵名稱。您可以指定識別六個 enclave 測量之一的 PCR ID,或您針對特定使用案例定義的自訂 PCR ID。PCR 值必須是最多 96 個位元組的小寫十六進位字串。
"kms:RecipientAttestation:PCRPCR_ID": "PCR_value"
例如,下列條件金鑰指定 PCR1 的特定值,對應於用於 enclave 與啟動程序處理的核心雜湊。
kms:RecipientAttestation:PCR1: "abc1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"
下列範例金鑰政策陳述式允許 data-processing 角色利用 KMS 金鑰進行 Decrypt 操作。
僅當請求中已簽署證明文件中的 PCR1 值符合條件中的 kms:RecipientAttestation:PCR1 值時,本陳述式中的 kms:RecipientAttestation:PCR 條件索引鍵才會允許操作。使用 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" } } }