

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# NitroTPM 的條件索引鍵
<a name="conditions-nitro-tpm"></a>

下列條件金鑰專屬於 NitroTPM 認證：

## kms:RecipientAttestation：NitroTPMPCR<PCR\$1ID>
<a name="conditions-kms-recipient-nitro-tpm-pcrs"></a>


| AWS KMS 條件金鑰 | 條件類型 | 值類型 | API 操作 | 政策類型 | 
| --- | --- | --- | --- | --- | 
|  `kms:RecipientAttestation:NitroTPMPCR<PCR_ID>`  |  String  | 單一值 |  `Decrypt` `DeriveSharedSecret` `GenerateDataKey` `GenerateDataKeyPair` `GenerateRandom`  |  金鑰政策和 IAM 政策  | 

`kms:RecipientAttestation:NitroTPMPCR<PCR_ID>` 只有在請求中簽署的證明文件的平台組態註冊 PCRs) 符合條件金鑰中的 PCRs 時，條件金鑰才會控制對 `GenerateDataKeyPair`、、`Decrypt``DeriveSharedSecret``GenerateDataKey`、 和 `GenerateRandom`的存取。只有在請求中的 `Recipient` 參數指定來自 NitroTPM 的已簽署證明文件時，此條件金鑰才有效。

此值也包含在代表對 AWS KMS for NitroTPM 請求的 [CloudTrail 事件](ct-nitro-tpm.md)中。

若要指定 PCR 值，請使用以下格式。將 PCR ID 串連到條件索引鍵名稱。PCR 值必須是最多 96 個位元組的小寫十六進位字串。

```
"kms:RecipientAttestation:NitroTPMPCRPCR_ID": "PCR_value"
```

例如，下列條件索引鍵會指定 PCR4 的特定值：

```
kms:RecipientAttestation:NitroTPMPCR4: "abc1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"
```

下列範例金鑰政策陳述式允許 `data-processing` 角色利用 KMS 金鑰進行 [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) 操作。

此陳述式中的`kms:RecipientAttestation:NitroTPMPCR`條件索引鍵僅在請求中已簽署證明文件中的 PCR4 值符合條件中的`kms:RecipientAttestation:NitroTPMPCR4`值時，才允許 操作。使用 `StringEqualsIgnoreCase` 政策運算子要求 PCR 值不區分大小寫的比較。

如請求不含證明文件，則會因未滿足此條件而拒絕許可。

```
{
  "Sid" : "Enable NitroTPM data processing",
  "Effect" : "Allow",
  "Principal" : {
    "AWS" : "arn:aws:iam::111122223333:role/data-processing"
  },
  "Action": "kms:Decrypt",
  "Resource" : "*",
  "Condition": {
    "StringEqualsIgnoreCase": {
      "kms:RecipientAttestation:NitroTPMPCR4": "abc1de4f2dcf774f6e3b679f62e5f120065b2e408dcea327bd1c9dddaea6664e7af7935581474844767453082c6f1586116376cede396a30a39a611b9aad7966c87"
    }
  }
}
```