Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples
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 Beispiele mit AWS CLI
Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with Aktionen ausführen und allgemeine Szenarien implementieren AWS KMS.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen im Kontext der zugehörigen Szenarien sehen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt die Verwendungcancel-key-deletion
.
- AWS CLI
-
Um das geplante Löschen eines vom Kunden verwalteten KMS Schlüssels abzubrechen
Im folgenden
cancel-key-deletion
Beispiel wird das geplante Löschen eines vom Kunden verwalteten KMS Schlüssels storniert.aws kms cancel-key-deletion \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab" }
Wenn der
cancel-key-deletion
Befehl erfolgreich ist, wird das geplante Löschen abgebrochen. Der Schlüssel hat jedoch den KMS StatusDisabled
, dass Sie ihn nicht für kryptografische KMS Operationen verwenden können. Verwenden Sie denenable-key
Befehl, um die Funktionalität wiederherzustellen.Weitere Informationen finden Sie im Key Management Service Developer Guide unter Das Löschen von AWS Schlüsseln planen und abbrechen.
-
APIEinzelheiten finden Sie CancelKeyDeletion
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungconnect-custom-key-store
.
- AWS CLI
-
Um einen benutzerdefinierten Schlüsselspeicher zu verbinden
Im folgenden
connect-custom-key-store
Beispiel wird die Verbindung zum angegebenen benutzerdefinierten Schlüsselspeicher erneut hergestellt. Sie können einen Befehl wie diesen verwenden, um zum ersten Mal eine Verbindung zu einem benutzerdefinierten Schlüsselspeicher herzustellen oder um einen getrennten Schlüsselspeicher wieder zu verbinden.Sie können diesen Befehl verwenden, um eine Verbindung zu einem AWS HSM Cloud-Schlüsselspeicher oder einem externen Schlüsselspeicher herzustellen.
aws kms connect-custom-key-store \ --custom-key-store-id
cks-1234567890abcdef0
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie den Befehl, um zu überprüfen, ob der
describe-custom-key-stores
Befehl wirksam war.Informationen zum Herstellen einer Verbindung mit einem AWS HSM Cloud-Schlüsselspeicher finden Sie unter Verbinden und Trennen einer Verbindung zu einem AWS HSM Cloud-Schlüsselspeicher im AWS Key Management Service Developer Guide.
Informationen zum Verbinden eines externen Schlüsselspeichers finden Sie unter Verbinden und Trennen eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ConnectCustomKeyStore
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-alias
.
- AWS CLI
-
Um einen Alias für einen KMS Schlüssel zu erstellen
Der folgende
create-alias
Befehl erstellt einen Alias, derexample-alias
nach dem KMS Schlüssel benannt ist, der durch die Schlüssel-ID identifiziert wird1234abcd-12ab-34cd-56ef-1234567890ab
.Aliasnamen müssen mit beginnen
alias/
. Verwenden Sie keine Aliasnamen, die mitalias/aws
beginnen. Diese sind für die Verwendung durch reserviert AWS.aws kms create-alias \ --alias-name
alias/example-alias
\ --target-key-id1234abcd-12ab-34cd-56ef-1234567890ab
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie den
list-aliases
Befehl, um den neuen Alias zu sehen.Weitere Informationen finden Sie unter Verwenden von Aliasen im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie CreateAlias
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-custom-key-store
.
- AWS CLI
-
Beispiel 1: Um einen AWS HSM Cloud-Schlüsselspeicher zu erstellen
Im folgenden
create-custom-key-store
Beispiel wird mithilfe der erforderlichen Parameter ein AWS HSM Cloud-Schlüsselspeicher erstellt, der von einem AWS HSM Cloud-Cluster unterstützt wird. Sie können auch die hinzufügencustom-key-store-type``parameter with the default value: ``AWS_CLOUDHSM
.Um die Dateieingabe für den
trust-anchor-certificate
Befehl in der anzugeben AWS CLI, ist dasfile://
Präfix erforderlich.aws kms create-custom-key-store \ --custom-key-store-name
ExampleCloudHSMKeyStore
\ --cloud-hsm-cluster-idcluster-1a23b4cdefg
\ --key-store-passwordkmsPswd
\ --trust-anchor-certificatefile://customerCA.crt
Ausgabe:
{ "CustomKeyStoreId": cks-1234567890abcdef0 }
Weitere Informationen finden Sie unter Erstellen eines AWS HSM Cloud-Schlüsselspeichers im AWS Key Management Service Developer Guide.
Beispiel 2: So erstellen Sie einen externen Schlüsselspeicher mit öffentlicher Endpunktkonnektivität
Im folgenden
create-custom-key-store
Beispiel wird ein externer Schlüsselspeicher (XKS) erstellt, mit dem AWS KMS über das Internet kommuniziert.In diesem Beispiel
XksProxyUriPath
verwendet der ein optionales Präfix vonexample-prefix
.NOTE: Wenn Sie AWS CLI Version 1.0 verwenden, führen Sie den folgenden Befehl aus, bevor Sie einen Parameter mit einem HTTP HTTPS OR-Wert angeben, z. B. den XksProxyUriEndpoint Parameter.
aws configure set
cli_follow_urlparam
false
Andernfalls ersetzt AWS CLI Version 1.0 den Parameterwert durch den Inhalt, der an dieser URI Adresse gefunden wurde.
aws kms create-custom-key-store \ --custom-key-store-name
ExamplePublicEndpointXKS
\ --custom-key-store-typeEXTERNAL_KEY_STORE
\ --xks-proxy-connectivityPUBLIC_ENDPOINT
\ --xks-proxy-uri-endpoint"https://myproxy.xks.example.com"
\ --xks-proxy-uri-path"/example-prefix/kms/xks/v1"
\ --xks-proxy-authentication-credential"AccessKeyId=ABCDE12345670EXAMPLE, RawSecretAccessKey=DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="
Ausgabe:
{ "CustomKeyStoreId": cks-2234567890abcdef0 }
Weitere Informationen finden Sie unter Erstellen eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
Beispiel 3: So erstellen Sie einen externen Schlüsselspeicher mit VPC Endpoint Service-Konnektivität
Das folgende
create-custom-key-store
Beispiel erstellt einen externen Schlüsselspeicher (XKS), mit dem ein VPC Amazon-Endpunktservice kommuniziert wird AWS KMS.NOTE: Wenn Sie AWS CLI Version 1.0 verwenden, führen Sie den folgenden Befehl aus, bevor Sie einen Parameter mit einem HTTP HTTPS OR-Wert angeben, z. B. den XksProxyUriEndpoint Parameter.
aws configure set
cli_follow_urlparam
false
Andernfalls ersetzt AWS CLI Version 1.0 den Parameterwert durch den Inhalt, der an dieser URI Adresse gefunden wurde.
aws kms create-custom-key-store \ --custom-key-store-name
ExampleVPCEndpointXKS
\ --custom-key-store-typeEXTERNAL_KEY_STORE
\ --xks-proxy-connectivityVPC_ENDPOINT_SERVICE
\ --xks-proxy-uri-endpoint"https://myproxy-private.xks.example.com"
\ --xks-proxy-uri-path"/kms/xks/v1"
\ --xks-proxy-vpc-endpoint-service-name"com.amazonaws.vpce.us-east-1.vpce-svc-example1"
\ --xks-proxy-authentication-credential"AccessKeyId=ABCDE12345670EXAMPLE, RawSecretAccessKey=DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="
Ausgabe:
{ "CustomKeyStoreId": cks-3234567890abcdef0 }
Weitere Informationen finden Sie unter Erstellen eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie CreateCustomKeyStore
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-grant
.
- AWS CLI
-
Um einen Zuschuss zu erstellen
Im folgenden
create-grant
Beispiel wird ein Grant erstellt, der es demexampleUser
Benutzer ermöglicht, dendecrypt
Befehl auf der1234abcd-12ab-34cd-56ef-1234567890ab
KMS Beispieltaste zu verwenden. Der ausscheidende Schulleiter ist dieadminRole
Rolle. Die Gewährung verwendet dieEncryptionContextSubset
Grant-Beschränkung, um diese Berechtigung nur dann zuzulassen, wenn der Verschlüsselungskontext in derdecrypt
Anforderung das"Department": "IT"
Schlüssel-Wert-Paar enthält.aws kms create-grant \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --grantee-principalarn:aws:iam::123456789012:user/exampleUser
\ --operationsDecrypt
\ --constraintsEncryptionContextSubset={Department=IT}
\ --retiring-principalarn:aws:iam::123456789012:role/adminRole
Ausgabe:
{ "GrantId": "1a2b3c4d2f5e69f440bae30eaec9570bb1fb7358824f9ddfa1aa5a0dab1a59b2", "GrantToken": "<grant token here>" }
Verwenden Sie den Befehl, um detaillierte Informationen zur Gewährung anzuzeigen.
list-grants
Weitere Informationen finden Sie unter Grants AWS KMS im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie CreateGrant
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-key
.
- AWS CLI
-
Beispiel 1: Um einen vom Kunden verwalteten KMS Schlüssel zu erstellen AWS KMS
Im folgenden
create-key
Beispiel wird ein symmetrischer KMS Verschlüsselungsschlüssel erstellt.Um den KMS Basisschlüssel, einen symmetrischen Verschlüsselungsschlüssel, zu erstellen, müssen Sie keine Parameter angeben. Die Standardwerte für diese Parameter erzeugen einen symmetrischen Verschlüsselungsschlüssel.
Da dieser Befehl keine Schlüsselrichtlinie angibt, erhält der KMS Schlüssel die Standardschlüsselrichtlinie für programmgesteuert erstellte Schlüssel. KMS Verwenden Sie den Befehl, um die Schlüsselrichtlinie anzuzeigen.
get-key-policy
Verwenden Sie denput-key-policy
Befehl, um die Schlüsselrichtlinie zu ändern.aws kms create-key
Der
create-key
Befehl gibt die Schlüsselmetadaten zurück, einschließlich der Schlüssel-ID und ARN des neuen KMS Schlüssels. Sie können diese Werte verwenden, um den KMS Schlüssel in anderen AWS KMS Operationen zu identifizieren. Die Ausgabe enthält die Tags nicht. Um die Tags für einen KMS Schlüssel anzuzeigen, verwenden Sie denlist-resource-tags command
.Ausgabe:
{ "KeyMetadata": { "AWSAccountId": "111122223333", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": "2017-07-05T14:04:55-07:00", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "Description": "", "Enabled": true, "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "SYMMETRIC_DEFAULT", "KeyState": "Enabled", "KeyUsage": "ENCRYPT_DECRYPT", "MultiRegion": false, "Origin": "AWS_KMS" "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ] } }
Hinweis:
create-key
Mit dem Befehl können Sie keinen Alias angeben. Um einen Alias für den neuen KMS Schlüssel zu erstellen, verwenden Sie dencreate-alias
Befehl.Weitere Informationen finden Sie im AWS Key Management Service Developer Guide unter Creating Keys.
Beispiel 2: So erstellen Sie einen asymmetrischen RSA KMS Schlüssel für die Verschlüsselung und Entschlüsselung
Im folgenden
create-key
Beispiel wird ein KMS Schlüssel erstellt, der ein asymmetrisches RSA key pair für die Verschlüsselung und Entschlüsselung enthält.aws kms create-key \ --key-spec
RSA_4096
\ --key-usageENCRYPT_DECRYPT
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "CreationDate": "2021-04-05T14:04:55-07:00", "CustomerMasterKeySpec": "RSA_4096", "Description": "", "Enabled": true, "EncryptionAlgorithms": [ "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ], "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "RSA_4096", "KeyState": "Enabled", "KeyUsage": "ENCRYPT_DECRYPT", "MultiRegion": false, "Origin": "AWS_KMS" } }
Weitere Informationen finden Sie unter Asymmetrische Schlüssel AWS KMS im AWS Key Management Service Developer Guide.
Beispiel 3: So erstellen Sie einen KMS Schlüssel mit asymmetrischer elliptischer Kurve zum Signieren und Überprüfen
Um einen asymmetrischen KMS Schlüssel zu erstellen, der ein key pair mit asymmetrischer elliptischer Kurve (ECC) zum Signieren und Überprüfen enthält. Der
--key-usage
Parameter ist erforderlich, obwohl er der einzig gültige Wert für SchlüsselSIGN_VERIFY
ist. ECC KMSaws kms create-key \ --key-spec
ECC_NIST_P521
\ --key-usageSIGN_VERIFY
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "CreationDate": "2019-12-02T07:48:55-07:00", "CustomerMasterKeySpec": "ECC_NIST_P521", "Description": "", "Enabled": true, "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "ECC_NIST_P521", "KeyState": "Enabled", "KeyUsage": "SIGN_VERIFY", "MultiRegion": false, "Origin": "AWS_KMS", "SigningAlgorithms": [ "ECDSA_SHA_512" ] } }
Weitere Informationen finden Sie unter Asymmetrische Schlüssel AWS KMS im AWS Key Management Service Developer Guide.
Beispiel 4: So erstellen Sie einen Schlüssel HMAC KMS
Das folgende
create-key
Beispiel erstellt einen 384-Bit-Schlüssel HMACKMS. DerGENERATE_VERIFY_MAC
Wert für den--key-usage
Parameter ist erforderlich, obwohl er der einzig gültige Wert für HMAC KMS Schlüssel ist.aws kms create-key \ --key-spec
HMAC_384
\ --key-usageGENERATE_VERIFY_MAC
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "CreationDate": "2022-04-05T14:04:55-07:00", "CustomerMasterKeySpec": "HMAC_384", "Description": "", "Enabled": true, "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "HMAC_384", "KeyState": "Enabled", "KeyUsage": "GENERATE_VERIFY_MAC", "MacAlgorithms": [ "HMAC_SHA_384" ], "MultiRegion": false, "Origin": "AWS_KMS" } }
Weitere Informationen finden Sie unter HMACKeys AWS KMS in im AWS Key Management Service Developer Guide.
Beispiel 4: So erstellen Sie einen KMS Primärschlüssel mit mehreren Regionen
Im folgenden
create-key
Beispiel wird ein primärer symmetrischer Verschlüsselungsschlüssel für mehrere Regionen erstellt. Da die Standardwerte für alle Parameter einen symmetrischen Verschlüsselungsschlüssel erzeugen, ist nur der--multi-region
Parameter für diesen Schlüssel erforderlich. KMS Um anzugeben AWS CLI, dass ein boolescher Parameter wahr ist, geben Sie in der einfach den Parameternamen an.aws kms create-key \ --multi-region
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab", "AWSAccountId": "111122223333", "CreationDate": "2021-09-02T016:15:21-09:00", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "Description": "", "Enabled": true, "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], "KeyId": "mrk-1234abcd12ab34cd56ef12345678990ab", "KeyManager": "CUSTOMER", "KeySpec": "SYMMETRIC_DEFAULT", "KeyState": "Enabled", "KeyUsage": "ENCRYPT_DECRYPT", "MultiRegion": true, "MultiRegionConfiguration": { "MultiRegionKeyType": "PRIMARY", "PrimaryKey": { "Arn": "arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab", "Region": "us-west-2" }, "ReplicaKeys": [] }, "Origin": "AWS_KMS" } }
Weitere Informationen finden Sie unter Asymmetrische Schlüssel AWS KMS im AWS Key Management Service Developer Guide.
Beispiel 5: So erstellen Sie einen KMS Schlüssel für importiertes Schlüsselmaterial
Im folgenden
create-key
Beispiel wird ein KMS Schlüssel ohne Schlüsselmaterial erstellt. Wenn der Vorgang abgeschlossen ist, können Sie Ihr eigenes Schlüsselmaterial in den KMS Schlüssel importieren. Um diesen KMS Schlüssel zu erstellen, setzen Sie den--origin
Parameter aufEXTERNAL
.aws kms create-key \ --origin
EXTERNAL
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "CreationDate": "2019-12-02T07:48:55-07:00", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "Description": "", "Enabled": false, "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "SYMMETRIC_DEFAULT", "KeyState": "PendingImport", "KeyUsage": "ENCRYPT_DECRYPT", "MultiRegion": false, "Origin": "EXTERNAL" } }
Weitere Informationen finden Sie unter Importieren von Schlüsselmaterial in AWS KMS Schlüsseln im AWS Key Management Service Developer Guide.
Beispiel 6: So erstellen Sie einen KMS Schlüssel in einem AWS HSM Cloud-Schlüsselspeicher
Das folgende
create-key
Beispiel erstellt einen KMS Schlüssel im angegebenen AWS HSM Cloud-Schlüsselspeicher. Der Vorgang erstellt den KMS Schlüssel und seine Metadaten AWS KMS sowie das Schlüsselmaterial im AWS HSM Cloud-Cluster, der dem benutzerdefinierten Schlüsselspeicher zugeordnet ist. Die Parameter--custom-key-store-id
und--origin
müssen angegeben werden.aws kms create-key \ --origin
AWS_CLOUDHSM
\ --custom-key-store-idcks-1234567890abcdef0
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "CloudHsmClusterId": "cluster-1a23b4cdefg", "CreationDate": "2019-12-02T07:48:55-07:00", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "CustomKeyStoreId": "cks-1234567890abcdef0", "Description": "", "Enabled": true, "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "SYMMETRIC_DEFAULT", "KeyState": "Enabled", "KeyUsage": "ENCRYPT_DECRYPT", "MultiRegion": false, "Origin": "AWS_CLOUDHSM" } }
Weitere Informationen finden Sie unter AWS HSMCloud-Schlüsselspeicher im AWS Key Management Service Developer Guide.
Beispiel 7: So erstellen Sie einen KMS Schlüssel in einem externen Schlüsselspeicher
Das folgende
create-key
Beispiel erstellt einen KMS Schlüssel im angegebenen externen Schlüsselspeicher. Die--xks-key-id
Parameter--custom-key-store-id
--origin
, und sind in diesem Befehl erforderlich.Der
--xks-key-id
Parameter gibt die ID eines vorhandenen symmetrischen Verschlüsselungsschlüssels in Ihrem externen Schlüsselmanager an. Dieser Schlüssel dient als externes Schlüsselmaterial für den Schlüssel. KMS Der Wert des--origin
Parameters muss sein. Der Parameter mussEXTERNAL_KEY_STORE
einen externen Schlüsselspeicher identifizieren, der mit seinem externencustom-key-store-id
Schlüsselspeicher-Proxy verbunden ist.aws kms create-key \ --origin EXTERNAL_KEY_STORE \ --custom-key-store-id cks-9876543210fedcba9 \ --xks-key-id bb8562717f809024
Ausgabe:
{ "KeyMetadata": { "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "CreationDate": "2022-12-02T07:48:55-07:00", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "CustomKeyStoreId": "cks-9876543210fedcba9", "Description": "", "Enabled": true, "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyManager": "CUSTOMER", "KeySpec": "SYMMETRIC_DEFAULT", "KeyState": "Enabled", "KeyUsage": "ENCRYPT_DECRYPT", "MultiRegion": false, "Origin": "EXTERNAL_KEY_STORE", "XksKeyConfiguration": { "Id": "bb8562717f809024" } } }
Weitere Informationen finden Sie unter Externe Schlüsselspeicher im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie CreateKey
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdecrypt
.
- AWS CLI
-
Beispiel 1: Um eine verschlüsselte Nachricht mit einem symmetrischen KMS Schlüssel zu entschlüsseln (Linux und macOS)
Das folgende
decrypt
Befehlsbeispiel zeigt die empfohlene Methode zum Entschlüsseln von Daten mit dem. AWS CLI Diese Version zeigt, wie Daten unter einem symmetrischen KMS Schlüssel entschlüsselt werden.Geben Sie den Geheimtext in einer Datei an. Verwenden Sie im Wert des
--ciphertext-blob
Parameters dasfileb://
Präfix, das angibt, die Daten aus einer Binärdatei CLI zu lesen. Wenn sich die Datei nicht im aktuellen Verzeichnis befindet, geben Sie den vollständigen Dateipfad ein. Weitere Informationen zum Lesen von AWS CLI Parameterwerten aus einer Datei finden Sie unter Loading AWS CLI parameters from a file < https://docs.aws.amazon.com/cli/ latest/userguide/cli - usage-parameters-file .html> im AWS Command Line Interface User Guide und Best Practices for Local File Parameters< https://aws.amazon.com/blogs/ developer/ best-practices-for-local -file-parameters/> im AWS Command Line Tool Blog .Geben Sie den KMS Schlüssel zum Entschlüsseln des Chiffretextes an. Der--key-id
Parameter ist bei der Entschlüsselung mit einem symmetrischen KMS Schlüssel nicht erforderlich. AWS KMSkann die Schlüssel-ID des KMS Schlüssels, der zur Verschlüsselung der Daten verwendet wurde, aus den Metadaten im Chiffretext abrufen. Es hat sich jedoch immer bewährt, den KMS Schlüssel anzugeben, den Sie verwenden. Diese Vorgehensweise stellt sicher, dass Sie den KMS Schlüssel verwenden, den Sie beabsichtigen, und verhindert, dass Sie versehentlich einen Chiffretext mit einem KMS Schlüssel entschlüsseln, dem Sie nicht vertrauen. Fordern Sie die Klartext-Ausgabe als Textwert an. Der--query
Parameter weist an, dass nur der Wert des Felds aus der Ausgabe abgerufen werden CLI soll.Plaintext
Der--output
Parameter gibt die Ausgabe als Text zurück. Base64-dekodiert den Klartext und speichert ihn in einer Datei. Im folgenden Beispiel wird der Wert desPlaintext
Parameters über die Pipeline (|) an das Base64-Hilfsprogramm übergeben, das ihn dekodiert. Anschließend leitet er die dekodierte Ausgabe in die Datei um (>).ExamplePlaintext
Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto.
aws kms decrypt \ --ciphertext-blob
fileb://ExampleEncryptedFile
\ --key-id1234abcd-12ab-34cd-56ef-1234567890ab
\ --outputtext
\ --queryPlaintext
|
base64
\ --decode>
ExamplePlaintextFile
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Die Ausgabe des
decrypt
Befehls wird base64-dekodiert und in einer Datei gespeichert.Weitere Informationen finden Sie unter Decrypt in der AWS Key Management Service-Referenz. API
Beispiel 2: So entschlüsseln Sie eine verschlüsselte Nachricht mit einem symmetrischen KMS Schlüssel (Windows-Eingabeaufforderung)
Das folgende Beispiel ist dasselbe wie das vorherige, außer dass es das
certutil
Hilfsprogramm zur Base64-Decodierung der Klartextdaten verwendet. Für dieses Verfahren sind zwei Befehle erforderlich, wie in den folgenden Beispielen gezeigt.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto.
aws kms decrypt
^
--ciphertext-blobfileb://ExampleEncryptedFile
^
--key-id1234abcd-12ab-34cd-56ef-1234567890ab
^
--outputtext
^
--queryPlaintext
>
ExamplePlaintextFile.base64
Führen Sie den Befehl
certutil
aus.certutil -decode ExamplePlaintextFile.base64 ExamplePlaintextFile
Ausgabe:
Input Length = 18 Output Length = 12 CertUtil: -decode command completed successfully.
Weitere Informationen finden Sie unter Decrypt in der AWS Key Management API Service-Referenz.
Beispiel 3: Um eine verschlüsselte Nachricht mit einem asymmetrischen KMS Schlüssel zu entschlüsseln (Linux und macOS)
Das folgende
decrypt
Befehlsbeispiel zeigt, wie Daten entschlüsselt werden, die mit einem RSA asymmetrischen Schlüssel verschlüsselt wurden. KMSBei Verwendung eines asymmetrischen KMS Schlüssels ist der
encryption-algorithm
Parameter erforderlich, der den Algorithmus angibt, der zur Verschlüsselung des Klartextes verwendet wird.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem Konto. AWS
aws kms decrypt \ --ciphertext-blob
fileb://ExampleEncryptedFile
\ --key-id0987dcba-09fe-87dc-65ba-ab0987654321
\ --encryption-algorithmRSAES_OAEP_SHA_256
\ --outputtext
\ --queryPlaintext
|
base64
\ --decode>
ExamplePlaintextFile
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Die Ausgabe des
decrypt
Befehls wird base64-dekodiert und in einer Datei gespeichert.Weitere Informationen finden Sie unter Asymmetrische Schlüssel AWS KMS im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie unter Decrypt
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdelete-alias
.
- AWS CLI
-
Um einen AWS KMS Alias zu löschen
Im folgenden
delete-alias
Beispiel wird der Aliasalias/example-alias
gelöscht. Der Aliasname muss mit alias/ beginnen.aws kms delete-alias \ --alias-name
alias/example-alias
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den Befehl, um den Alias zu finden.
list-aliases
Weitere Informationen finden Sie unter Löschen eines Alias im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie DeleteAlias
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdelete-custom-key-store
.
- AWS CLI
-
Um einen benutzerdefinierten Schlüsselspeicher zu löschen
Im folgenden
delete-custom-key-store
Beispiel wird der angegebene benutzerdefinierte Schlüsselspeicher gelöscht.Das Löschen eines AWS HSM Cloud-Schlüsselspeichers hat keine Auswirkungen auf den zugehörigen HSM Cloud-Cluster. Das Löschen eines externen Schlüsselspeichers hat keine Auswirkungen auf den zugehörigen externen Schlüsselspeicher-Proxy, den externen Schlüsselmanager oder die externen Schlüssel.
NOTE: Bevor Sie einen benutzerdefinierten Schlüsselspeicher löschen können, müssen Sie das Löschen aller KMS Schlüssel im benutzerdefinierten Schlüsselspeicher planen und dann warten, bis diese KMS Schlüssel gelöscht sind. Anschließend müssen Sie die Verbindung zum benutzerdefinierten Schlüsselspeicher trennen. Hilfe bei der Suche nach den KMS Schlüsseln in Ihrem benutzerdefinierten Schlüsselspeicher finden Sie unter Löschen eines AWS HSM Cloud-Schlüsselspeichers (API) im AWS Key Management Service Developer Guide.
delete-custom-key-store \ --custom-key-store-id cks-1234567890abcdef0
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie den
describe-custom-key-stores
Befehl, um zu überprüfen, ob der benutzerdefinierte Schlüsselspeicher gelöscht wurde.Informationen zum Löschen eines AWS HSM Cloud-Schlüsselspeichers finden Sie unter Löschen eines AWS HSM Cloud-Schlüsselspeichers im AWS Key Management Service Developer Guide.
Informationen zum Löschen externer Schlüsselspeicher finden Sie unter Löschen eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie DeleteCustomKeyStore
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdelete-imported-key-material
.
- AWS CLI
-
Um importiertes Schlüsselmaterial aus einem KMS Schlüssel zu löschen
Im folgenden
delete-imported-key-material
Beispiel wird Schlüsselmaterial gelöscht, das in einen KMS Schlüssel importiert wurde.aws kms delete-imported-key-material \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um zu überprüfen, ob das Schlüsselmaterial gelöscht wurde, verwenden Sie den
describe-key
Befehl, um nach dem SchlüsselstatusPendingImport
oderPendingDeletion
zu suchen.Weitere Informationen finden Sie unter Löschen von importiertem Schlüsselmaterial< https://docs.aws.amazon.com/kms/ latest/developerguide/importing - keys-delete-key-material .html> im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie DeleteImportedKeyMaterial
in AWS CLI der Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztderive-shared-secret
.
- AWS CLI
-
Um ein gemeinsames Geheimnis abzuleiten
Im folgenden
derive-shared-secret
Beispiel wird ein gemeinsamer geheimer Schlüssel mithilfe eines Schlüsselvereinbarungsalgorithmus abgeleitet.Sie müssen ein NIST asymmetrisches KMS key pair mit elliptischer Kurve (ECC) oder SM2 (nur Regionen China) mit dem
KeyUsage
Wert to call verwenden.KEY_AGREEMENT
DeriveSharedSecretaws kms derive-shared-secret \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --key-agreement-algorithmECDH
\ --public-key"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvH3Yj0wbkLEpUl95Cv1cJVjsVNSjwGq3tCLnzXfhVwVvmzGN8pYj3U8nKwgouaHbBWNJYjP5VutbbkKS4Kv4GojwZBJyHN17kmxo8yTjRmjR15SKIQ8cqRA2uaERMLnpztIXdZp232PQPbWGxDyXYJ0aJ5EFSag"
Ausgabe:
{ "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "SharedSecret": "MEYCIQCKZLWyTk5runarx6XiAkU9gv3lbwPO/pHa+DXFehzdDwIhANwpsIV2g/9SPWLLsF6p/hiSskuIXMTRwqrMdVKWTMHG", "KeyAgreementAlgorithm": "ECDH", "KeyOrigin": "AWS_KMS" }
Weitere Informationen finden Sie DeriveSharedSecretin der Referenz zum AWS Key Management Service. API
-
APIEinzelheiten finden Sie DeriveSharedSecret
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdescribe-custom-key-stores
.
- AWS CLI
-
Beispiel 1: Um Details zu einem AWS HSM Cloud-Schlüsselspeicher abzurufen
Im folgenden
describe-custom-key-store
Beispiel werden Details zum angegebenen AWS HSM Cloud-Schlüsselspeicher angezeigt. Der Befehl ist für alle Typen von benutzerdefinierten Schlüsselspeichern derselbe, aber die Ausgabe unterscheidet sich je nach Schlüsselspeichertyp und, bei einem externen Schlüsselspeicher, dessen Konnektivitätsoption.Standardmäßig zeigt dieser Befehl Informationen zu allen benutzerdefinierten Schlüsselspeichern im Konto und in der Region an. Verwenden Sie den
custom-key-store-id
Parametercustom-key-store-name
oder, um Informationen zu einem bestimmten benutzerdefinierten Schlüsselspeicher anzuzeigen.aws kms describe-custom-key-stores \ --custom-key-store-name
ExampleCloudHSMKeyStore
Die Ausgabe dieses Befehls enthält nützliche Informationen über den AWS HSM Cloud-Schlüsselspeicher, einschließlich seines Verbindungsstatus (
ConnectionState
). Wenn der Verbindungsstatus lautetFAILED
, enthält die Ausgabe einConnectionErrorCode
Feld, das das Problem beschreibt.Ausgabe:
{ "CustomKeyStores": [ { "CloudHsmClusterId": "cluster-1a23b4cdefg", "ConnectionState": "CONNECTED", "CreationDate": "2022-04-05T14:04:55-07:00", "CustomKeyStoreId": "cks-1234567890abcdef0", "CustomKeyStoreName": "ExampleExternalKeyStore", "TrustAnchorCertificate": "<certificate appears here>" } ] }
Weitere Informationen finden Sie unter AWS HSMCloud-Schlüsselspeicher anzeigen im AWS Key Management Service Developer Guide.
Beispiel 2: Um Details zu einem externen Schlüsselspeicher mit öffentlicher Endpunktkonnektivität abzurufen
Im folgenden
describe-custom-key-store
Beispiel werden Details zum angegebenen externen Schlüsselspeicher angezeigt. Der Befehl ist für alle Typen von benutzerdefinierten Schlüsselspeichern derselbe, aber die Ausgabe unterscheidet sich je nach Schlüsselspeichertyp und, bei einem externen Schlüsselspeicher, dessen Konnektivitätsoption.Standardmäßig zeigt dieser Befehl Informationen zu allen benutzerdefinierten Schlüsselspeichern im Konto und in der Region an. Verwenden Sie den
custom-key-store-id
Parametercustom-key-store-name
oder, um Informationen zu einem bestimmten benutzerdefinierten Schlüsselspeicher anzuzeigen.aws kms describe-custom-key-stores \ --custom-key-store-id
cks-9876543210fedcba9
Die Ausgabe dieses Befehls enthält nützliche Informationen über den externen Schlüsselspeicher, einschließlich seines Verbindungsstatus (
ConnectionState
). Wenn der Verbindungsstatus lautetFAILED
, enthält die Ausgabe einConnectionErrorCode
Feld, das das Problem beschreibt.Ausgabe:
{ "CustomKeyStores": [ { "CustomKeyStoreId": "cks-9876543210fedcba9", "CustomKeyStoreName": "ExampleXKS", "ConnectionState": "CONNECTED", "CreationDate": "2022-12-02T07:48:55-07:00", "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyConfiguration": { "AccessKeyId": "ABCDE12345670EXAMPLE", "Connectivity": "PUBLIC_ENDPOINT", "UriEndpoint": "https://myproxy.xks.example.com", "UriPath": "/example-prefix/kms/xks/v1" } } ] }
Weitere Informationen finden Sie unter Anzeigen eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
Beispiel 3: So rufen Sie Details zu einem externen Schlüsselspeicher mit VPC Endpoint Service-Konnektivität ab
Im folgenden
describe-custom-key-store
Beispiel werden Details zum angegebenen externen Schlüsselspeicher angezeigt. Der Befehl ist für alle Typen von benutzerdefinierten Schlüsselspeichern derselbe, aber die Ausgabe unterscheidet sich je nach Schlüsselspeichertyp und, bei einem externen Schlüsselspeicher, dessen Konnektivitätsoption.Standardmäßig zeigt dieser Befehl Informationen zu allen benutzerdefinierten Schlüsselspeichern im Konto und in der Region an. Verwenden Sie den
custom-key-store-id
Parametercustom-key-store-name
oder, um Informationen zu einem bestimmten benutzerdefinierten Schlüsselspeicher anzuzeigen.aws kms describe-custom-key-stores \ --custom-key-store-id
cks-2234567890abcdef0
Die Ausgabe dieses Befehls enthält nützliche Informationen über den externen Schlüsselspeicher, einschließlich seines Verbindungsstatus (
ConnectionState
). Wenn der Verbindungsstatus lautetFAILED
, enthält die Ausgabe einConnectionErrorCode
Feld, das das Problem beschreibt.Ausgabe:
{ "CustomKeyStores": [ { "CustomKeyStoreId": "cks-3234567890abcdef0", "CustomKeyStoreName": "ExampleVPCExternalKeyStore", "ConnectionState": "CONNECTED", "CreationDate": "2022-12-22T07:48:55-07:00", "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyConfiguration": { "AccessKeyId": "ABCDE12345670EXAMPLE", "Connectivity": "VPC_ENDPOINT_SERVICE", "UriEndpoint": "https://myproxy-private.xks.example.com", "UriPath": "/kms/xks/v1", "VpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example1" } } ] }
Weitere Informationen finden Sie unter Anzeigen eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie DescribeCustomKeyStores
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdescribe-key
.
- AWS CLI
-
Beispiel 1: Um detaillierte Informationen zu einem KMS Schlüssel zu finden
Im folgenden
describe-key
Beispiel werden detaillierte Informationen zum AWS verwalteten Schlüssel für Amazon S3 im Beispielkonto und in der Region abgerufen. Sie können diesen Befehl verwenden, um Details zu AWS verwalteten Schlüsseln und kundenverwalteten Schlüsseln zu finden.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird ein Aliasnamenwert verwendet, aber Sie können ARN in diesem Befehl eine Schlüssel-ID, einen SchlüsselARN, einen Aliasnamen oder einen Alias verwenden.aws kms describe-key \ --key-id
alias/aws/s3
Ausgabe:
{ "KeyMetadata": { "AWSAccountId": "846764612917", "KeyId": "b8a9477d-836c-491f-857e-07937918959b", "Arn": "arn:aws:kms:us-west-2:846764612917:key/b8a9477d-836c-491f-857e-07937918959b", "CreationDate": 2017-06-30T21:44:32.140000+00:00, "Enabled": true, "Description": "Default KMS key that protects my S3 objects when no other key is defined", "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "Origin": "AWS_KMS", "KeyManager": "AWS", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ] } }
Weitere Informationen finden Sie unter Schlüssel anzeigen im AWS Key Management Service Developer Guide.
Beispiel 2: Um Details zu einem RSA asymmetrischen KMS Schlüssel abzurufen
Im folgenden
describe-key
Beispiel werden detaillierte Informationen zu einem asymmetrischen RSA KMS Schlüssel abgerufen, der zum Signieren und Überprüfen verwendet wird.aws kms describe-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "KeyMetadata": { "AWSAccountId": "111122223333", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": "2019-12-02T19:47:14.861000+00:00", "CustomerMasterKeySpec": "RSA_2048", "Enabled": false, "Description": "", "KeyState": "Disabled", "Origin": "AWS_KMS", "MultiRegion": false, "KeyManager": "CUSTOMER", "KeySpec": "RSA_2048", "KeyUsage": "SIGN_VERIFY", "SigningAlgorithms": [ "RSASSA_PKCS1_V1_5_SHA_256", "RSASSA_PKCS1_V1_5_SHA_384", "RSASSA_PKCS1_V1_5_SHA_512", "RSASSA_PSS_SHA_256", "RSASSA_PSS_SHA_384", "RSASSA_PSS_SHA_512" ] } }
Beispiel 3: Um Details zu einem Replikatschlüssel für mehrere Regionen abzurufen
Im folgenden
describe-key
Beispiel werden Metadaten für einen Replikatschlüssel mit mehreren Regionen abgerufen. Dieser Schlüssel für mehrere Regionen ist ein symmetrischer Verschlüsselungsschlüssel. Die Ausgabe einesdescribe-key
Befehls für einen beliebigen Schlüssel mit mehreren Regionen gibt Informationen über den Primärschlüssel und alle zugehörigen Replikate zurück.aws kms describe-key \ --key-id
arn:aws:kms:ap-northeast-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab
Ausgabe:
{ "KeyMetadata": { "MultiRegion": true, "AWSAccountId": "111122223333", "Arn": "arn:aws:kms:ap-northeast-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab", "CreationDate": "2021-06-28T21:09:16.114000+00:00", "Description": "", "Enabled": true, "KeyId": "mrk-1234abcd12ab34cd56ef1234567890ab", "KeyManager": "CUSTOMER", "KeyState": "Enabled", "KeyUsage": "ENCRYPT_DECRYPT", "Origin": "AWS_KMS", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], "MultiRegionConfiguration": { "MultiRegionKeyType": "PRIMARY", "PrimaryKey": { "Arn": "arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab", "Region": "us-west-2" }, "ReplicaKeys": [ { "Arn": "arn:aws:kms:eu-west-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab", "Region": "eu-west-1" }, { "Arn": "arn:aws:kms:ap-northeast-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab", "Region": "ap-northeast-1" }, { "Arn": "arn:aws:kms:sa-east-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab", "Region": "sa-east-1" } ] } } }
Beispiel 4: Um Details zu einem Schlüssel abzurufen HMAC KMS
Im folgenden
describe-key
Beispiel werden detaillierte Informationen zu einem HMAC KMS Schlüssel abgerufen.aws kms describe-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "KeyMetadata": { "AWSAccountId": "123456789012", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Arn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": "2022-04-03T22:23:10.194000+00:00", "Enabled": true, "Description": "Test key", "KeyUsage": "GENERATE_VERIFY_MAC", "KeyState": "Enabled", "Origin": "AWS_KMS", "KeyManager": "CUSTOMER", "CustomerMasterKeySpec": "HMAC_256", "MacAlgorithms": [ "HMAC_SHA_256" ], "MultiRegion": false } }
-
APIEinzelheiten finden Sie DescribeKey
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdisable-key-rotation
.
- AWS CLI
-
Um die automatische Drehung eines KMS Schlüssels zu deaktivieren
Im folgenden
disable-key-rotation
Beispiel wird die automatische Rotation eines vom Kunden verwalteten KMS Schlüssels deaktiviert. Verwenden Sie den Befehl, um die automatische Rotation wieder zu aktivieren.enable-key-rotation
aws kms disable-key-rotation \ --key-id
arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
get-key-rotation-status
Befehl, um zu überprüfen, ob die automatische Drehung für den KMS Schlüssel deaktiviert ist.Weitere Informationen finden Sie unter Rotieren von Schlüsseln im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie DisableKeyRotation
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdisable-key
.
- AWS CLI
-
Um einen KMS Schlüssel vorübergehend zu deaktivieren
Im folgenden Beispiel wird der
disable-key
Befehl verwendet, um einen vom Kunden verwalteten KMS Schlüssel zu deaktivieren. Verwenden Sie denenable-key
Befehl, um den KMS Schlüssel wieder zu aktivieren.aws kms disable-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Enabling and Disabling Keys im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie unter DisableKey AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztdisconnect-custom-key-store
.
- AWS CLI
-
Um die Verbindung zu einem benutzerdefinierten Schlüsselspeicher zu trennen
Im folgenden
disconnect-custom-key-store
Beispiel wird die Verbindung eines benutzerdefinierten Schlüsselspeichers von seinem AWS HSM Cloud-Cluster getrennt. Sie können die Verbindung zu einem Schlüsselspeicher trennen, um ein Problem zu beheben, seine Einstellungen zu aktualisieren oder um zu verhindern, dass KMS Schlüssel im Schlüsselspeicher für kryptografische Operationen verwendet werden.Dieser Befehl ist für alle benutzerdefinierten Schlüsselspeicher, einschließlich AWS Cloud-Schlüsselspeicher und externer HSM Schlüsselspeicher, derselbe.
Vor der Ausführung dieses Befehls müssen Sie die Beispiel-ID des benutzerdefinierten Schlüsselspeichers durch eine gültige ID ersetzen.
$ aws kms disconnect-custom-key-store \ --custom-key-store-id cks-1234567890abcdef0
Dieser Befehl erzeugt keine Ausgabe. Vergewissern Sie sich, dass der Befehl wirksam war, und verwenden Sie den
describe-custom-key-stores
Befehl.Weitere Informationen zum Trennen der Verbindung mit einem AWS HSM Cloud-Schlüsselspeicher finden Sie unter Einen AWS HSM Cloud-Schlüsselspeicher verbinden und trennen im AWS Key Management Service Developer Guide.
Weitere Informationen zum Trennen eines externen Schlüsselspeichers finden Sie unter Einen externen Schlüsselspeicher verbinden und trennen im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie unter DisconnectCustomKeyStore AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztenable-key-rotation
.
- AWS CLI
-
Um die automatische Rotation eines KMS Schlüssels zu aktivieren
Das folgende
enable-key-rotation
Beispiel ermöglicht die automatische Rotation eines vom Kunden verwalteten KMS Schlüssels mit einem Rotationszeitraum von 180 Tagen. Der KMS Schlüssel wird ab dem Datum, an dem dieser Befehl abgeschlossen wurde, ein Jahr (ungefähr 365 Tage) rotiert, und danach jedes Jahr.Der
--key-id
Parameter identifiziert den KMS Schlüssel. In diesem Beispiel wird ein ARN Schlüsselwert verwendet, Sie können jedoch entweder die Schlüssel-ID oder die ARN des Schlüssels verwenden. KMS Der--rotation-period-in-days
Parameter gibt die Anzahl der Tage zwischen den einzelnen Rotationsdaten an. Geben Sie einen Wert zwischen 90 und 2560 Tagen an. Wenn kein Wert angegeben ist, beträgt der Standardwert 365 Tage.aws kms enable-key-rotation \ --key-id
arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
\ --rotation-period-in-days180
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
get-key-rotation-status
Befehl, um zu überprüfen, ob der KMS Schlüssel aktiviert ist.Weitere Informationen finden Sie unter Rotieren von Schlüsseln im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie EnableKeyRotation
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztenable-key
.
- AWS CLI
-
Um einen KMS Schlüssel zu aktivieren
Das folgende
enable-key
Beispiel aktiviert einen vom Kunden verwalteten Schlüssel. Sie können einen Befehl wie diesen verwenden, um eine KMS Taste zu aktivieren, die Sie mit demdisable-key
Befehl vorübergehend deaktiviert haben. Sie können ihn auch verwenden, um einen KMS Schlüssel zu aktivieren, der deaktiviert ist, weil für ihn ein Löschvorgang geplant war und der Löschvorgang abgebrochen wurde.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, aber Sie können in diesem Befehl auch eine Schlüssel-ID oder ARN einen Schlüsselwert verwenden.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige.
aws kms enable-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
describe-key
Befehl, um zu überprüfen, ob der KMS Schlüssel aktiviert ist. Sehen Sie sich die Werte derEnabled
FelderKeyState
und in derdescribe-key
Ausgabe an.Weitere Informationen finden Sie unter Enabling and Disabling Keys im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie unter EnableKey AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztencrypt
.
- AWS CLI
-
Beispiel 1: Um den Inhalt einer Datei unter Linux oder macOS zu verschlüsseln
Der folgende
encrypt
Befehl demonstriert die empfohlene Methode zum Verschlüsseln von Daten mit dem. AWS CLIaws kms encrypt \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --plaintextfileb://ExamplePlaintextFile
\ --outputtext
\ --queryCiphertextBlob
|
base64
\ --decode>
ExampleEncryptedFile
Der Befehl macht mehrere Dinge:
Verwendet den
--plaintext
Parameter, um die zu verschlüsselnden Daten anzugeben. Dieser Parameterwert muss Base64-kodiert sein. Der Wert desplaintext
Parameters muss Base64-kodiert sein, oder Sie müssen dasfileb://
Präfix verwenden, das den mitteilt, Binärdaten aus der Datei AWS CLI zu lesen. Wenn sich die Datei nicht im aktuellen Verzeichnis befindet, geben Sie den vollständigen Dateipfad ein. Beispiel:fileb:///var/tmp/ExamplePlaintextFile
oderfileb://C:\Temp\ExamplePlaintextFile
. Weitere Informationen zum Lesen von AWS CLI Parameterwerten aus einer Datei finden Sie unter Laden von Parametern aus einer Datei im Benutzerhandbuch für die AWS Befehlszeilenschnittstelle und Best Practices für lokale Dateiparameterim Blog des AWS Befehlszeilentools. Verwendet die --query
Parameter--output
und, um die Befehlsausgabe zu steuern.Diese Parameter extrahieren die verschlüsselten Daten, den so genannten Chiffretext, aus der Befehlsausgabe. Weitere Informationen zur Steuerung der Ausgabe finden Sie unter Steuern Befehlsausgabe im Benutzerhandbuch für die AWS Befehlszeilenschnittstelle. Verwendet dasbase64
Hilfsprogramm, um die extrahierte Ausgabe in Binärdaten zu dekodieren. Der Chiffretext, der von einem erfolgreichenencrypt
Befehl zurückgegeben wird, ist Base64-codierter Text. Sie müssen diesen Text dekodieren, bevor Sie ihn mit dem entschlüsseln können.Speichert den AWS CLI binären Chiffretext in einer Datei.Der letzte Teil des Befehls () speichert den binären Chiffretext in einer Datei, um die Entschlüsselung zu vereinfachen.> ExampleEncryptedFile
Einen Beispielbefehl, der zum Entschlüsseln von Daten verwendet, finden Sie in den Entschlüsselungsbeispielen. AWS CLIBeispiel 2: Verwenden von AWS CLI zum Verschlüsseln von Daten unter Windows
Dieses Beispiel ist dasselbe wie das vorherige, außer dass es das
certutil
Tool anstelle vonbase64
verwendet. Für dieses Verfahren sind zwei Befehle erforderlich, wie im folgenden Beispiel gezeigt.aws kms encrypt \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --plaintextfileb://ExamplePlaintextFile
\ --outputtext
\ --queryCiphertextBlob
>
C:\Temp\ExampleEncryptedFile.base64certutil
-decode
C:\Temp\ExampleEncryptedFile.base64 C:\Temp\ExampleEncryptedFileBeispiel 3: Verschlüsselung mit einem asymmetrischen Schlüssel KMS
Der folgende
encrypt
Befehl zeigt, wie Klartext mit einem asymmetrischen Schlüssel verschlüsselt wird. KMS Der Parameter--encryption-algorithm
muss angegeben werden. Wie bei allenencrypt
CLI Befehlen muss derplaintext
Parameter Base64-kodiert sein, oder Sie müssen dasfileb://
Präfix verwenden, das den mitteilt, Binärdaten aus der Datei AWS CLI zu lesen.aws kms encrypt \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --encryption-algorithmRSAES_OAEP_SHA_256
\ --plaintextfileb://ExamplePlaintextFile
\ --outputtext
\ --queryCiphertextBlob
|
base64
\ --decode>
ExampleEncryptedFile
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
-
APIEinzelheiten finden Sie unter Verschlüsseln
in der Befehlsreferenz.AWS CLI
-
Das folgende Codebeispiel zeigt die Verwendunggenerate-data-key-pair-without-plaintext
.
- AWS CLI
-
Um ein asymmetrisches ECC NIST P384-Datenschlüsselpaar zu generieren
Im folgenden
generate-data-key-pair-without-plaintext
Beispiel wird ein ECC NIST P384-Schlüsselpaar zur Verwendung außerhalb von AWS angefordert.Der Befehl gibt einen öffentlichen Klartext-Schlüssel und eine Kopie des privaten Schlüssels zurück, der unter dem angegebenen KMS Schlüssel verschlüsselt wurde. Es wird kein privater Klartext-Schlüssel zurückgegeben. Sie können den verschlüsselten privaten Schlüssel zusammen mit den verschlüsselten Daten sicher speichern und bei Bedarf aufrufen, AWS KMS um den privaten Schlüssel zu entschlüsseln.
Um ein asymmetrisches ECC NIST P384-Datenschlüsselpaar anzufordern, verwenden Sie den
key-pair-spec
Parameter mit dem Wert.ECC_NIST_P384
Der von Ihnen angegebene KMS Schlüssel muss ein symmetrischer KMS Verschlüsselungsschlüssel sein, d. h. ein KMS Schlüssel mit dem Wert.
KeySpec
SYMMETRIC_DEFAULT
NOTE: Die Werte in der Ausgabe dieses Beispiels sind zur Anzeige gekürzt.
aws kms generate-data-key-pair-without-plaintext \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --key-pair-specECC_NIST_P384
Ausgabe:
{ "PrivateKeyCiphertextBlob": "AQIDAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAFFxmiD134doUDzMGmfCEtcAAAHaTCCB2UGCSqGSIb3DQEHBqCCB1...", "PublicKey": "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA3A3eGMyPrvSn7+LdlJE1oUoQV5HpEuHAVbdOyND+NmYDH/mL1OSIEuLrcdZ5hrMH4pk83r40l...", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "KeyPairSpec": "ECC_NIST_P384" }
Die
PublicKey
undPrivateKeyCiphertextBlob
werden im Base64-kodierten Format zurückgegeben.Weitere Informationen finden Sie unter Datenschlüsselpaare im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie GenerateDataKeyPairWithoutPlaintext
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztgenerate-data-key-pair
.
- AWS CLI
-
Um ein RSA asymmetrisches 2048-Bit-Datenschlüsselpaar zu generieren
Im folgenden
generate-data-key-pair
Beispiel wird ein RSA asymmetrisches 2048-Bit-Datenschlüsselpaar zur Verwendung außerhalb von angefordert. AWS Der Befehl gibt einen öffentlichen Klartext-Schlüssel und einen privaten Klartext-Schlüssel zur sofortigen Verwendung und Löschung sowie eine Kopie des privaten Schlüssels zurück, die unter dem angegebenen Schlüssel verschlüsselt wurde. KMS Sie können den verschlüsselten privaten Schlüssel zusammen mit den verschlüsselten Daten sicher speichern.Um ein RSA asymmetrisches 2048-Bit-Datenschlüsselpaar anzufordern, verwenden Sie den
key-pair-spec
Parameter mit dem Wert.RSA_2048
Bei dem von Ihnen angegebenen KMS Schlüssel muss es sich um einen symmetrischen KMS Verschlüsselungsschlüssel handeln, d. h. um einen KMS Schlüssel mit dem Wert.
KeySpec
SYMMETRIC_DEFAULT
NOTE: Die Werte in der Ausgabe dieses Beispiels sind zur Anzeige gekürzt.
aws kms generate-data-key-pair \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --key-pair-specRSA_2048
Ausgabe:
{ "PrivateKeyCiphertextBlob": "AQIDAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAFFxmiD134doUDzMGmfCEtcAAAHaTCCB2UGCSqGSIb3DQEHBqCCB1...", "PrivateKeyPlaintext": "MIIG/QIBADANBgkqhkiG9w0BAQEFAASCBucwggbjAgEAAoIBgQDcDd4YzI+u9Kfv4t2UkTWhShBXkekS4cBVt07I0P42ZgMf+YvU5IgS4ut...", "PublicKey": "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA3A3eGMyPrvSn7+LdlJE1oUoQV5HpEuHAVbdOyND+NmYDH/mL1OSIEuLrcdZ5hrMH4pk83r40l...", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "KeyPairSpec": "RSA_2048" }
Die
PublicKey
PrivateKeyPlaintext
, undPrivateKeyCiphertextBlob
werden im Base64-kodierten Format zurückgegeben.Weitere Informationen finden Sie unter Datenschlüsselpaare im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie GenerateDataKeyPair
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztgenerate-data-key-without-plaintext
.
- AWS CLI
-
Um einen symmetrischen 256-Bit-Datenschlüssel ohne Klartextschlüssel zu generieren
Im folgenden
generate-data-key-without-plaintext
Beispiel wird eine verschlüsselte Kopie eines symmetrischen 256-Bit-Datenschlüssels zur Verwendung außerhalb von angefordert. AWS Sie können aufrufen AWS KMS, um den Datenschlüssel zu entschlüsseln, wenn Sie bereit sind, ihn zu verwenden.Um einen 256-Bit-Datenschlüssel anzufordern, verwenden Sie den
key-spec
Parameter mit dem Wert.AES_256
Um einen 128-Bit-Datenschlüssel anzufordern, verwenden Sie denkey-spec
Parameter mit dem Wert.AES_128
Verwenden Sie für alle anderen Datenschlüssellängen dennumber-of-bytes
Parameter.Bei dem von Ihnen angegebenen KMS Schlüssel muss es sich um einen symmetrischen KMS Verschlüsselungsschlüssel handeln, d. h. um einen KMS Schlüssel mit dem Schlüsselspezifikationswert _. SYMMETRIC DEFAULT
aws kms generate-data-key-without-plaintext \ --key-id
"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
\ --key-specAES_256
Ausgabe:
{ "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogL", "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }
Der
CiphertextBlob
(verschlüsselte Datenschlüssel) wird im Base64-codierten Format zurückgegeben.Weitere Informationen finden Sie unter Datenschlüssel im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie GenerateDataKeyWithoutPlaintext
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztgenerate-data-key
.
- AWS CLI
-
Beispiel 1: Um einen symmetrischen 256-Bit-Datenschlüssel zu generieren
Im folgenden
generate-data-key
Beispiel wird ein symmetrischer 256-Bit-Datenschlüssel zur Verwendung außerhalb von angefordert. AWS Der Befehl gibt einen Klartext-Datenschlüssel zur sofortigen Verwendung und Löschung sowie eine Kopie dieses Datenschlüssels zurück, die unter dem angegebenen Schlüssel verschlüsselt wurde. KMS Sie können den verschlüsselten Datenschlüssel sicher neben den verschlüsselten Daten speichern.Um einen 256-Bit-Datenschlüssel anzufordern, verwenden Sie den
key-spec
Parameter mit dem Wert.AES_256
Um einen 128-Bit-Datenschlüssel anzufordern, verwenden Sie denkey-spec
Parameter mit dem Wert.AES_128
Verwenden Sie für alle anderen Datenschlüssellängen dennumber-of-bytes
Parameter.Bei dem von Ihnen angegebenen KMS Schlüssel muss es sich um einen symmetrischen KMS Verschlüsselungsschlüssel handeln, d. h. um einen KMS Schlüssel mit dem Schlüsselspezifikationswert _. SYMMETRIC DEFAULT
aws kms generate-data-key \ --key-id
alias/ExampleAlias
\ --key-specAES_256
Ausgabe:
{ "Plaintext": "VdzKNHGzUAzJeRBVY+uUmofUGGiDzyB3+i9fVkh3piw=", "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogLqPWZconQhwHAIBEIA7d9AC7GeJJM34njQvg4Wf1d5sw0NIo1MrBqZa+YdhV8MrkBQPeac0ReRVNDt9qleAt+SHgIRF8P0H+7U=" }
Der
Plaintext
(Klartext-Datenschlüssel) und derCiphertextBlob
(verschlüsselte Datenschlüssel) werden im Base64-codierten Format zurückgegeben.Weitere Informationen finden Sie unter Datenschlüssel < https://docs.aws.amazon.com/kms/ latest/developerguide/concepts .html #data -keys im AWS Key Management Service Developer Guide.
Beispiel 2: So generieren Sie einen symmetrischen 512-Bit-Datenschlüssel
Im folgenden
generate-data-key
Beispiel wird ein symmetrischer 512-Bit-Datenschlüssel für die Verschlüsselung und Entschlüsselung angefordert. Der Befehl gibt einen Klartext-Datenschlüssel zur sofortigen Verwendung und Löschung sowie eine Kopie dieses Datenschlüssels zurück, die mit dem angegebenen Schlüssel verschlüsselt wurde. KMS Sie können den verschlüsselten Datenschlüssel sicher neben den verschlüsselten Daten speichern.Verwenden Sie den
number-of-bytes
Parameter, um eine andere Schlüssellänge als 128 oder 256 Bit anzufordern. Um einen 512-Bit-Datenschlüssel anzufordern, verwendet das folgende Beispiel dennumber-of-bytes
Parameter mit einem Wert von 64 (Byte).Der von Ihnen angegebene KMS Schlüssel muss ein symmetrischer KMS Verschlüsselungsschlüssel sein, d. h. ein KMS Schlüssel mit dem Schlüsselspezifikationswert _. SYMMETRIC DEFAULT
NOTE: Die Werte in der Ausgabe dieses Beispiels sind zur Anzeige gekürzt.
aws kms generate-data-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --number-of-bytes64
Ausgabe:
{ "CiphertextBlob": "AQIBAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAEnX/QQNmMwDfg2korNMEc8AAACaDCCAmQGCSqGSIb3DQEHBqCCAlUwggJRAgEAMIICSgYJKoZ...", "Plaintext": "ty8Lr0Bk6OF07M2BWt6qbFdNB+G00ZLtf5MSEb4al3R2UKWGOp06njAwy2n72VRm2m7z/Pm9Wpbvttz6a4lSo9hgPvKhZ5y6RTm4OovEXiVfBveyX3DQxDzRSwbKDPk/...", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }
Plaintext
(Klartext-Datenschlüssel) undCiphertextBlob
(verschlüsselter Datenschlüssel) werden im Base64-codierten Format zurückgegeben.Weitere Informationen finden Sie unter Datenschlüssel < https://docs.aws.amazon.com/kms/ latest/developerguide/concepts .html #data -keys im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie GenerateDataKey
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztgenerate-random
.
- AWS CLI
-
Beispiel 1: Um eine 256-Bit-Zufallsbytezeichenfolge zu generieren (Linux oder) macOs
Das folgende
generate-random
Beispiel generiert eine Base64-kodierte 256-Bit-Zufallsbytezeichenfolge (32 Byte). Das Beispiel dekodiert die Bytezeichenfolge und speichert sie in der Zufallsdatei.Wenn Sie diesen Befehl ausführen, müssen Sie den
number-of-bytes
Parameter verwenden, um die Länge des Zufallswerts in Byte anzugeben.Sie geben keinen KMS Schlüssel an, wenn Sie diesen Befehl ausführen. Die zufällige Byte-Zeichenfolge hat nichts mit einem KMS Schlüssel zu tun.
AWS KMSGeneriert standardmäßig die Zufallszahl. Wenn Sie jedoch einen benutzerdefinierten Schlüsselspeicher angeben < https://docs.aws.amazon.com/kms/ latest/developerguide/custom - key-store-overview .html>, wird die zufällige Byte-Zeichenfolge in dem AWS HSM Cloud-Cluster generiert, der dem benutzerdefinierten Schlüsselspeicher zugeordnet ist.
In diesem Beispiel werden die folgenden Parameter und Werte verwendet:
Es verwendet den erforderlichen
--number-of-bytes
Parameter mit dem Wert von,32
um eine 32-Byte-Zeichenfolge (256-Bit) anzufordern.Es verwendet den--output
Parameter mit dem Wert von,text
AWS CLI um die Ausgabe als Text zurückzugeben, anstatt vonJSON. Es verwendet den,--query parameter
um den Wert derPlaintext
Eigenschaft aus der Antwort zu extrahieren.Es leitet (|) die Ausgabe des Befehls an dasbase64
Hilfsprogramm weiter, das die extrahierte Ausgabe dekodiert. Es verwendet den Umleitungsoperator (>), um die dekodierte Bytezeichenfolge in derExampleRandom
Datei zu speichern.IT verwendet die Umleitungsoperator (>), um den binären Chiffretext in einer Datei zu speichern.aws kms generate-random \ --number-of-bytes 32 \ --output text \ --query Plaintext | base64 --decode > ExampleRandom
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie GenerateRandomin der AWS Key Management Service Reference. API
Beispiel 2: Generieren einer 256-Bit-Zufallszahl (Windows-Eingabeaufforderung)
Im folgenden Beispiel wird der
generate-random
Befehl verwendet, um eine Base64-kodierte 256-Bit- (32-Byte) -Bit-Zufallsbytezeichenfolge zu generieren. Das Beispiel dekodiert die Bytezeichenfolge und speichert sie in der Zufallsdatei. Dieses Beispiel entspricht dem vorherigen Beispiel, außer dass es dascertutil
Hilfsprogramm in Windows verwendet, um die zufällige Bytezeichenfolge base64-dekodieren zu lassen, bevor sie in einer Datei gespeichert wird.Generieren Sie zunächst eine Base64-kodierte Zufallsbytezeichenfolge und speichern Sie sie in einer temporären Datei,.
ExampleRandom.base64
aws kms generate-random \ --number-of-bytes
32
\ --outputtext
\ --queryPlaintext
>
ExampleRandom.base64
Da die Ausgabe des
generate-random
Befehls in einer Datei gespeichert wird, erzeugt dieses Beispiel keine Ausgabe.Verwenden Sie nun den
certutil -decode
Befehl, um die Base64-kodierte Bytezeichenfolge in der Datei zu dekodieren.ExampleRandom.base64
Anschließend wird die dekodierte Bytezeichenfolge in der Datei gespeichert.ExampleRandom
certutil -decode ExampleRandom.base64 ExampleRandom
Ausgabe:
Input Length = 18 Output Length = 12 CertUtil: -decode command completed successfully.
Weitere Informationen finden Sie GenerateRandomin der APIReferenz zum AWS Key Management Service.
-
APIEinzelheiten finden Sie GenerateRandom
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztget-key-policy
.
- AWS CLI
-
Um eine Schlüsselrichtlinie von einem Schlüssel auf einen anderen KMS KMS Schlüssel zu kopieren
Im folgenden
get-key-policy
Beispiel wird die Schlüsselrichtlinie von einem KMS Schlüssel abgerufen und in einer Textdatei gespeichert. Anschließend wird die Richtlinie eines anderen KMS Schlüssels ersetzt, wobei die Textdatei als Richtlinieneingabe verwendet wird.Da für den
--policy
Parameter von eine Zeichenfolgeput-key-policy
erforderlich ist, müssen Sie die--output text
Option verwenden, um die Ausgabe als Textzeichenfolge anstatt als zurückzugebenJSON.aws kms get-key-policy \ --policy-name
default
\ --key-id1234abcd-12ab-34cd-56ef-1234567890ab
\ --queryPolicy
\ --outputtext
>
policy.txt
aws
kms
put-key-policy
\ --policy-namedefault
\ --key-id0987dcba-09fe-87dc-65ba-ab0987654321
\ --policyfile://policy.txt
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie PutKeyPolicyin der AWS KMSAPIReferenz.
-
APIEinzelheiten finden Sie GetKeyPolicy
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztget-key-rotation-status
.
- AWS CLI
-
Um den Rotationsstatus für einen KMS Schlüssel abzurufen.
Das folgende
get-key-rotation-status
Beispiel gibt Informationen über den Rotationsstatus des angegebenen KMS Schlüssels zurück, einschließlich der Frage, ob die automatische Rotation aktiviert ist, den Rotationszeitraum und das nächste geplante Rotationsdatum. Sie können diesen Befehl für vom Kunden verwaltete KMS Schlüssel und AWS verwaltete KMS Schlüssel verwenden. Alle AWS verwalteten KMS Schlüssel werden jedoch jedes Jahr automatisch rotiert.aws kms get-key-rotation-status \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyRotationEnabled": true, "NextRotationDate": "2024-02-14T18:14:33.587000+00:00", "RotationPeriodInDays": 365 }
Weitere Informationen finden Sie unter Rotation von Schlüsseln im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie GetKeyRotationStatus
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztget-parameters-for-import
.
- AWS CLI
-
Um die Elemente abzurufen, die zum Importieren von Schlüsselmaterial in einen KMS Schlüssel erforderlich sind
Im folgenden
get-parameters-for-import
Beispiel werden der öffentliche Schlüssel und das Import-Token abgerufen, die Sie benötigen, um Schlüsselmaterial in einen KMS Schlüssel zu importieren. Achten Sie bei der Verwendung desimport-key-material
Befehls darauf, dass Sie das Import-Token und das mit dem öffentlichen Schlüssel verschlüsselte Schlüsselmaterial verwenden, die im selbenget-parameters-for-import
Befehl zurückgegeben wurden. Außerdem muss es sich bei dem in diesem Befehl angegebenen Wrapping-Algorithmus um einen Algorithmus handeln, den Sie verwenden, um das Schlüsselmaterial mit dem öffentlichen Schlüssel zu verschlüsseln.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird eine Schlüssel-ID verwendet, aber Sie können ARN in diesem Befehl auch eine Schlüssel-ID oder einen Schlüssel verwenden.aws kms get-parameters-for-import \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --wrapping-algorithmRSAES_OAEP_SHA_256
\ --wrapping-key-specRSA_2048
Ausgabe:
{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "PublicKey": "<public key base64 encoded data>", "ImportToken": "<import token base64 encoded data>", "ParametersValidTo": 1593893322.32 }
Weitere Informationen finden Sie unter Herunterladen des öffentlichen Schlüssels und Importieren des Tokens im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie GetParametersForImport
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztget-public-key
.
- AWS CLI
-
Beispiel 1: Um den öffentlichen Schlüssel eines asymmetrischen KMS Schlüssels herunterzuladen
Im folgenden
get-public-key
Beispiel wird der öffentliche Schlüssel eines asymmetrischen KMS Schlüssels heruntergeladen.Zusätzlich zur Rückgabe des öffentlichen Schlüssels enthält die Ausgabe Informationen, die Sie benötigen, um den öffentlichen Schlüssel sicher außerhalb zu verwenden AWS KMS, einschließlich der Schlüsselverwendung und der unterstützten Verschlüsselungsalgorithmen.
aws kms get-public-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "PublicKey": "jANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAl5epvg1/QtJhxSi2g9SDEVg8QV/...", "CustomerMasterKeySpec": "RSA_4096", "KeyUsage": "ENCRYPT_DECRYPT", "EncryptionAlgorithms": [ "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ] }
Weitere Informationen zur Verwendung asymmetrischer KMS Schlüssel finden Sie unter AWS KMS Using symmetric and Asymmetric Keys in der AWS Key Management Service Reference. API
Beispiel 2: Um einen öffentlichen Schlüssel in ein DER Format zu konvertieren (Linux und macOS)
Im folgenden
get-public-key
Beispiel wird der öffentliche Schlüssel eines asymmetrischen KMS Schlüssels heruntergeladen und in einer DER Datei gespeichert.Wenn Sie den
get-public-key
Befehl in verwenden AWS CLI, gibt er einen mit DER -codierten öffentlichen X.509-Schlüssel zurück, der Base64-kodiert ist. In diesem Beispiel wird der Wert der Eigenschaft als Text abgerufen.PublicKey
Es dekodiert das mit Base64PublicKey
und speichert es in der Datei.public_key.der
Deroutput
Parameter gibt die Ausgabe als Text zurück, anstatt als. JSON Der--query
Parameter ruft nur diePublicKey
Eigenschaft ab, nicht die Eigenschaften, die Sie benötigen, um den öffentlichen Schlüssel sicher außerhalb zu verwenden AWS KMS.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto.
aws kms get-public-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --outputtext
\ --queryPublicKey
|
base64
--decode>
public_key.der
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zur Verwendung asymmetrischer KMS Schlüssel finden Sie unter Verwenden symmetrischer und asymmetrischer Schlüssel in der AWS Key Management Service-Referenz. AWS KMS API
-
APIEinzelheiten finden Sie unter Befehlsreferenz GetPublicKey
.AWS CLI
-
Das folgende Codebeispiel zeigt, wie man es benutztimport-key-material
.
- AWS CLI
-
Um Schlüsselmaterial in einen KMS Schlüssel zu importieren
Im folgenden
import-key-material
Beispiel wird Schlüsselmaterial in einen KMS Schlüssel hochgeladen, der ohne Schlüsselmaterial erstellt wurde. Der Schlüsselstatus des KMS Schlüssels muss sein.PendingImport
Dieser Befehl verwendet Schlüsselmaterial, das Sie mit dem öffentlichen Schlüssel verschlüsselt haben, den der
get-parameters-for-import
Befehl zurückgegeben hat. Außerdem wird das Import-Token aus demselbenget-parameters-for-import
Befehl verwendet.Der
expiration-model
Parameter gibt an, dass das Schlüsselmaterial automatisch an dem vomvalid-to
Parameter angegebenen Datum und der Uhrzeit abläuft. Wenn das Schlüsselmaterial abläuft und das Schlüsselmaterial AWS KMS gelöscht wird, ändert sich der Schlüsselstatus des KMS SchlüsselsPending import
und der KMS Schlüssel wird unbrauchbar. Um den KMS Schlüssel wiederherzustellen, müssen Sie dasselbe Schlüsselmaterial erneut importieren. Um anderes Schlüsselmaterial zu verwenden, müssen Sie einen neuen KMS Schlüssel erstellen.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID oder einen gültigen Schlüssel ARN aus Ihrem AWS Konto.
aws kms import-key-material \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --encrypted-key-materialfileb://EncryptedKeyMaterial.bin
\ --import-tokenfileb://ImportToken.bin
\ --expiration-modelKEY_MATERIAL_EXPIRES
\ --valid-to2021-09-21T19:00:00Z
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zum Importieren von Schlüsselmaterial finden Sie unter Importieren von Schlüsselmaterial im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ImportKeyMaterial
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-aliases
.
- AWS CLI
-
Beispiel 1: Um alle Aliase in einem AWS Konto und einer Region aufzulisten
Im folgenden Beispiel wird der
list-aliases
Befehl verwendet, um alle Aliase in der Standardregion des AWS Kontos aufzulisten. Die Ausgabe umfasst Aliase, die AWS verwalteten KMS Schlüsseln und KMS kundenverwalteten Schlüsseln zugeordnet sind.aws kms list-aliases
Ausgabe:
{ "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/testKey", "AliasName": "alias/testKey", "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" }, { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/FinanceDept", "AliasName": "alias/FinanceDept", "TargetKeyId": "0987dcba-09fe-87dc-65ba-ab0987654321" }, { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/aws/dynamodb", "AliasName": "alias/aws/dynamodb", "TargetKeyId": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d" }, { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/aws/ebs", "AliasName": "alias/aws/ebs", "TargetKeyId": "0987ab65-43cd-21ef-09ab-87654321cdef" }, ... ] }
Beispiel 2: Um alle Aliase für einen bestimmten Schlüssel aufzulisten KMS
Im folgenden Beispiel werden der
list-aliases
Befehl und seinkey-id
Parameter verwendet, um alle Aliase aufzulisten, die einem bestimmten KMS Schlüssel zugeordnet sind.Jeder Alias ist nur einem KMS Schlüssel zugeordnet, aber ein KMS Schlüssel kann mehrere Aliase haben. Dieser Befehl ist sehr nützlich, da die AWS KMS Konsole für jeden KMS Schlüssel nur einen Alias auflistet. Um alle Aliase für einen KMS Schlüssel zu finden, müssen Sie den
list-aliases
Befehl verwenden.In diesem Beispiel wird die Schlüssel-ID des KMS Schlüssels für den
--key-id
Parameter verwendet, aber Sie können ARN in diesem Befehl eine Schlüssel-ID, einen SchlüsselARN, einen Aliasnamen oder einen Alias verwenden.aws kms list-aliases --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "Aliases": [ { "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/oregon-test-key", "AliasName": "alias/oregon-test-key" }, { "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/project121-test", "AliasName": "alias/project121-test" } ] }
Weitere Informationen finden Sie unter Arbeiten mit Aliasen im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ListAliases
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-grants
.
- AWS CLI
-
Um die Zuschüsse auf einem AWS KMS Schlüssel anzuzeigen
Im folgenden
list-grants
Beispiel werden alle Grants für den angegebenen AWS verwalteten KMS Schlüssel für Amazon DynamoDB in Ihrem Konto angezeigt. Dieser Zuschuss ermöglicht es DynamoDB, den KMS Schlüssel in Ihrem Namen zu verwenden, um eine DynamoDB-Tabelle zu verschlüsseln, bevor sie auf die Festplatte geschrieben wird. Sie können einen Befehl wie diesen verwenden, um die Zuschüsse für die verwalteten Schlüssel und die vom Kunden AWS verwalteten KMS Schlüssel im Konto und in der KMS Region anzuzeigen. AWSDieser Befehl verwendet den
key-id
Parameter mit einer Schlüssel-ID, um den KMS Schlüssel zu identifizieren. Sie können eine Schlüssel-ID oder einen Schlüssel verwendenARN, um den KMS Schlüssel zu identifizieren. Verwenden Sie denlist-aliases
Befehl oder, um die Schlüssel-ID oder den KMSlist-keys
Schlüssel ARN eines AWS verwalteten Schlüssels abzurufen.aws kms list-grants \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Die Ausgabe zeigt, dass Amazon DynamoDB durch den Zuschuss die Erlaubnis erhält, den KMS Schlüssel für kryptografische Operationen zu verwenden und Details über den KMS Schlüssel (
DescribeKey
) einzusehen und Grants zurückzuziehen ().RetireGrant
DieEncryptionContextSubset
Einschränkung beschränkt diese Berechtigungen auf Anfragen, die die angegebenen Verschlüsselungskontextpaare enthalten. Daher sind die Berechtigungen in der Gewährung nur für das angegebene Konto und die angegebene DynamoDB-Tabelle wirksam.{ "Grants": [ { "Constraints": { "EncryptionContextSubset": { "aws:dynamodb:subscriberId": "123456789012", "aws:dynamodb:tableName": "Services" } }, "IssuingAccount": "arn:aws:iam::123456789012:root", "Name": "8276b9a6-6cf0-46f1-b2f0-7993a7f8c89a", "Operations": [ "Decrypt", "Encrypt", "GenerateDataKey", "ReEncryptFrom", "ReEncryptTo", "RetireGrant", "DescribeKey" ], "GrantId": "1667b97d27cf748cf05b487217dd4179526c949d14fb3903858e25193253fe59", "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "RetiringPrincipal": "dynamodb.us-west-2.amazonaws.com", "GranteePrincipal": "dynamodb.us-west-2.amazonaws.com", "CreationDate": "2021-05-13T18:32:45.144000+00:00" } ] }
Weitere Informationen finden Sie unter Grants AWS KMS im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ListGrants
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-key-policies
.
- AWS CLI
-
Um die Namen der wichtigsten Richtlinien für einen KMS Schlüssel abzurufen
Im folgenden
list-key-policies
Beispiel werden die Namen der wichtigsten Richtlinien für einen vom Kunden verwalteten Schlüssel im Beispielkonto und in der Region abgerufen. Mit diesem Befehl können Sie die Namen der wichtigsten Richtlinien für AWS verwaltete Schlüssel und vom Kunden verwaltete Schlüssel ermitteln.Da der einzig gültige Name der Schlüsselrichtlinie lautet
default
, ist dieser Befehl nicht nützlich.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, aber Sie können ARN in diesem Befehl auch eine Schlüssel-ID oder einen Schlüssel verwenden.aws kms list-key-policies \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "PolicyNames": [ "default" ] }
Weitere Informationen zu AWS KMS wichtigen Richtlinien finden Sie unter Verwenden von Schlüsselrichtlinien AWS KMS im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ListKeyPolicies
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-key-rotations
.
- AWS CLI
-
Um Informationen über alle abgeschlossenen wichtigen Materialrotationen abzurufen
Im folgenden
list-key-rotations
Beispiel werden Informationen zu allen abgeschlossenen Materialrotationen für den angegebenen KMS Schlüssel aufgeführt.aws kms list-key-rotations \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "Rotations": [ { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "RotationDate": "2024-03-02T10:11:36.564000+00:00", "RotationType": "AUTOMATIC" }, { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "RotationDate": "2024-04-05T15:14:47.757000+00:00", "RotationType": "ON_DEMAND" } ], "Truncated": false }
Weitere Informationen finden Sie unter Rotation von Schlüsseln im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ListKeyRotations
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-keys
.
- AWS CLI
-
Um die KMS Schlüssel für ein Konto und eine Region zu erhalten
Im folgenden
list-keys
Beispiel werden die KMS Schlüssel für ein Konto und eine Region abgerufen. Dieser Befehl gibt sowohl AWS verwaltete Schlüssel als auch vom Kunden verwaltete Schlüssel zurück.aws kms list-keys
Ausgabe:
{ "Keys": [ { "KeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" }, { "KeyArn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321" }, { "KeyArn": "arn:aws:kms:us-east-2:111122223333:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d", "KeyId": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d" } ] }
Weitere Informationen finden Sie unter Schlüssel anzeigen im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ListKeys
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-resource-tags
.
- AWS CLI
-
Um die Tags auf einem KMS Schlüssel abzurufen
Im folgenden
list-resource-tags
Beispiel werden die Tags für einen KMS Schlüssel abgerufen. Verwenden Sie dentag-resource
Befehl, um Ressourcen-Tags zu KMS Schlüsseln hinzuzufügen oder zu ersetzen. Die Ausgabe zeigt, dass dieser KMS Schlüssel zwei Ressourcen-Tags hat, von denen jedes einen Schlüssel und einen Wert hat.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, aber Sie können ARN in diesem Befehl auch eine Schlüssel-ID oder einen Schlüssel verwenden.aws kms list-resource-tags \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "Tags": [ { "TagKey": "Dept", "TagValue": "IT" }, { "TagKey": "Purpose", "TagValue": "Test" } ], "Truncated": false }
Weitere Informationen zur Verwendung von Tags in AWS KMS finden Sie unter Tagging Keys im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie unter ListResourceTags AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztlist-retirable-grants
.
- AWS CLI
-
Um die Zuschüsse anzuzeigen, die ein Schulleiter in den Ruhestand schicken kann
Im folgenden
list-retirable-grants
Beispiel werden alle Zuschüsse angezeigt, die derExampleAdmin
Benutzer mit den KMS Schlüsseln eines AWS Kontos und einer Region zurückziehen kann. Sie können einen Befehl wie diesen verwenden, um die Zuschüsse anzuzeigen, die jeder Kontoinhaber aufgrund von KMS Schlüsseln für das AWS Konto und die Region zurückziehen kann.Der Wert des erforderlichen
retiring-principal
Parameters muss der Amazon-Ressourcenname (ARN) eines Kontos, Benutzers oder einer Rolle sein.Sie können
retiring-principal
in diesem Befehl keinen Service für den Wert von angeben, auch wenn ein Service der ausscheidende Principal sein kann. Verwenden Sie den Befehl, um die Zuschüsse zu ermitteln, in denen ein bestimmter Dienst der ausscheidende Schulleiter ist.list-grants
Die Ausgabe zeigt, dass der
ExampleAdmin
Benutzer berechtigt ist, Grants für zwei verschiedene KMS Schlüssel im Konto und in der Region zurückzuziehen. Zusätzlich zum ausscheidenden Hauptbetrag ist das Konto berechtigt, alle Zuschüsse auf dem Konto zurückzuziehen.aws kms list-retirable-grants \ --retiring-principal
arn:aws:iam::111122223333:user/ExampleAdmin
Ausgabe:
{ "Grants": [ { "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "GrantId": "156b69c63cb154aa21f59929ff19760717be8d9d82b99df53e18b94a15a5e88e", "Name": "", "CreationDate": 2021-01-14T20:17:36.419000+00:00, "GranteePrincipal": "arn:aws:iam::111122223333:user/ExampleUser", "RetiringPrincipal": "arn:aws:iam::111122223333:user/ExampleAdmin", "IssuingAccount": "arn:aws:iam::111122223333:root", "Operations": [ "Encrypt" ], "Constraints": { "EncryptionContextSubset": { "Department": "IT" } } }, { "KeyId": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "GrantId": "8c94d1f12f5e69f440bae30eaec9570bb1fb7358824f9ddfa1aa5a0dab1a59b2", "Name": "", "CreationDate": "2021-02-02T19:49:49.638000+00:00", "GranteePrincipal": "arn:aws:iam::111122223333:role/ExampleRole", "RetiringPrincipal": "arn:aws:iam::111122223333:user/ExampleAdmin", "IssuingAccount": "arn:aws:iam::111122223333:root", "Operations": [ "Decrypt" ], "Constraints": { "EncryptionContextSubset": { "Department": "IT" } } } ], "Truncated": false }
Weitere Informationen finden Sie unter Grants AWS KMS im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ListRetirableGrants
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztput-key-policy
.
- AWS CLI
-
Um die Schlüsselrichtlinie für einen KMS Schlüssel zu ändern
Im folgenden
put-key-policy
Beispiel wird die Schlüsselrichtlinie für einen vom Kunden verwalteten Schlüssel geändert.Erstellen Sie zunächst eine Schlüsselrichtlinie und speichern Sie sie in einer lokalen JSON Datei. In diesem Beispiel ist die Datei
key_policy.json
. Sie können die Schlüsselrichtlinie auch als Zeichenfolgenwert despolicy
Parameters angeben.Die erste Anweisung in dieser Schlüsselrichtlinie erteilt dem AWS Konto die Erlaubnis, IAM Richtlinien zur Steuerung des Zugriffs auf den KMS Schlüssel zu verwenden. Die zweite Anweisung erteilt dem
test-user
Benutzer die Erlaubnis, dielist-keys
Befehledescribe-key
und auf dem KMS Schlüssel auszuführen.Inhalt von
key_policy.json
:{ "Version" : "2012-10-17", "Id" : "key-default-1", "Statement" : [ { "Sid" : "Enable IAM User Permissions", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : "kms:*", "Resource" : "*" }, { "Sid" : "Allow Use of Key", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:user/test-user" }, "Action" : [ "kms:DescribeKey", "kms:ListKeys" ], "Resource" : "*" } ] }
Zur Identifizierung des KMS Schlüssels wird in diesem Beispiel die Schlüssel-ID verwendet, Sie können aber auch einen Schlüssel verwendenARN. Um die Schlüsselrichtlinie anzugeben, verwendet der Befehl den
policy
Parameter. Um anzugeben, dass sich die Richtlinie in einer Datei befindet, wird das erforderlichefile://
Präfix verwendet. Dieses Präfix ist erforderlich, um Dateien auf allen unterstützten Betriebssystemen zu identifizieren. Schließlich verwendet der Befehl denpolicy-name
Parameter mit dem Wertdefault
. Wenn kein Richtlinienname angegeben ist, ist der Standardwertdefault
. Der einzige gültige Wert istdefault
.aws kms put-key-policy \ --policy-name
default
\ --key-id1234abcd-12ab-34cd-56ef-1234567890ab
\ --policyfile://key_policy.json
Dieser Befehl erzeugt keine Ausgabe. Verwenden Sie den Befehl, um zu überprüfen, ob der
get-key-policy
Befehl wirksam war. Mit dem folgenden Beispielbefehl wird die Schlüsselrichtlinie für denselben KMS Schlüssel abgerufen. Deroutput
Parameter mit dem Wert vontext
gibt ein Textformat zurück, das leicht zu lesen ist.aws kms get-key-policy \ --policy-name
default
\ --key-id1234abcd-12ab-34cd-56ef-1234567890ab
\ --outputtext
Ausgabe:
{ "Version" : "2012-10-17", "Id" : "key-default-1", "Statement" : [ { "Sid" : "Enable IAM User Permissions", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : "kms:*", "Resource" : "*" }, { "Sid" : "Allow Use of Key", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:user/test-user" }, "Action" : [ "kms:Describe", "kms:List" ], "Resource" : "*" } ] }
Weitere Informationen finden Sie unter Ändern einer Schlüsselrichtlinie im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie PutKeyPolicy
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztre-encrypt
.
- AWS CLI
-
Beispiel 1: Um eine verschlüsselte Nachricht unter einem anderen symmetrischen KMS Schlüssel (Linux und macOS) erneut zu verschlüsseln.
Das folgende
re-encrypt
Befehlsbeispiel zeigt die empfohlene Methode zum erneuten Verschlüsseln von Daten mit dem. AWS CLIGeben Sie den Geheimtext in einer Datei an. Verwenden Sie im Wert des
--ciphertext-blob
Parameters dasfileb://
Präfix, das angibt, die Daten aus einer Binärdatei CLI zu lesen. Wenn sich die Datei nicht im aktuellen Verzeichnis befindet, geben Sie den vollständigen Dateipfad ein. Weitere Informationen zum Lesen von AWS CLI Parameterwerten aus einer Datei finden Sie unter Loading AWS CLI parameters from a file < https://docs.aws.amazon.com/cli/ latest/userguide/cli - usage-parameters-file .html> im AWS Command Line Interface User Guide und Best Practices for Local File Parameters< https://aws.amazon.com/blogs/ developer/ best-practices-for-local -file-parameters/> im AWS Command Line Tool Blog .Geben Sie den KMS Quellschlüssel an, der den Chiffretext entschlüsselt. Der--source-key-id
Parameter ist bei der Entschlüsselung mit symmetrischer Verschlüsselung nicht erforderlich. KMSSchlüssel. AWS KMSkann den KMS Schlüssel, der zur Verschlüsselung der Daten verwendet wurde, aus den Metadaten im Chiffretext-Blob abrufen. Es hat sich jedoch immer bewährt, den KMS Schlüssel anzugeben, den Sie verwenden. Diese Vorgehensweise stellt sicher, dass Sie den KMS Schlüssel verwenden, den Sie beabsichtigen, und verhindert, dass Sie versehentlich einen Chiffretext mit einem KMS Schlüssel entschlüsseln, dem Sie nicht vertrauen. Geben Sie den KMS Zielschlüssel an, mit dem die Daten erneut verschlüsselt werden. Der Parameter ist immer erforderlich.--destination-key-id
In diesem Beispiel wird ein Schlüssel verwendetARN, Sie können jedoch jeden gültigen Schlüsselbezeichner verwenden. Fordern Sie die Klartextausgabe als Textwert an. Der Parameter weist an, nur den Wert des Felds aus der Ausgabe abzurufen.--query
CLIPlaintext
Der--output
Parameter gibt die Ausgabe als Text zurück. Base64-dekodieren Sie den Klartext und speichern Sie ihn in einer Datei. Im folgenden Beispiel wird der Wert des Parameters (|) an das Base64-Hilfsprogramm übergeben, das ihn dekodiert.Plaintext
Anschließend leitet er die dekodierte Ausgabe in die Datei um (>).ExamplePlaintext
Bevor Sie diesen Befehl ausführen, ersetzen Sie den Beispielschlüssel IDs durch gültige Schlüsselkennungen aus Ihrem AWS Konto.
aws kms re-encrypt \ --ciphertext-blob
fileb://ExampleEncryptedFile
\ --source-key-id1234abcd-12ab-34cd-56ef-1234567890ab
\ --destination-key-id0987dcba-09fe-87dc-65ba-ab0987654321
\ --queryCiphertextBlob
\ --outputtext
|
base64
--decode>
ExampleReEncryptedFile
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Die Ausgabe des
re-encrypt
Befehls wird base64-dekodiert und in einer Datei gespeichert.Weitere Informationen finden Sie unter ReEncrypt < https://docs.aws.amazon.com/kms/ latest/APIReference/API _ ReEncrypt .html in der AWS Key Management Service Reference. API
Beispiel 2: Um eine verschlüsselte Nachricht unter einem anderen symmetrischen KMS Schlüssel erneut zu verschlüsseln (Windows-Eingabeaufforderung).
Das folgende
re-encrypt
Befehlsbeispiel ist dasselbe wie das vorherige, außer dass es dascertutil
Hilfsprogramm zur Base64-Decodierung der Klartextdaten verwendet. Für dieses Verfahren sind zwei Befehle erforderlich, wie in den folgenden Beispielen gezeigt.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto.
aws kms re-encrypt
^
--ciphertext-blobfileb://ExampleEncryptedFile
^
--source-key-id1234abcd-12ab-34cd-56ef-1234567890ab
^
--destination-key-id0987dcba-09fe-87dc-65ba-ab0987654321
^
--queryCiphertextBlob
^
--outputtext
>
ExampleReEncryptedFile.base64
Verwenden Sie dann das
certutil
Hilfsprogrammcertutil -decode ExamplePlaintextFile.base64 ExamplePlaintextFile
Ausgabe:
Input Length = 18 Output Length = 12 CertUtil: -decode command completed successfully.
Weitere Informationen finden Sie unter ReEncrypt < https://docs.aws.amazon.com/kms/ latest/APIReference/API _ ReEncrypt .html in der AWS Key Management Service API Reference.
-
APIEinzelheiten finden Sie ReEncrypt
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztretire-grant
.
- AWS CLI
-
Um einen Zuschuss für einen Kundenhauptschlüssel zurückzuziehen
Im folgenden
retire-grant
Beispiel wird ein Zuschuss aus einem KMS Schlüssel gelöscht.Der folgende Beispielbefehl spezifiziert die
key-id
Parametergrant-id
und. Der Wert deskey-id
Parameters muss der Schlüssel ARN des KMS Schlüssels sein.aws kms retire-grant \ --grant-id
1234a2345b8a4e350500d432bccf8ecd6506710e1391880c4f7f7140160c9af3
\ --key-idarn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
list-grants
Befehl, um zu bestätigen, dass der Zuschuss zurückgezogen wurde.Weitere Informationen finden Sie im AWS Key Management Service Developer Guide unter Zurückziehen und Widerrufen von Zuschüssen.
-
APIEinzelheiten finden Sie unter RetireGrant AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztrevoke-grant
.
- AWS CLI
-
Um eine Erteilung für einen Kundenhauptschlüssel zu widerrufen
Im folgenden
revoke-grant
Beispiel wird ein Zuschuss aus einem KMS Schlüssel gelöscht. Der folgende Beispielbefehl spezifiziert diekey-id
Parametergrant-id
und. Der Wert deskey-id
Parameters kann die Schlüssel-ID oder der Schlüssel ARN des KMS Schlüssels sein.aws kms revoke-grant \ --grant-id
1234a2345b8a4e350500d432bccf8ecd6506710e1391880c4f7f7140160c9af3
\ --key-id1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
list-grants
Befehl, um zu bestätigen, dass der Zuschuss widerrufen wurde.Weitere Informationen finden Sie im AWS Key Management Service Developer Guide unter Zurückziehen und Widerrufen von Zuschüssen.
-
APIEinzelheiten finden Sie unter RevokeGrant AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztrotate-key-on-demand
.
- AWS CLI
-
So führen Sie die Rotation eines KMS Schlüssels bei Bedarf durch
Im folgenden
rotate-key-on-demand
Beispiel wird sofort die Rotation des Schlüsselmaterials für den angegebenen KMS Schlüssel initiiert.aws kms rotate-key-on-demand \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
Ausgabe:
{ "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" }
Weitere Informationen finden Sie unter So führen Sie die Schlüsselrotation bei Bedarf durch im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie RotateKeyOnDemand
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztschedule-key-deletion
.
- AWS CLI
-
Um das Löschen eines vom Kunden verwalteten KMS Schlüssels zu planen.
Im folgenden
schedule-key-deletion
Beispiel wird geplant, dass der angegebene vom Kunden verwaltete KMS Schlüssel innerhalb von 15 Tagen gelöscht wird.Der
--key-id
Parameter identifiziert den KMS Schlüssel. In diesem Beispiel wird ein ARN Schlüsselwert verwendet, Sie können jedoch entweder die Schlüssel-ID oder die ARN des Schlüssels verwenden. Der--pending-window-in-days
Parameter gibt KMS die Länge der Wartezeit von 7 bis 30 Tagen an. Standardmäßig beträgt die Wartezeit 30 Tage. In diesem Beispiel wird der Wert 15 angegeben, der angibt, dass der KMS Schlüssel 15 Tage nach Abschluss des Befehls dauerhaft gelöscht werden AWS soll.aws kms schedule-key-deletion \ --key-id arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab \ --pending-window-in-days 15
Die Antwort umfasst den SchlüsselARN, den Schlüsselstatus, die Wartezeit (
PendingWindowInDays
) und das Löschdatum in Unix-Zeit. Verwenden Sie die AWS KMS Konsole, um das Löschdatum in Ortszeit anzuzeigen. KMSSchlüssel imPendingDeletion
Schlüsselstatus können nicht für kryptografische Operationen verwendet werden.{ "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "DeletionDate": "2022-06-18T23:43:51.272000+00:00", "KeyState": "PendingDeletion", "PendingWindowInDays": 15 }
Weitere Informationen finden Sie unter Löschen von Schlüsseln im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie ScheduleKeyDeletion
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztsign
.
- AWS CLI
-
Beispiel 1: Um eine digitale Signatur für eine Nachricht zu generieren
Das folgende
sign
Beispiel generiert eine kryptografische Signatur für eine Kurznachricht. Die Ausgabe des Befehls enthält ein Base-64-codiertesSignature
Feld, das Sie mithilfe des Befehls überprüfen können.verify
Sie müssen eine zu signierende Nachricht und einen Signierungsalgorithmus angeben, den Ihr asymmetrischer KMS Schlüssel unterstützt. Verwenden Sie den
describe-key
Befehl, um die Signaturalgorithmen für Ihren KMS Schlüssel abzurufen.In AWS CLI 2.0 muss der Wert des
message
Parameters Base64-kodiert sein. Oder Sie können die Nachricht in einer Datei speichern und dasfileb://
Präfix verwenden, das angibt, Binärdaten aus der Datei AWS CLI zu lesen.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto. Die Schlüssel-ID muss einen asymmetrischen KMS Schlüssel mit der Schlüsselverwendung SIGN _ VERIFY darstellen.
msg=(echo 'Hello World' | base64) aws kms sign \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --message fileb://UnsignedMessage \ --message-type RAW \ --signing-algorithm RSASSA_PKCS1_V1_5_SHA_256
Ausgabe:
{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Signature": "ABCDEFhpyVYyTxbafE74ccSvEJLJr3zuoV1Hfymz4qv+/fxmxNLA7SE1SiF8lHw80fKZZ3bJ...", "SigningAlgorithm": "RSASSA_PKCS1_V1_5_SHA_256" }
Weitere Informationen zur Verwendung asymmetrischer KMS Schlüssel in AWS KMS finden Sie unter Asymmetrische Schlüssel in AWS KMS im AWS Key Management Service Developer Guide.
Beispiel 2: Um eine digitale Signatur in einer Datei zu speichern (Linux und) macOs
Das folgende
sign
Beispiel generiert eine kryptografische Signatur für eine Kurznachricht, die in einer lokalen Datei gespeichert ist. Der Befehl ruft auch dieSignature
Eigenschaft aus der Antwort ab, dekodiert sie mit Base64 und speichert sie in der Datei. ExampleSignature Sie können die Signaturdatei in einemverify
Befehl verwenden, der die Signatur überprüft.Der
sign
Befehl erfordert eine Base64-kodierte Nachricht und einen Signierungsalgorithmus, den Ihr asymmetrischer Schlüssel unterstützt. KMS Verwenden Sie den Befehl, um die Signaturalgorithmen abzurufen, die Ihr KMS Schlüssel unterstützt.describe-key
Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto. Die Schlüssel-ID muss einen asymmetrischen KMS Schlüssel mit der Schlüsselverwendung SIGN _ VERIFY darstellen.
echo 'hello world' | base64 > EncodedMessage aws kms sign \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --message fileb://EncodedMessage \ --message-type RAW \ --signing-algorithm RSASSA_PKCS1_V1_5_SHA_256 \ --output text \ --query Signature | base64 --decode > ExampleSignature
Mit diesem Befehl wird keine Ausgabe zurückgegeben. In diesem Beispiel wird die
Signature
Eigenschaft der Ausgabe extrahiert und in einer Datei gespeichert.Weitere Informationen zur Verwendung asymmetrischer KMS Schlüssel in AWS KMS finden Sie unter Asymmetrische Schlüssel in AWS KMS im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie unter AWS CLI Befehlsreferenz für die Anmeldung
.
-
Das folgende Codebeispiel zeigt die Verwendungtag-resource
.
- AWS CLI
-
Um einem KMS Schlüssel ein Tag hinzuzufügen
Das folgende
tag-resource
Beispiel fügt einem vom Kunden verwalteten KMS Schlüssel"Dept":"IT"
Tags hinzu"Purpose":"Test"
und fügt ihm Tags hinzu. Sie können solche Tags verwenden, um KMS Schlüssel zu beschriften und KMS Schlüsselkategorien für Berechtigungen und Prüfungen zu erstellen.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, aber Sie können ARN in diesem Befehl auch eine Schlüssel-ID oder einen Schlüssel verwenden.aws kms tag-resource \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --tags TagKey='Purpose',TagValue='Test' TagKey='Dept',TagValue='IT'Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
list-resource-tags
Befehl, um die Tags eines AWS KMS KMS Schlüssels anzuzeigen.Weitere Informationen zur Verwendung von Tags finden Sie unter Tagging Keys im AWS Key Management Service Developer Guide. AWS KMS
-
APIEinzelheiten finden Sie unter TagResource AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztuntag-resource
.
- AWS CLI
-
Um ein Tag aus einem KMS Schlüssel zu löschen
Im folgenden
untag-resource
Beispiel wird das Tag mit dem"Purpose"
Schlüssel aus einem vom Kunden verwalteten KMS Schlüssel gelöscht.Verwenden Sie den
key-id
Parameter, um den KMS Schlüssel anzugeben. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, aber Sie können ARN in diesem Befehl auch eine Schlüssel-ID oder einen Schlüssel verwenden. Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto.aws kms untag-resource \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --tag-key 'Purpose
'Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
list-resource-tags
Befehl, um die Tags auf einem AWS KMS KMS Schlüssel anzuzeigen.Weitere Informationen zur Verwendung von Tags finden Sie unter Tagging Keys im AWS Key Management Service Developer Guide. AWS KMS
-
APIEinzelheiten finden Sie unter UntagResource AWS CLI
Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztupdate-alias
.
- AWS CLI
-
Um einen Alias einem anderen KMS Schlüssel zuzuordnen
Im folgenden
update-alias
Beispiel wird der Aliasalias/test-key
einem anderen KMS Schlüssel zugeordnet.Der
--alias-name
Parameter gibt den Alias an. Der Wert des Aliasnamens muss mitalias/
.beginnen. Der--target-key-id
Parameter gibt den KMS Schlüssel an, der dem Alias zugeordnet werden soll. Sie müssen den aktuellen KMS Schlüssel für den Alias nicht angeben.aws kms update-alias \ --alias-name alias/test-key \ --target-key-id 1234abcd-12ab-34cd-56ef-1234567890ab
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
list-aliases
Befehl, um den Alias zu finden.Weitere Informationen finden Sie unter Aliase aktualisieren im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie UpdateAlias
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztupdate-custom-key-store
.
- AWS CLI
-
Beispiel 1: Um den Anzeigenamen eines benutzerdefinierten Schlüsselspeichers zu bearbeiten
Im folgenden
update-custom-key-store
Beispiel wird der Name des benutzerdefinierten Schlüsselspeichers geändert. Dieses Beispiel funktioniert für einen AWS HSM Cloud-Schlüsselspeicher oder einen externen Schlüsselspeicher.Verwenden Sie den
custom-key-store-id
, um den Schlüsselspeicher zu identifizieren. Verwenden Sie dennew-custom-key-store-name
Parameter, um den neuen Anzeigenamen anzugeben.Um den Anzeigenamen eines AWS HSM Cloud-Schlüsselspeichers zu aktualisieren, müssen Sie zuerst die Verbindung zum Schlüsselspeicher trennen, z. B. mit dem
disconnect-custom-key-store
Befehl. Sie können den Anzeigenamen eines externen Schlüsselspeichers aktualisieren, während er verbunden oder getrennt ist. Verwenden Sie dendescribe-custom-key-store
Befehl, um den Verbindungsstatus Ihres benutzerdefinierten Schlüsselspeichers zu ermitteln.aws kms update-custom-key-store \ --custom-key-store-id
cks-1234567890abcdef0
\ --new-custom-key-store-nameExampleKeyStore
Dieser Befehl gibt keine Daten zurück. Verwenden Sie einen Befehl, um zu überprüfen, ob der
describe-custom-key-stores
Befehl funktioniert hat.Weitere Informationen zum Aktualisieren eines AWS HSM Cloud-Schlüsselspeichers finden Sie unter Bearbeiten von AWS HSM Cloud-Schlüsselspeichereinstellungen im AWS Key Management Service Developer Guide.
Weitere Informationen zum Aktualisieren eines externen Schlüsselspeichers finden Sie unter Bearbeiten der Eigenschaften eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
Beispiel 2: So bearbeiten Sie das kmsuser-Passwort eines AWS Cloud-Schlüsselspeichers HSM
Im folgenden
update-custom-key-store
Beispiel wird der Wert deskmsuser
Kennworts auf das aktuelle Passwort für denkmsuser
HSM Cloud-Cluster aktualisiert, der dem angegebenen Schlüsselspeicher zugeordnet ist. Dieser Befehl ändert daskmsuser
Passwort im Cluster nicht. Es gibt nur AWS KMS das aktuelle Passwort an. Wenn KMS das aktuellekmsuser
Passwort nicht vorhanden ist, kann es keine Verbindung zum AWS Cloud HSM Key Store herstellen.NOTE: Bevor Sie einen AWS Cloud HSM Key Store aktualisieren, müssen Sie die Verbindung trennen. Verwenden Sie den
disconnect-custom-key-store
-Befehl. Nachdem der Befehl abgeschlossen ist, können Sie den AWS HSM Cloud-Schlüsselspeicher erneut verbinden. Verwenden Sie denconnect-custom-key-store
-Befehl.aws kms update-custom-key-store \ --custom-key-store-id
cks-1234567890abcdef0
\ --key-store-passwordExamplePassword
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie einen
describe-custom-key-stores
Befehl, um zu überprüfen, ob die Änderung wirksam war.Weitere Informationen zum Aktualisieren eines AWS HSM Cloud-Schlüsselspeichers finden Sie unter Bearbeiten von AWS HSM Cloud-Schlüsselspeicher-Einstellungen im AWS Key Management Service Developer Guide.
Beispiel 3: So bearbeiten Sie den AWS HSM Cloud-Cluster eines AWS HSM Cloud-Schlüsselspeichers
Im folgenden Beispiel wird der AWS HSM Cloud-Cluster, der einem AWS HSM Cloud-Schlüsselspeicher zugeordnet ist, in einen verwandten Cluster geändert, z. B. in ein anderes Backup desselben Clusters.
NOTE: Bevor Sie einen AWS HSM Cloud-Schlüsselspeicher aktualisieren, müssen Sie die Verbindung trennen. Verwenden Sie den
disconnect-custom-key-store
-Befehl. Nachdem der Befehl abgeschlossen ist, können Sie den AWS HSM Cloud-Schlüsselspeicher erneut verbinden. Verwenden Sie denconnect-custom-key-store
-Befehl.aws kms update-custom-key-store \ --custom-key-store-id
cks-1234567890abcdef0
\ --cloud-hsm-cluster-idcluster-1a23b4cdefg
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie einen
describe-custom-key-stores
Befehl, um zu überprüfen, ob die Änderung wirksam war.Weitere Informationen zum Aktualisieren eines AWS HSM Cloud-Schlüsselspeichers finden Sie unter Bearbeiten von AWS HSM Cloud-Schlüsselspeicher-Einstellungen im AWS Key Management Service Developer Guide.
Beispiel 4: So bearbeiten Sie die Anmeldeinformationen für die Proxyauthentifizierung eines externen Schlüsselspeichers
Im folgenden Beispiel werden die Anmeldeinformationen für die Proxyauthentifizierung für Ihren externen Schlüsselspeicher aktualisiert. Sie müssen
raw-secret-access-key
sowohl den als auch den angebenaccess-key-id
, auch wenn Sie nur einen der Werte ändern. Sie können diese Funktion verwenden, um ungültige Anmeldeinformationen zu korrigieren oder um die Anmeldeinformationen zu ändern, wenn der externe Schlüsselspeicher-Proxy sie wechselt.Richten Sie die Anmeldeinformationen für die Proxyauthentifizierung in AWS KMS Ihrem externen Schlüsselspeicher ein. Verwenden Sie dann diesen Befehl, um die Anmeldeinformationen für bereitzustellen. AWS KMS AWS KMSverwendet diese Anmeldeinformationen, um seine Anfragen an Ihren externen Schlüsselspeicher-Proxy zu signieren.
Sie können die Anmeldeinformationen für die Proxyauthentifizierung aktualisieren, während der externe Schlüsselspeicher verbunden oder getrennt ist. Verwenden Sie den Befehl, um den Verbindungsstatus Ihres benutzerdefinierten Schlüsselspeichers zu ermitteln.
describe-custom-key-store
aws kms update-custom-key-store \ --custom-key-store-id
cks-1234567890abcdef0
\ --xks-proxy-authentication-credential"AccessKeyId=ABCDE12345670EXAMPLE, RawSecretAccessKey=DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie einen
describe-custom-key-stores
Befehl, um zu überprüfen, ob die Änderung wirksam war.Weitere Informationen zum Aktualisieren eines externen Schlüsselspeichers finden Sie unter Bearbeiten der Eigenschaften eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
Beispiel 5: So bearbeiten Sie die Proxykonnektivität eines externen Schlüsselspeichers
Im folgenden Beispiel wird die Proxy-Konnektivitätsoption für externe Schlüsselspeicher von öffentlicher Endpunktkonnektivität auf VPC Endpunktdienstkonnektivität geändert. Sie müssen nicht nur den
xks-proxy-connectivity
Wert ändern, sondern auch denxks-proxy-uri-endpoint
Wert so ändern, dass er den privaten DNS Namen wiedergibt, der dem VPC Endpunktdienst zugeordnet ist. Sie müssen auch einenxks-proxy-vpc-endpoint-service-name
Wert hinzufügen.NOTE: Bevor Sie die Proxykonnektivität eines externen Speichers aktualisieren, müssen Sie die Verbindung trennen. Verwenden Sie den
disconnect-custom-key-store
-Befehl. Nach Abschluss des Befehls können Sie mithilfe desconnect-custom-key-store
Befehls erneut eine Verbindung zum externen Schlüsselspeicher herstellen.aws kms update-custom-key-store \ --custom-key-store-id
cks-1234567890abcdef0
\ --xks-proxy-connectivityVPC_ENDPOINT_SERVICE
\ --xks-proxy-uri-endpoint"https://myproxy-private.xks.example.com"
\ --xks-proxy-vpc-endpoint-service-name"com.amazonaws.vpce.us-east-1.vpce-svc-example"
Dieser Befehl gibt keine Ausgabe zurück. Verwenden Sie einen
describe-custom-key-stores
Befehl, um zu überprüfen, ob die Änderung wirksam war.Weitere Informationen zum Aktualisieren eines externen Schlüsselspeichers finden Sie unter Bearbeiten der Eigenschaften eines externen Schlüsselspeichers im AWS Key Management Service Developer Guide.
-
APIEinzelheiten finden Sie UpdateCustomKeyStore
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztupdate-key-description
.
- AWS CLI
-
Beispiel 1: Um einem vom Kunden verwalteten KMS Schlüssel eine Beschreibung hinzuzufügen oder zu ändern
Im folgenden
update-key-description
Beispiel wird einem vom Kunden verwalteten KMS Schlüssel eine Beschreibung hinzugefügt. Sie können denselben Befehl verwenden, um eine bestehende Beschreibung zu ändern.Der
--key-id
Parameter identifiziert den KMS Schlüssel im Befehl. In diesem Beispiel wird ein ARN Schlüsselwert verwendet, Sie können jedoch entweder die Schlüssel-ID oder den Schlüssel ARN des Schlüssels verwenden. KMS Der--description
Parameter gibt die neue Beschreibung an. Der Wert dieses Parameters ersetzt die aktuelle Beschreibung des KMS Schlüssels, falls vorhanden.aws kms update-key-description \ --key-id arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab \ --description "IT Department test key"
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Verwenden Sie den
describe-key
Befehl, um die Beschreibung eines KMS Schlüssels anzuzeigen.Weitere Informationen finden Sie UpdateKeyDescriptionin der APIReferenz AWS zum Key Management Service.
Beispiel 2: So löschen Sie die Beschreibung eines vom Kunden verwalteten KMS Schlüssels
Im folgenden
update-key-description
Beispiel wird die Beschreibung eines vom Kunden verwalteten KMS Schlüssels gelöscht.Der
--key-id
Parameter identifiziert den KMS Schlüssel im Befehl. In diesem Beispiel wird ein Schlüssel-ID-Wert verwendet, Sie können jedoch entweder die Schlüssel-ID oder den Schlüssel ARN des Schlüssels verwenden. KMS Der--description
Parameter mit einem leeren Zeichenfolgenwert („) löscht die vorhandene Beschreibung.aws kms update-key-description \ --key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \ --description ''
Mit diesem Befehl wird keine Ausgabe zurückgegeben. Um die Beschreibung eines KMS Schlüssels anzuzeigen, verwenden Sie den Befehl describe-key.
Weitere Informationen finden Sie UpdateKeyDescriptionin der Referenz zum AWS Key Management Service API.
-
APIEinzelheiten finden Sie UpdateKeyDescription
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie man es benutztverify
.
- AWS CLI
-
Um eine digitale Signatur zu verifizieren
Im folgenden
verify
Beispiel wird eine kryptografische Signatur für eine kurze, Base64-kodierte Nachricht überprüft. Die Schlüssel-ID, die Nachricht, der Nachrichtentyp und der Signaturalgorithmus müssen dieselben sein, die zum Signieren der Nachricht verwendet wurden. Die von Ihnen angegebene Signatur kann nicht Base64-codiert sein. Hilfe zur Dekodierung der Signatur, die dersign
Befehl zurückgibt, finden Sie in den Befehlsbeispielen.sign
Die Ausgabe des Befehls enthält ein boolesches
SignatureValid
Feld, das angibt, dass die Signatur verifiziert wurde. Wenn die Signaturüberprüfung fehlschlägt, schlägt auch derverify
Befehl fehl.Bevor Sie diesen Befehl ausführen, ersetzen Sie die Beispielschlüssel-ID durch eine gültige Schlüssel-ID aus Ihrem AWS Konto.
aws kms verify \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --messagefileb://EncodedMessage
\ --message-typeRAW
\ --signing-algorithmRSASSA_PKCS1_V1_5_SHA_256
\ --signaturefileb://ExampleSignature
Ausgabe:
{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "SignatureValid": true, "SigningAlgorithm": "RSASSA_PKCS1_V1_5_SHA_256" }
Weitere Informationen zur Verwendung asymmetrischer KMS Schlüssel finden Sie unter Verwenden asymmetrischer Schlüssel im AWS Key Management Service Developer Guide. AWS KMS
-
APIEinzelheiten finden Sie unter Überprüfen
in der AWS CLI Befehlsreferenz.
-