Erstellen asymmetrischer KMS-Schlüssel - AWS Key Management Service

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.

Erstellen asymmetrischer KMS-Schlüssel

Sie können asymmetrische KMS-Schlüssel in der AWS KMS Konsole, mithilfe der CreateKeyAPI oder mithilfe einer AWS CloudFormation Vorlage erstellen. Ein asymmetrischer KMS-Schlüssel stellt ein öffentliches und privates key pair dar, das zum Verschlüsseln, Signieren oder Ableiten gemeinsamer Geheimnisse verwendet werden kann. Der private Schlüssel verbleibt drinnen. AWS KMS Informationen zum Herunterladen des öffentlichen Schlüssels für die Verwendung außerhalb von AWS KMS finden Sie unterHerunterladen öffentlicher Schlüssel.

Verwenden Sie beim Erstellen eines KMS-Schlüssels zur Verschlüsselung von Daten, die Sie in einem AWS Dienst speichern oder verwalten, einen KMS-Schlüssel mit symmetrischer Verschlüsselung. AWS Dienste, die in integriert sind, unterstützen AWS KMS keine asymmetrischen KMS-Schlüssel. Hilfe bei der Entscheidung, ob ein symmetrischer oder asymmetrischer KMS-Schlüssel erstellt werden soll, finden Sie unter Auswahl eines KMS-Schlüsseltyps.

Weitere Informationen über die Berechtigungen, die zum Erstellen von KMS-Schlüsseln erforderlich sind, finden Sie unter Berechtigungen zum Erstellen von KMS-Schlüsseln.

Erstellen asymmetrischer KMS-Schlüssel (Konsole)

Sie können den verwenden AWS Management Console , um asymmetrische AWS KMS keys (KMS-Schlüssel) zu erstellen. Jeder asymmetrische KMS-Schlüssel repräsentiert ein Schlüsselpaar aus einem öffentlichen und einem privaten Schlüssel.

Wichtig

Nehmen Sie keine vertraulichen oder sensiblen Informationen in den Alias, in der Beschreibung oder in den Tags auf. Diese Felder können in CloudTrail Protokollen und anderen Ausgaben als Klartext erscheinen.

  1. Melden Sie sich bei der AWS Key Management Service (AWS KMS) -Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/kms.

  2. Um das zu ändern AWS-Region, verwenden Sie die Regionsauswahl in der oberen rechten Ecke der Seite.

  3. Klicken Sie im Navigationsbereich auf Kundenverwaltete Schlüssel.

  4. Klicken Sie auf Create key.

  5. Um einen asymmetrischen KMS-Schlüssel zu erstellen, wählen Sie unter Key type (Schlüsseltyp) die Option Asymmetric (Asymmetrisch) aus.

    Informationen zum Erstellen eines KMS-Schlüssels mit symmetrischer Verschlüsselung in der AWS KMS Konsole finden Sie unter. Erstellen von KMS-Schlüsseln mit symmetrischer Verschlüsselung (Konsole)

  6. Um einen asymmetrischen KMS-Schlüssel für die Verschlüsselung öffentlicher Schlüssel zu erstellen, wählen Sie unter Key usage (Schlüsselnutzung) Encrypt and decrypt (Verschlüsseln und Entschlüsseln) aus. Um einen asymmetrischen KMS-Schlüssel zum Signieren von Nachrichten und zur Überprüfung von Signaturen zu erstellen, wählen Sie unter Key usage (Schlüsselnutzung) die Option Sign und verify (Signieren und Überprüfen) aus. Um einen asymmetrischen KMS-Schlüssel für die Ableitung gemeinsamer geheimer Schlüssel zu erstellen, wählen Sie unter Schlüsselverwendung die Option Schlüsselvereinbarung aus.

    Hilfe bei der Auswahl eines Schlüsselnutzungswerts finden Sie unter Auswählen der Schlüsselnutzung.

  7. Wählen Sie eine Spezifikation (Key spec (Schlüsselspezifikation)) für Ihren asymmetrischen KMS-Schlüssel aus.

    Häufig wird die von Ihnen ausgewählte Schlüsselspezifikation durch gesetzliche, Sicherheits- oder geschäftliche Anforderungen bestimmt. Sie kann auch von der Größe der Nachrichten beeinflusst werden, die Sie verschlüsseln oder signieren müssen. Im Allgemeinen sind längere Verschlüsselungsschlüssel Brute-Force-Angriffen gegenüber weniger anfällig.

    Hilfe bei der Auswahl einer Schlüsselspezifikation finden Sie unter Auswählen der Schlüsselspezifikation.

  8. Wählen Sie Next (Weiter).

  9. Geben Sie einen Alias für den KMS-Schlüssel ein. Der Aliasname darf nicht mit aws/ beginnen. Das aws/ Präfix ist von Amazon Web Services reserviert, um es Von AWS verwaltete Schlüssel in Ihrem Konto darzustellen.

    Ein Alias ist ein benutzerfreundlicher Name, mit dem Sie den KMS-Schlüssel in der Konsole und in einigen AWS KMS APIs identifizieren können. Wir empfehlen, dass Sie einen Alias wählen, der auf die Art von Daten, die Sie schützen möchten, oder die Anwendung, die Sie mit dem KMS-Schlüssel verwenden möchten, hindeutet.

    Zum Erstellen eines KMS-Schlüssels in der Konsole benötigen Sie Aliase AWS Management Console. Sie können keinen Alias angeben, wenn Sie den CreateKeyVorgang verwenden, aber Sie können die Konsole oder den CreateAliasVorgang verwenden, um einen Alias für einen vorhandenen KMS-Schlüssel zu erstellen. Details hierzu finden Sie unter Verwenden von Aliassen.

  10. (Optional) Geben Sie eine Beschreibung für den KMS-Schlüssel ein.

    Geben Sie eine Beschreibung ein, die die Art von Daten, die Sie schützen möchten, oder die Anwendung, die Sie mit dem KMS-Schlüssel verwenden möchten, erklärt.

    Sie können jetzt eine Beschreibung hinzufügen oder sie jederzeit aktualisieren, es sei denn, der Schlüsselstatus lautet Pending Deletion oder Pending Replica Deletion. Um die Beschreibung eines vorhandenen kundenverwalteten Schlüssels hinzuzufügen, zu ändern oder zu löschen, bearbeiten Sie die Beschreibung im AWS Management Console oder verwenden Sie den UpdateKeyDescriptionVorgang.

  11. (Optional) Geben Sie einen Tag-Schlüssel und einen optionalen Tag-Wert ein. Wählen Sie Add tag (Tag hinzufügen), wenn Sie mehr als ein Tag zum KMS-Schlüssel hinzufügen möchten.

    Wenn Sie Ihren AWS Ressourcen Tags hinzufügen, AWS wird ein Kostenverteilungsbericht generiert, in dem die Nutzung und die Kosten nach Stichwörtern zusammengefasst sind. Markierungen können auch verwendet werden, um den Zugriff auf einen KMS-Schlüssel zu steuern. Weitere Informationen über das Markieren von KMS-Schlüsseln finden Sie unter Tagging von Schlüsseln und ABAC für AWS KMS.

  12. Wählen Sie Weiter aus.

  13. Wählen Sie die IAM-Benutzer und -Rollen aus, die den KMS-Schlüssel verwalten können.

    Anmerkung

    Diese Schlüsselrichtlinie ermöglicht die AWS-Konto vollständige Kontrolle über diesen KMS-Schlüssel. Kontoadministratoren können damit anderen Prinzipalen mithilfe von IAM-Richtlinien die Berechtigung zum Verwalten des KMS-Schlüssels erteilen. Details hierzu finden Sie unter Standardschlüsselrichtlinie.

    Bewährte IAM-Methoden raten von der Verwendung von IAM-Benutzern mit langfristigen Anmeldeinformationen ab. Verwenden Sie nach Möglichkeit IAM-Rollen, die temporäre Anmeldeinformationen bereitstellen. Weitere Informationen finden Sie unter Bewährte Methoden für die Sicherheit in IAM im IAM-Benutzerhandbuch.

  14. (Optional) Um zu verhindern, dass die ausgewählten IAM-Benutzer und -Rollen diesen KMS-Schlüssel löschen, deaktivieren Sie unten auf der Seite im Abschnitt Key deletion (Schlüssellöschung) das Kontrollkästchen Allow key administrators to delete this key (Administratoren erlauben, diesen Schlüssel zu löschen).

  15. Wählen Sie Weiter aus.

  16. Wählen Sie die IAM-Benutzer und -Rollen aus, die den KMS-Schlüssel für kryptographische Operationen verwenden können.

    Anmerkung

    Diese Schlüsselrichtlinie ermöglicht die AWS-Konto vollständige Kontrolle über diesen KMS-Schlüssel. Kontoadministratoren können damit anderen Prinzipalen mithilfe von IAM-Richtlinien die Berechtigung erteilen, den KMS-Schlüssel in kryptografischen Operationen zu verwenden. Details hierzu finden Sie unter Standardschlüsselrichtlinie.

    Bewährte IAM-Methoden raten von der Verwendung von IAM-Benutzern mit langfristigen Anmeldeinformationen ab. Verwenden Sie nach Möglichkeit IAM-Rollen, die temporäre Anmeldeinformationen bereitstellen. Weitere Informationen finden Sie unter Bewährte Methoden für die Sicherheit in IAM im IAM-Benutzerhandbuch.

  17. (Optional) Sie können anderen erlauben, diesen KMS-Schlüssel für kryptografische Operationen AWS-Konten zu verwenden. Wählen Sie dazu im Abschnitt Other AWS-Konten(Andere Konten) unten auf der Seite die Option Add another AWS-Konto(Weiteres Konto hinzufügen) und geben Sie die AWS-Konto -ID eines externen Kontos ein. Wiederholen Sie diesen Schritt, um weitere externe Konten hinzufügen.

    Anmerkung

    Um auch Prinzipalen aus den externen Konten Zugriff auf den KMS-Schlüssel zu erlauben, müssen die Administratoren der externen Konten IAM-Richtlinien erstellen, die diese Berechtigungen bereitstellen. Weitere Informationen finden Sie unter Benutzern in anderen Konten die Verwendung des KMS-Schlüssels erlauben.

  18. Wählen Sie Weiter.

  19. Überprüfen Sie die gewählten Einstellungen. Sie können immer noch zurückgehen und alle Einstellungen ändern.

  20. Wählen Sie Finish (fertigstellen) aus, um den KMS-Schlüssel zu erstellen.

Asymmetrische KMS-Schlüssel (API)AWS KMS erstellen

Sie können den CreateKeyVorgang verwenden, um eine asymmetrische AWS KMS key zu erstellen. Für diese Beispiele wird die AWS Command Line Interface (AWS CLI) verwendet. Sie können aber jede unterstützte Programmiersprache nutzen.

Wenn Sie einen asymmetrischen KMS-Schlüssel erstellen, müssen Sie den KeySpec-Parameter angeben, der den Typ der von Ihnen erstellten Schlüssel bestimmt. Außerdem müssen Sie den KeyUsage Wert ENCRYPT_DECRYPT, SIGN_VERIFY oder KEY_AGREEMENT angeben. Diese Eigenschaften können nicht geändert werden, nachdem der KMS-Schlüssel erstellt wurde.

Bei diesem CreateKey Vorgang können Sie keinen Alias angeben, aber Sie können den CreateAliasVorgang verwenden, um einen Alias für Ihren neuen KMS-Schlüssel zu erstellen.

Wichtig

Geben Sie keine vertraulichen oder sensiblen Informationen in die Felder Description oder Tags ein. Diese Felder können in CloudTrail Protokollen und anderen Ausgaben als Klartext erscheinen.

Im folgenden Beispiel wird die CreateKey-Produktion verwendet, um einen asymmetrischen KMS-Schlüssel von 4096-Bit-RSA-Schlüsseln für die Verschlüsselung öffentlicher Schlüssel zu erstellen.

$ aws kms create-key --key-spec RSA_4096 --key-usage ENCRYPT_DECRYPT { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "Description": "", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1569973196.214, "MultiRegion": false, "KeySpec": "RSA_4096", "CustomerMasterKeySpec": "RSA_4096", "KeyUsage": "ENCRYPT_DECRYPT", "EncryptionAlgorithms": [ "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ], "AWSAccountId": "111122223333", "Origin": "AWS_KMS", "Enabled": true } }

Mit dem folgenden Beispielbefehl wird ein asymmetrischer KMS-Schlüssel erstellt, der ein Paar von ECDSA-Schlüssel repräsentiert, das für Signatur und Verifizierung verwendet wird. Sie können kein Elliptic Curve-Schlüsselpaar für die Verschlüsselung und Entschlüsselung erstellen.

$ aws kms create-key --key-spec ECC_NIST_P521 --key-usage SIGN_VERIFY { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1570824817.837, "Origin": "AWS_KMS", "SigningAlgorithms": [ "ECDSA_SHA_512" ], "Arn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "AWSAccountId": "111122223333", "KeySpec": "ECC_NIST_P521", "CustomerMasterKeySpec": "ECC_NIST_P521", "KeyManager": "CUSTOMER", "Description": "", "Enabled": true, "MultiRegion": false, "KeyUsage": "SIGN_VERIFY" } }

Der folgende Beispielbefehl erstellt einen asymmetrischen KMS-Schlüssel, der ein Paar von ECDH-Schlüsseln darstellt, die zum Ableiten von gemeinsamen Geheimnissen verwendet werden. Sie können kein Elliptic Curve-Schlüsselpaar für die Verschlüsselung und Entschlüsselung erstellen.

$ aws kms create-key --key-spec ECC_NIST_P256 --key-usage KEY_AGREEMENT { "KeyMetadata": { "AWSAccountId": "111122223333", "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "Arn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": "2023-12-27T19:10:15.063000+00:00", "Enabled": true, "Description": "", "KeyUsage": "KEY_AGREEMENT", "KeyState": "Enabled", "Origin": "AWS_KMS", "KeyManager": "CUSTOMER", "CustomerMasterKeySpec": "ECC_NIST_P256", "KeySpec": "ECC_NIST_P256", "KeyAgreementAlgorithms": [ "ECDH" ], "MultiRegion": false } }