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.
Sie können AWS KMS keys in oder mithilfe des AWS Management ConsoleCreateKeyVorgangs oder der AWS::KMS::Key AWS CloudFormation Ressource erstellen. Während dieses Vorgangs legen Sie die Schlüsselrichtlinie für den KMS-Schlüssel fest, die Sie jederzeit ändern können. Sie wählen auch die folgenden Werte aus, die den Typ des KMS-Schlüssels definieren, den Sie erstellen. Diese Eigenschaften können nicht geändert werden, nachdem der KMS-Schlüssel erstellt wurde.
- KMS-Schlüsseltyp
-
Der Schlüsseltyp ist eine Eigenschaft, die bestimmt, welcher Typ von kryptografischem Schlüssel erstellt wird. AWS KMS bietet drei Schlüsseltypen zum Schutz von Daten:
-
Symmetrische Schlüssel des Advanced Encryption Standard (AES)
256-Bit-Schlüssel, die im Galois Counter Mode (GCM) -Modus von AES verwendet werden, um eine authentifizierte Verschlüsselung/Entschlüsselung von Daten mit einer Größe von weniger als 4 KB zu ermöglichen. Dies ist der gängigste Schlüsseltyp und wird verwendet, um andere Datenverschlüsselungsschlüssel zu schützen, die in Ihren Anwendungen verwendet werden, und damit Ihre Daten in Ihrem Namen zu verschlüsseln. AWS-Services
-
RSA, elliptische Kurve oder SM2 (nur Regionen China) asymmetrische Schlüssel
Diese Schlüssel sind in verschiedenen Größen erhältlich und unterstützen viele Algorithmen. Sie können je nach ausgewähltem Algorithmus zur Ver- und Entschlüsselung, zum Signieren und Überprüfen oder zum Ableiten von Operationen mit gemeinsamen Geheimnissen verwendet werden.
-
Symmetrische Schlüssel für die Durchführung von Hash-basierten HMAC-Vorgängen (Message Authentication Codes)
Bei diesen Schlüsseln handelt es sich um 256-Bit-Schlüssel, die für Signier- und Überprüfungsvorgänge verwendet werden.
KMS-Schlüssel können nicht im Klartext aus dem Dienst exportiert werden. Sie werden von den vom Dienst verwendeten Hardware-Sicherheitsmodulen (HSMs) generiert und können nur innerhalb dieser verwendet werden. Dies ist die grundlegende Sicherheitseigenschaft, mit der sichergestellt werden AWS KMS soll, dass Schlüssel nicht gefährdet werden.
-
- Verwendung von Schlüsseln
-
Die Schlüsselnutzung ist eine Eigenschaft, die bestimmt, welche kryptografischen Vorgänge der Schlüssel unterstützt. KMS-Schlüssel können eine Schlüsselverwendung von
ENCRYPT_DECRYPT
,SIGN_VERIFY
GENERATE_VERIFY_MAC
, oder habenKEY_AGREEMENT
. Jeder KMS-Schlüssel kann nur eine Schlüsselnutzung haben. Die Verwendung eines KMS-Schlüssels für mehr als eine Art von Operation macht das Produkt beider Operationen anfälliger gegenüber Angriffen. - Schlüsselspezifikation
-
Die Schlüsselspezifikation ist eine Eigenschaft, die die kryptografische Konfiguration des KMS-Schlüssels repräsentiert. Die Bedeutung der Schlüsselspezifikation unterscheidet sich vom Schlüsseltyp.
Bei KMS-Schlüsseln bestimmt die Schlüsselspezifikation, ob der KMS-Schlüssel symmetrisch oder asymmetrisch ist. Sie bestimmt auch die Art des Schlüsselmaterials und die unterstützten Algorithmen.
Die Standardschlüsselspezifikation, SYMMETRIC_DEFAULT, steht für einen symmetrischen 256-Bit-Verschlüsselungsschlüssel. Eine ausführliche Beschreibung aller unterstützten Schlüsselspezifikationen finden Sie unter. Referenz zu wichtigen Spezifikationen
- Herkunft der wichtigsten Materialien
-
Ursprung des Schlüsselmaterials ist eine KMS-Schlüssel-Eigenschaft, die die Quelle des Schlüsselmaterials im KMS-Schlüssel identifiziert. Sie wählen den Ursprung des Schlüsselmaterials, wenn Sie den KMS-Schlüssel erstellen. Danach kann er nicht mehr geändert werden. Die Quelle des Schlüsselmaterials wirkt sich auf die Sicherheit, Dauerhaftigkeit, Verfügbarkeit, Latenzzeit und Durchsatzmerkmale des KMS-Schlüssels aus.
Jeder KMS-Schlüssel enthält in seinen Metadaten einen Verweis auf sein Schlüsselmaterial. Die Herkunft des Schlüsselmaterials des KMS-Schlüssels mit symmetrischer Verschlüsselung kann variieren. Sie können Schlüsselmaterial verwenden, das AWS KMS generiert wird, Schlüsselmaterial, das in einem benutzerdefinierten Schlüsselspeicher generiert wurde, oder Ihr eigenes Schlüsselmaterial importieren.
Standardmäßig verfügt jeder KMS-Schlüssel über eindeutiges Schlüsselmaterial. Sie können jedoch eine Reihe von multiregionalen Schlüsseln mit demselben Schlüsselmaterial erstellen.
KMS-Schlüssel können einen der folgenden wichtigen Materialursprungswerte haben:
AWS_KMS
,EXTERNAL
(importiertes Schlüsselmaterial),AWS_CLOUDHSM
(AWS CloudHSM KMS-Schlüssel in einem Schlüsselspeicher) oderEXTERNAL_KEY_STORE
(KMS-Schlüssel in einem externen Schlüsselspeicher).
Themen
Wählen Sie aus, welche Art von KMS-Schlüssel erstellt werden soll
Erstellen Sie einen KMS-Schlüssel für die symmetrische Verschlüsselung
Erstellen Sie einen KMS-Schlüssel mit importiertem Schlüsselmaterial
Einen KMS-Schlüssel in einem AWS CloudHSM Schlüsselspeicher erstellen
Einen KMS-Schlüssel in externen Schlüsselspeichern erstellen
Berechtigungen zum Erstellen von KMS-Schlüsseln
Um einen KMS-Schlüssel in der Konsole oder mithilfe von zu erstellen APIs, benötigen Sie die folgenden Berechtigungen in einer IAM-Richtlinie. Wenn möglich, verwenden Sie Bedingungsschlüssel, um die Berechtigungen einzuschränken. Sie können beispielsweise den KeySpec Bedingungsschlüssel kms: in einer IAM-Richtlinie verwenden, um es Prinzipalen zu ermöglichen, nur symmetrische Verschlüsselungsschlüssel zu erstellen.
Ein Beispiel für eine IAM-Richtlinie für Prinzipale, die Schlüssel erstellen, finden Sie unter Einem Benutzer das Erstellen von KMS-Schlüsseln erlauben.
Anmerkung
Seien Sie vorsichtig, wenn Sie Prinzipalen die Berechtigung zum Verwalten von Tags und Aliasen erteilen. Wenn Sie einen Tag oder einen Alias ändern, wird dadurch die Berechtigung für den kundenverwalteten Schlüssel erteilt oder verweigert. Details hierzu finden Sie unter ABAC für AWS KMS.
-
kms: CreateKey ist erforderlich.
-
kms: CreateAlias ist erforderlich, um einen KMS-Schlüssel in der Konsole zu erstellen, wobei für jeden neuen KMS-Schlüssel ein Alias erforderlich ist.
-
kms: TagResource ist erforderlich, um beim Erstellen des KMS-Schlüssels Tags hinzuzufügen.
-
iam: CreateServiceLinkedRole ist erforderlich, um Primärschlüssel für mehrere Regionen zu erstellen. Details hierzu finden Sie unter Steuern Sie den Zugriff auf Schlüssel für mehrere Regionen.
Die kms: PutKeyPolicy -Berechtigung ist nicht erforderlich, um den KMS-Schlüssel zu erstellen. Die kms:CreateKey
-Berechtigung enthält die Berechtigung zum Festlegen der ursprünglichen Schlüsselrichtlinie. Sie müssen diese Berechtigung jedoch der Schlüsselrichtlinie hinzufügen, während Sie den KMS-Schlüssel erstellen, um sicherzustellen, dass Sie den Zugriff auf den KMS-Schlüssel steuern können. Die Alternative besteht darin, den BypassLockoutSafetyCheckParameter zu verwenden, was nicht empfohlen wird.
KMS-Schlüssel gehören zu dem AWS Konto, in dem sie erstellt wurden. Der IAM-Benutzer, der einen KMS-Schlüssel erstellt, gilt nicht als Schlüsselbesitzer und hat nicht automatisch die Berechtigung, den von ihm erstellten KMS-Schlüssel zu verwenden oder zu verwalten. Wie jeder andere Prinzipal muss der Schlüsselersteller eine Berechtigung über eine Schlüsselrichtlinie, IAM-Richtlinie oder Erteilung erhalten. Prinzipale, die die kms:CreateKey
-Berechtigung haben, können jedoch die ursprüngliche Schlüsselrichtlinie festlegen und sich selbst die Berechtigung zur Verwendung oder Verwaltung des Schlüssels erteilen.
Wählen Sie aus, welche Art von KMS-Schlüssel erstellt werden soll
Der Typ des KMS-Schlüssels, den Sie erstellen, hängt weitgehend davon ab, wie Sie den KMS-Schlüssel verwenden möchten, von Ihren Sicherheitsanforderungen und Ihren Autorisierungsanforderungen. Der Schlüsseltyp und die Schlüsselverwendung eines KMS-Schlüssels bestimmen, welche kryptografischen Operationen der Schlüssel ausführen kann. Jeder KMS-Schlüssel kann nur eine Schlüsselverwendung haben. Die Verwendung eines KMS-Schlüssels für mehr als eine Art von Operation macht das Produkt aller Operationen anfälliger gegenüber Angriffen.
Verwenden Sie den KeyUsage Bedingungsschlüssel kms:, damit Prinzipale KMS-Schlüssel nur für eine bestimmte Schlüsselverwendung erstellen können. Sie können mit dem Bedingungsschlüssel kms:KeyUsage
Prinzipalen auch, basierend auf seiner Schlüsselnutzung, den Aufruf von API-Operationen für einen KMS-Schlüssel gewähren. Beispielsweise können Sie die Berechtigung zum Deaktivieren eines KMS-Schlüssels nur dann zulassen, wenn die Schlüsselnutzung SIGN_VERIFY lautet.
Verwenden Sie die folgende Anleitung, um zu bestimmen, welchen Typ von KMS-Schlüssel Sie für Ihren Anwendungsfall benötigen.
- Verschlüsseln und Entschlüsseln von Daten
-
Verwenden Sie einen symmetrischen KMS-Schlüssel für die meisten Anwendungsfälle, bei denen Daten verschlüsselt und entschlüsselt werden müssen. Der symmetrische Verschlüsselungsalgorithmus, den AWS KMS verwendet, ist schnell, effizient und gewährleistet die Vertraulichkeit und Authentizität von Daten. Er unterstützt authentifizierte Verschlüsselung mit zusätzlichen authentifizierten Daten (AAD), die als Verschlüsselungskontext definiert sind. Bei dieser Art von KMS-Schlüssel müssen sowohl der Absender als auch der Empfänger verschlüsselter Daten über gültige AWS Anmeldeinformationen für den Anruf AWS KMS verfügen.
Wenn Ihr Anwendungsfall eine Verschlüsselung außerhalb AWS von Benutzern erfordert, die nicht anrufen können AWS KMS, sind asymmetrische KMS-Schlüssel eine gute Wahl. Sie können den öffentlichen Schlüssel des asymmetrischen KMS-Schlüssels verteilen, damit diese Benutzer Daten verschlüsseln können. Ihre Anwendungen, die diese Daten entschlüsseln müssen, können den privaten Schlüssel des asymmetrischen KMS-Schlüssels innerhalb von AWS KMS verwenden.
- Signieren von Nachrichten und Verifizieren von Signaturen
-
Um Nachrichten zu signieren und Signaturen zu überprüfen, müssen Sie einen asymmetrischen KMS-Schlüssel verwenden. Sie können einen KMS-Schlüssel mit einer Schlüsselspezifikation verwenden, die ein RSA-Schlüsselpaar, ein ECC-Schlüsselpaar (Elliptic Curve) oder ein SM2 key pair (nur China Regionen) darstellt. Die ausgewählte Schlüsselspezifikation wird durch den Signaturalgorithmus bestimmt, den Sie verwenden möchten. Die ECDSA-Signaturalgorithmen, die von ECC-Schlüsselpaaren unterstützt werden, sind den RSA-Signaturalgorithmen vorzuziehen. Möglicherweise müssen Sie jedoch eine bestimmte Schlüsselspezifikation und einen bestimmten Signaturalgorithmus verwenden, um Benutzer zu unterstützen, die Signaturen außerhalb von verifizieren. AWS
- Verschlüsseln Sie mit asymmetrischen Schlüsselpaaren
-
Um Daten mit einem asymmetrischen key pair zu verschlüsseln, müssen Sie einen asymmetrischen KMS-Schlüssel mit einer RSA-Schlüsselspezifikation oder einer SM2 Schlüsselspezifikation verwenden (nur Regionen China). Um Daten in AWS KMS mit dem öffentlichen Schlüssel eines KMS-Schlüsselpaars zu verschlüsseln, verwenden Sie die Encrypt-Operation. Sie können den öffentlichen Schlüssel auch herunterladen und ihn mit den Parteien teilen, die Daten außerhalb von verschlüsseln müssen. AWS KMS
Wenn Sie den öffentlichen Schlüssel eines asymmetrischen KMS-Schlüssels herunterladen, können Sie ihn außerhalb von AWS KMS verwenden. Er unterliegt jedoch nicht mehr den Sicherheitskontrollen, die den KMS-Schlüssel schützen. AWS KMS Sie können beispielsweise keine AWS KMS Schlüsselrichtlinien oder Zuschüsse verwenden, um die Verwendung des öffentlichen Schlüssels zu kontrollieren. Mit den AWS KMS unterstützten Verschlüsselungsalgorithmen können Sie auch nicht kontrollieren, ob der Schlüssel nur für die Verschlüsselung und Entschlüsselung verwendet wird. Weitere Informationen finden Sie unter Besondere Überlegungen zum Herunterladen öffentlicher Schlüssel.
Um Daten zu entschlüsseln, die mit dem öffentlichen Schlüssel außerhalb von verschlüsselt wurden AWS KMS, rufen Sie den Vorgang Decrypt auf. Der
Decrypt
Vorgang schlägt fehl, wenn die Daten unter einem öffentlichen Schlüssel aus einem KMS-Schlüssel mit der Schlüsselverwendung von verschlüsselt wurden.SIGN_VERIFY
Der Vorgang schlägt auch fehl, wenn er mit einem Algorithmus verschlüsselt wurde, der die von Ihnen gewählte Schlüsselspezifikation AWS KMS nicht unterstützt. Weitere Informationen zu wichtigen Spezifikationen und unterstützten Algorithmen finden Sie unterReferenz zu wichtigen Spezifikationen.Um diese Fehler zu vermeiden, AWS KMS muss jeder, der einen öffentlichen Schlüssel außerhalb von verwendet, die Schlüsselkonfiguration speichern. Die AWS KMS Konsole und die GetPublicKeyAntwort enthalten die Informationen, die Sie angeben müssen, wenn Sie den öffentlichen Schlüssel teilen.
- Leitet gemeinsame Geheimnisse ab
-
Verwenden Sie zum Ableiten gemeinsamer Geheimnisse einen KMS-Schlüssel mit von NIST empfohlenem elliptischem Kurvenmaterial oder SM2(nur Regionen China) Schlüsselmaterial. AWS KMS verwendet den Elliptic Curve Cryptography Cofactor Diffie-Hellman Primitive
(ECDH), um eine wichtige Vereinbarung zwischen zwei Peers herzustellen, indem ein gemeinsames Geheimnis aus ihren öffentlich-privaten Schlüsselpaaren mit elliptischer Kurve abgeleitet wird. Sie können den unverarbeiteten gemeinsamen geheimen Schlüssel, den der DeriveSharedSecretVorgang zurückgibt, verwenden, um einen symmetrischen Schlüssel abzuleiten, der Daten, die zwischen zwei Parteien gesendet werden, ver- und entschlüsseln oder generieren und verifizieren kann. HMACs AWS KMS empfiehlt, dass Sie die Empfehlungen von NIST zur Schlüsselableitung befolgen, wenn Sie das unformatierte gemeinsame geheime Geheimnis zur Ableitung eines symmetrischen Schlüssels verwenden. - Generieren und überprüfen von HMAC-Codes.
-
Verwenden Sie einen HMAC-KMS-Schlüssel, um Hash-basierte Nachrichtenauthentifizierungscodes zu generieren und zu überprüfen. Wenn Sie einen HMAC-Schlüssel erstellen AWS KMS, AWS KMS erstellt und schützt es Ihr Schlüsselmaterial und stellt sicher, dass Sie die richtigen MAC-Algorithmen für Ihren Schlüssel verwenden. HMAC-Codes können auch als Pseudozufallszahlen und in bestimmten Szenarien zum symmetrischen Signieren und Tokenisieren verwendet werden.
HMAC-KMS-Schlüssel sind symmetrische Schlüssel. Beim Erstellen eines HMAC-KMS-Schlüssels in der AWS KMS -Konsole wählen Sie den Schlüsseltyp
Symmetric
. - Zusammen mit AWS Diensten verwenden
-
Informationen zum Erstellen eines KMS-Schlüssels für die Verwendung mit einem AWS Dienst, der in integriert ist AWS KMS, finden Sie in der Dokumentation des Dienstes. AWS Dienste, die Ihre Daten verschlüsseln, benötigen einen symmetrischen KMS-Schlüssel.
Zusätzlich zu diesen Überlegungen haben kryptografische Operationen zu KMS-Schlüsseln mit unterschiedlichen Schlüsselspezifikationen unterschiedliche Preise und unterschiedliche Anforderungskontingente. Informationen zu AWS KMS
-Preisen erhalten Sie unter AWS Key Management Service Pricing