Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Préparer AWS KMS l'attestation
Note
Si vous attestez d'un service tiers, vous devez créer vos propres mécanismes personnalisés pour recevoir, analyser et valider les documents d'attestation. Pour de plus amples informations, veuillez consulter Valider un document d'attestation NitroTPM.
Après avoir créé votre AMI attestable, vous devriez disposer de mesures de référence que vous pouvez utiliser pour valider les demandes provenant d'une EC2 instance Amazon. AWS KMS fournit un support intégré pour l'attestation avec NitroTPM.
Pour la AWS KMS clé que vous avez utilisée pour chiffrer vos données secrètes, ajoutez une politique clé qui autorise l'accès aux clés uniquement si les demandes d'API incluent un document d'attestation PCR4 ou des mesures correspondant aux PCR7 mesures de référence que vous avez générées lors du processus de création de l'AMI attestable. Cela garantit que seules les demandes provenant d'instances lancées à l'aide de l'AMI attestable peuvent effectuer des opérations cryptographiques à l'aide de la AWS KMS clé.
AWS KMS fournit kms:RecipientAttestation:PCR4 et kms:RecipientAttestation:PCR7 conditionne des clés qui vous permettent de créer des conditions basées sur des attestations pour les politiques clés KMS. Pour plus d'informations, consultez les clés de AWS KMS condition pour AWS Nitro Enclaves et NitroTPM.
Par exemple, la politique de AWS KMS clé suivante autorise l'accès aux clés uniquement si la demande provient d'une instance à laquelle le profil d'MyEC2InstanceRoleinstance est attaché, et si la demande inclut un document d'attestation avec des valeurs PCR 4 et PCR 7 spécifiques.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow requests from instances with attested AMI only", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyEC2InstanceRole" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:GenerateRandom" ], "Resource": "*", "Condition": { "StringEqualsIgnoreCase": { "kms:RecipientAttestation:PCR4":"EXAMPLE6b9b3d89a53b13f5dfd14a1049ec0b80a9ae4b159adde479e9f7f512f33e835a0b9023ca51ada02160EXAMPLE", "kms:RecipientAttestation:PCR7":"EXAMPLE34a884328944cd806127c7784677ab60a154249fd21546a217299ccfa1ebfe4fa96a163bf41d3bcfaeEXAMPLE" } } } ] }
Pour plus d'informations, consultez la section Clés de AWS KMS condition pour NitroTPM.