Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS KMS Bedingungsschlüssel für AWS Nitro Enclaves
AWS Nitro Enclaves ist eine EC2 Amazon-Funktion, mit der Sie isolierte Computerumgebungen, sogenannte Enklaven, erstellen können, um hochsensible Daten zu schützen und zu verarbeiten. AWS KMS bietet Bedingungsschlüssel zur Unterstützung von Nitro Enclaves. AWS Diese Bedingungsschlüssel gelten nur für Anfragen nach einer AWS KMS Nitro-Enklave.
Wenn Sie die Decrypt -,, DeriveSharedSecretGenerateDataKeyGenerateDataKeyPair, oder GenerateRandomAPI-Operationen mit dem signierten Beglaubigungsdokument aus einer Enklave aufrufen, APIs verschlüsseln diese den Klartext in der Antwort unter dem öffentlichen Schlüssel aus dem Beglaubigungsdokument und geben Chiffretext statt Klartext zurück. Dieser Geheimtext kann nur mit dem privaten Schlüssel in der Enklave entschlüsselt werden. Weitere Informationen finden Sie unter Kryptografische Bescheinigung für Nitro-Enklaven AWS.
Anmerkung
Wenn Sie bei der Erstellung eines Schlüssels keine Schlüsselrichtlinie angeben, erstellt er eine für Sie. AWS KMS AWS Diese Standard-Schlüsselrichtlinie gewährt denjenigen AWS-Konten , denen der KMS-Schlüssel gehört, vollen Zugriff auf den Schlüssel und ermöglicht es dem Konto, IAM-Richtlinien zu verwenden, um den Zugriff auf den Schlüssel zu ermöglichen. Diese Richtlinie ermöglicht alle Aktionen wie Decrypt. AWS
empfiehlt, Principal of Berechtigungen mit den geringsten Rechten auf Ihre KMS-Schlüsselrichtlinien anzuwenden. Sie können den Zugriff auch einschränken, indem Sie die Aktion der KMS-Schlüsselrichtlinie für kms:* to ändernNotAction:kms:Decrypt
.
Mit den folgenden Bedingungsschlüsseln können Sie die Berechtigungen für diese Operationen anhand des Inhalts des signierten Bescheinigungsdokuments einschränken. Bevor Sie einen Vorgang zulassen, wird das Bescheinigungsdokument aus der Enklave mit den Werten in diesen AWS KMS Bedingungsschlüsseln AWS KMS verglichen.
km: 384 RecipientAttestation ImageSha
AWS KMS Zustandsschlüssel | Bedingungstyp | Werttyp | API-Operationen | Richtlinientyp |
---|---|---|---|---|
|
String |
Einzelwertig |
|
Schlüsselrichtlinien und IAM-Richtlinien |
Der kms:RecipientAttestation:ImageSha384
Bedingungsschlüssel steuert den Zugriff auf Decrypt
DeriveSharedSecret
,GenerateDataKey
,GenerateDataKeyPair
, und GenerateRandom
mit einem KMS-Schlüssel, wenn der Bildauszug aus dem signierten Bestätigungsdokument in der Anforderung mit dem Wert im Bedingungsschlüssel übereinstimmt. Der ImageSha384
-Wert entspricht PCR0 im Bescheinigungsdokument. Dieser Bedingungsschlüssel ist nur wirksam, wenn der Recipient
Parameter in der Anforderung ein signiertes Bestätigungsdokument für eine Nitro-Enklave angibt. AWS
Dieser Wert ist auch in CloudTrailEreignissen für Anfragen an Nitro-Enklaven enthalten. AWS KMS
Die folgende wichtige Richtlinienanweisung ermöglicht es der data-processing
Rolle beispielsweise, den KMS-Schlüssel für Decrypt -,, DeriveSharedSecretGenerateDataKey, GenerateDataKeyPair- und -Operationen zu verwenden. GenerateRandom Der Bedingungsschlüssel kms:RecipientAttestation:ImageSha384
erlaubt die Operationen nur, wenn der Bild-Digest-Wert (PCR0) des Bescheinigungsdokuments in der Anforderung mit dem Bild-Digest-Wert in der Bedingung übereinstimmt. Dieser Bedingungsschlüssel ist nur wirksam, wenn der Recipient
Parameter in der Anforderung ein signiertes Bestätigungsdokument für eine AWS Nitro-Enklave angibt.
Wenn die Anfrage kein gültiges Bescheinigungsdokument aus einer AWS Nitro-Enklave enthält, wird die Genehmigung verweigert, da diese Bedingung nicht erfüllt ist.
{ "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" } } }
RecipientAttestationkm: :PCR <PCR_ID>
AWS KMS Zustandsschlüssel | Bedingungstyp | Werttyp | API-Operationen | Richtlinientyp |
---|---|---|---|---|
|
String |
Einzelwertig |
|
Schlüsselrichtlinien und IAM-Richtlinien |
Der kms:RecipientAttestation:PCR<PCR_ID>
Bedingungsschlüssel steuert den Zugriff auf Decrypt
DeriveSharedSecret
,GenerateDataKey
,GenerateDataKeyPair
, und GenerateRandom
mit einem KMS-Schlüssel nur, wenn die Registrierung (PCRs) der Plattformkonfiguration aus dem signierten Bestätigungsdokument in der Anfrage mit denen PCRs im Bedingungsschlüssel übereinstimmt. Dieser Bedingungsschlüssel ist nur wirksam, wenn der Recipient
Parameter in der Anfrage ein signiertes Bestätigungsdokument aus einer Nitro-Enklave angibt. AWS
Dieser Wert ist auch in CloudTrailEreignissen enthalten, die Anfragen an Nitro-Enklaven darstellen. AWS KMS
Verwenden Sie das folgende Format, um einen PCR-Wert anzugeben. Verketten Sie die PCR-ID mit dem Bedingungsschlüssel-Namen. Sie können eine PCR-ID angeben, die eine der sechs Enklavenmessungen identifiziert, oder eine benutzerdefinierte PCR-ID, die Sie für einen bestimmten Anwendungsfall definiert haben. Der PCR-Wert muss eine Hexadezimalzeichenfolge in Kleinbuchstaben von bis zu 96 Bytes sein.
"kms:RecipientAttestation:PCR
PCR_ID
": "PCR_value
"
Der folgende Bedingungsschlüssel gibt beispielsweise einen bestimmten Wert für an PCR1, der dem Hash des Kernels entspricht, der für die Enklave und den Bootstrap-Prozess verwendet wird.
kms:RecipientAttestation:PCR1: "0x1abcdef2abcdef3abcdef4abcdef5abcdef6abcdef7abcdef8abcdef9abcdef8abcdef7abcdef6abcdef5abcdef4abcdef3abcdef2abcdef1abcdef0abcde"
Die folgende Beispiel-Schlüsselrichtlinienanweisung erlaubt es derdata-processing
-Rolle, den KMS-Schlüssel für die Operation Decrypt zu verwenden.
Der kms:RecipientAttestation:PCR
Bedingungsschlüssel in dieser Anweisung lässt den Vorgang nur zu, wenn der PCR1 Wert im signierten Bestätigungsdokument in der Anforderung mit dem kms:RecipientAttestation:PCR1
Wert in der Bedingung übereinstimmt. Verwenden des StringEqualsIgnoreCase
-Richtlinienoperators, um einen Vergleich der PCR-Werte ohne Berücksichtigung der Groß-/Kleinschreibung zu erfordern.
Wenn die Anforderung kein Bescheinigungsdokument enthält, wird die Berechtigung verweigert, da diese Bedingung nicht erfüllt ist.
{ "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": "0x1de4f2dcf774f6e3b679f62e5f120065b2e408dcea327bd1c9dddaea6664e7af7935581474844767453082c6f1586116376cede396a30a39a611b9aad7966c87" } } }