

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 Encryption SDK CLI Syntax und Parameterreferenz
<a name="crypto-cli-reference"></a>

Dieses Thema enthält Syntaxdiagramme und kurze Parameterbeschreibungen, die Ihnen bei der Verwendung des AWS Encryption SDK Command Line Interface (CLI, Befehlszeilenschnittstelle) helfen. Hilfe zum Umschließen von Schlüsseln und anderen Parametern finden Sie unter[So verwenden Sie die AWS Encryption CLI](crypto-cli-how-to.md). Beispiele finden Sie unter [Beispiele für die AWS Encryption CLI](crypto-cli-examples.md). Eine vollständige Dokumentation finden Sie in [Read the Docs](https://aws-encryption-sdk-cli.readthedocs.io/en/latest/).

**Topics**
+ [AWS Verschlüsselungs-CLI-Syntax](#crypto-cli-syntax)
+ [AWS Befehlszeilenparameter der Verschlüsselungs-CLI](#crypto-cli-parameters)
+ [Erweiterte Parameter](#cli-advanced-parameters)

## AWS Verschlüsselungs-CLI-Syntax
<a name="crypto-cli-syntax"></a>

Diese Syntaxdiagramme von AWS Encryption CLI zeigen die Syntax für jede Aufgabe, die Sie mit der AWS Encryption CLI ausführen. Sie stellen die empfohlene Syntax in AWS Encryption CLI Version 2.1 dar. *x* und höher.

Neue Sicherheitsfunktionen wurden ursprünglich in den AWS Encryption CLI Versionen 1.7 veröffentlicht. *x* und 2.0. *x.* Allerdings AWS Encryption CLI Version 1.8. *x* ersetzt Version 1.7. *x* und AWS Encryption CLI 2.1. *x* ersetzt 2.0. *x.* Einzelheiten finden Sie in der entsprechenden [Sicherheitsempfehlung](https://github.com/aws/aws-encryption-sdk-cli/security/advisories/GHSA-2xwp-m7mq-7q3r) im [aws-encryption-sdk-cli](https://github.com/aws/aws-encryption-sdk-cli/)Repository unter GitHub.

**Anmerkung**  
Sofern in der Parameterbeschreibung nichts anderes angegeben ist, kann jeder Parameter oder jedes Attribut in jedem Befehl nur einmal verwendet werden.  
Wenn Sie ein Attribut verwenden, das ein Parameter nicht unterstützt, ignoriert die AWS Encryption CLI dieses nicht unterstützte Attribut ohne Warnung oder Fehler.

**Hilfe anfordern**  
Um die vollständige AWS Encryption CLI-Syntax mit Parameterbeschreibungen zu erhalten, verwenden Sie `--help` oder`-h`.  

```
aws-encryption-cli (--help | -h)
```

**Die Version abrufen**  
Um die Versionsnummer Ihrer AWS Encryption CLI-Installation abzurufen, verwenden Sie`--version`. Geben Sie unbedingt die Version an, wenn Sie Fragen stellen, Probleme melden oder Tipps zur Verwendung der AWS Encryption CLI geben.  

```
aws-encryption-cli --version
```

**Daten verschlüsseln**  
Das folgende Syntaxdiagramm zeigt die Parameter, die ein **encrypt**-Befehl verwendet.   

```
aws-encryption-cli --encrypt
                   --input <input> [--recursive] [--decode]
                   --output <output> [--interactive] [--no-overwrite] [--suffix [<suffix>]] [--encode]
                   --wrapping-keys  [--wrapping-keys] ...
                       key=<keyID> [key=<keyID>] ...
                       [provider=<provider-name>] [region=<aws-region>] [profile=<aws-profile>]
                   --metadata-output <location> [--overwrite-metadata] | --suppress-metadata]
                   [--commitment-policy <commitment-policy>]
                   [--encryption-context <encryption_context> [<encryption_context> ...]]
                   [--max-encrypted-data-keys <integer>]
                   [--algorithm <algorithm_suite>]
                   [--caching <attributes>] 
                   [--frame-length <length>]
                   [-v | -vv | -vvv | -vvvv]
                   [--quiet]
```

**Daten entschlüsseln**  
Das folgende Syntaxdiagramm zeigt die Parameter, die ein **decrypt**-Befehl verwendet.   
In Version 1.8. *x*, der `--wrapping-keys` Parameter ist beim Entschlüsseln optional, wird aber empfohlen. Ab Version 2.1. *x*, der `--wrapping-keys` Parameter ist beim Verschlüsseln und Entschlüsseln erforderlich. Denn Sie können das **Schlüsselattribut** verwenden AWS KMS keys, um Wrapping-Schlüssel anzugeben (Best Practice) oder das **Discovery-Attribut** auf festlegen`true`, wodurch die Wrapping-Schlüssel, die die AWS Encryption CLI verwenden kann, nicht eingeschränkt werden.  

```
aws-encryption-cli --decrypt (or [--decrypt-unsigned]) 
                   --input <input> [--recursive] [--decode]
                   --output <output> [--interactive] [--no-overwrite]  [--suffix [<suffix>]] [--encode]           
                   --wrapping-keys  [--wrapping-keys] ...
                       [key=<keyID>] [key=<keyID>] ...
                       [discovery={true|false}] [discovery-partition=<aws-partition-name> discovery-account=<aws-account-ID> [discovery-account=<aws-account-ID>] ...] 
                       [provider=<provider-name>] [region=<aws-region>] [profile=<aws-profile>]
                   --metadata-output <location> [--overwrite-metadata] | --suppress-metadata]
                   [--commitment-policy <commitment-policy>]
                   [--encryption-context <encryption_context> [<encryption_context> ...]]
                   [--buffer]
                   [--max-encrypted-data-keys <integer>]
                   [--caching <attributes>]
                   [--max-length <length>]
                   [-v | -vv | -vvv | -vvvv]
                   [--quiet]
```

**Konfigurationsdateien verwenden**  
Sie können auf Konfigurationsdateien verweisen, die Parameter und deren Werte enthalten. Dies ist gleichwertig mit der Eingabe der Parameter und Werte im Befehl. Ein Beispiel finden Sie unter [Parameter in einer Konfigurationsdatei speichern](crypto-cli-how-to.md#crypto-cli-config-file).  

```
aws-encryption-cli @<configuration_file>

# In a PowerShell console, use a backtick to escape the @.
aws-encryption-cli `@<configuration_file>
```

## AWS Befehlszeilenparameter der Verschlüsselungs-CLI
<a name="crypto-cli-parameters"></a>

Diese Liste enthält eine grundlegende Beschreibung der Befehlsparameter von AWS Encryption CLI. Eine vollständige Beschreibung finden Sie in der [aws-encryption-sdk-cliDokumentation](http://aws-encryption-sdk-cli.readthedocs.io/en/latest/).

**--encrypt (-e)**  
Verschlüsselt die Eingabedaten. Jeder Befehl muss einen `--encrypt``--decrypt`, oder oder `--decrypt-unsigned` -Parameter haben.

**--decrypt (-d)**  
Entschlüsselt die Eingabedaten. Jeder Befehl muss einen `--encrypt``--decrypt`, oder `--decrypt-unsigned` -Parameter haben.

**--decrypt-unsigned [Eingeführt in Version 1.9. *x und 2.2.* *x*]**  
Der `--decrypt-unsigned` Parameter entschlüsselt Chiffretext und stellt sicher, dass Nachrichten vor der Entschlüsselung unsigniert sind. Verwenden Sie diesen Parameter, wenn Sie den `--algorithm` Parameter verwendet und eine Algorithmussuite ohne digitale Signatur zum Verschlüsseln von Daten ausgewählt haben. Wenn der Chiffretext signiert ist, schlägt die Entschlüsselung fehl.  
Sie können `--decrypt` oder `--decrypt-unsigned` für die Entschlüsselung verwenden, aber nicht beide.

**--wrapping-keys (-w) [Eingeführt in Version 1.8. *x*]**  <a name="wrapping-keys"></a>
Gibt die [Wrapping-Schlüssel](concepts.md#master-key) (oder *Hauptschlüssel*) an, die bei Verschlüsselungs- und Entschlüsselungsvorgängen verwendet werden. Sie können in jedem Befehl [mehrere `--wrapping-keys` Parameter](crypto-cli-how-to.md#cli-many-cmks) verwenden.   
Ab Version 2.1. *x*, der `--wrapping-keys` Parameter ist für Befehle zum Verschlüsseln und Entschlüsseln erforderlich. In Version 1.8. *x*, Verschlüsselungsbefehle erfordern `--wrapping-keys` entweder einen `--master-keys` Oder-Parameter. In Version 1.8. *x* decrypt-Befehle, ein `--wrapping-keys` Parameter ist optional, wird aber empfohlen.   
**Wenn Sie einen benutzerdefinierten Hauptschlüsselanbieter verwenden, benötigen Befehle zum Verschlüsseln und Entschlüsseln **Schlüssel** - und Anbieterattribute.** **Bei der Verwendung von AWS KMS keys Verschlüsselungsbefehlen ist ein Schlüsselattribut erforderlich.** Für Befehle zum Entschlüsseln ist ein **Schlüsselattribut** oder ein **Erkennungsattribut** mit einem Wert von `true` (aber nicht beiden) erforderlich. [Es hat sich **bewährt, das Schlüsselattribut** beim Entschlüsseln zu verwenden.AWS Encryption SDK](best-practices.md) Dies ist besonders wichtig, wenn Sie Stapel unbekannter Nachrichten entschlüsseln, z. B. Nachrichten in einem Amazon S3 S3-Bucket oder einer Amazon SQS SQS-Warteschlange.  
Ein Beispiel, das zeigt, wie Sie Schlüssel mit AWS KMS mehreren Regionen als Schlüssel zum Umschließen von Schlüsseln verwenden können, finden Sie unter. [Verwenden Sie mehrere Regionen AWS KMS keys](configure.md#config-mrks)  
**Attribute**: Der Wert des `--wrapping-keys`-Parameters besteht aus den folgenden Attributen. Das Format ist `attribute_name=value`.     
**Schlüssel**  
Identifiziert den Umbruchschlüssel, der bei dem Vorgang verwendet wurde. Das Format ist ein **key**= ID-Paar. Sie können mehrere **key**-Attribute in jedem `--wrapping-keys`-Parameterwert angeben.  
+ **Befehle verschlüsseln**: Alle Verschlüsselungsbefehle erfordern das **Schlüsselattribut**. Wenn Sie einen Befehl AWS KMS key in an encrypt verwenden, kann der Wert des **Schlüsselattributs** eine Schlüssel-ID, ein Schlüssel-ARN, ein Aliasname oder ein Alias-ARN sein. *Eine Beschreibung der AWS KMS Schlüsselkennungen finden Sie unter [Schlüsselkennungen im AWS Key Management Service Entwicklerhandbuch](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id).* 
+ **Befehle entschlüsseln**: Beim Entschlüsseln mit AWS KMS keys erfordert der `--wrapping-keys` Parameter ein **Schlüsselattribut mit einem [Schlüssel-ARN-Wert](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-ARN)** oder ein **Discovery-Attribut** mit einem Wert von `true` (aber nicht beide). Die Verwendung des **Schlüsselattributs** ist eine [AWS Encryption SDK bewährte](best-practices.md) Methode. Bei der Entschlüsselung mit einem benutzerdefinierten Hauptschlüsselanbieter ist das **Schlüsselattribut** erforderlich.
**Anmerkung**  
Um einen AWS KMS Wrapping-Schlüssel in einem Decrypt-Befehl anzugeben, muss der Wert des **Schlüsselattributs** ein Schlüssel-ARN sein. Wenn Sie eine Schlüssel-ID, einen Aliasnamen oder einen Alias-ARN verwenden, erkennt die AWS Encryption CLI den Wrapping-Schlüssel nicht.
Sie können mehrere **key**-Attribute in jedem `--wrapping-keys`-Parameterwert angeben. Alle **Anbieter** -, **Regions** - und **Profilattribute** in einem `--wrapping-keys` Parameter gelten jedoch für alle Schlüssel, die in diesem Parameterwert enthalten sind. Verwenden Sie mehrere `--wrapping-keys` Parameter im Befehl, um Wrapping Keys mit unterschiedlichen Attributwerten anzugeben.  
**Entdeckung**  
Ermöglicht der AWS Encryption CLI, beliebige AWS KMS key zum Entschlüsseln der Nachricht zu verwenden. Der **Erkennungswert** kann `true` oder `false` sein. Der Standardwert ist `false`. Das **Discovery-Attribut** ist nur in Entschlüsselungsbefehlen gültig und nur, wenn der Hauptschlüsselanbieter dies AWS KMS tut.   
Bei der Entschlüsselung mit AWS KMS keys erfordert der `--wrapping-keys` Parameter ein **Schlüsselattribut** oder ein **Discovery-Attribut** mit einem Wert von `true` (aber nicht beiden). Wenn Sie das **Schlüsselattribut** verwenden, können Sie ein **Erkennungsattribut** mit dem Wert von verwenden`false`, um die Erkennung explizit abzulehnen.   
+ `False`(Standard) — Wenn das **Discovery-Attribut** nicht angegeben ist oder sein Wert ist`false`, entschlüsselt die AWS Encryption CLI die Nachricht nur unter Verwendung des durch das **Schlüsselattribut** des `--wrapping-keys` Parameters AWS KMS keys angegebenen. Wenn Sie bei der Erkennung kein **Schlüsselattribut** angeben`false`, schlägt der Entschlüsselungsbefehl fehl. Dieser Wert unterstützt eine [bewährte Methode](best-practices.md) für die AWS Verschlüsselungs-CLI.
+ `True`— Wenn der Wert des **Discovery-Attributs** ist`true`, ruft die AWS Encryption CLI die AWS KMS keys From-Metadaten in der verschlüsselten Nachricht ab und verwendet diese, AWS KMS keys um die Nachricht zu entschlüsseln. Das **Discovery-Attribut** mit dem Wert von `true` verhält sich wie Versionen der AWS Encryption CLI vor Version 1.8. *x*, das es Ihnen nicht erlaubte, beim Entschlüsseln einen Wrapping-Schlüssel anzugeben. Ihre Absicht, einen zu verwenden, AWS KMS key ist jedoch ausdrücklich. Wenn Sie bei der Erkennung ein **Schlüsselattribut** angeben`true`, schlägt der Entschlüsselungsbefehl fehl. 

  Der `true` Wert kann dazu führen, dass die AWS Encryption CLI AWS KMS keys in verschiedenen AWS-Konten Regionen verwendet wird oder AWS KMS keys dass versucht wird, eine Verwendung zu verwenden, für die der Benutzer nicht autorisiert ist. 
Wenn **Discovery aktiviert** ist`true`, empfiehlt es sich, die Attribute **discovery-partition und **discovery-account**** zu verwenden, um die Verwendung auf die von Ihnen AWS KMS keys angegebenen Attribute zu beschränken. AWS-Konten   
**Discovery-Konto**  
Beschränkt die für die Entschlüsselung AWS KMS keys verwendeten Werte auf die angegebenen Werte. AWS-Konto Der einzig gültige Wert für dieses Attribut ist eine [AWS-Konto ID.](https://docs.aws.amazon.com/general/latest/gr/acct-identifiers.html)  
Dieses Attribut ist optional und nur in Entschlüsselungsbefehlen gültig, bei AWS KMS keys denen das **Discovery-Attribut** auf gesetzt `true` und das **Discovery-Partition-Attribut angegeben** ist.  
Jedes **Discovery-Account-Attribut** benötigt nur eine AWS-Konto ID, aber Sie können mehrere **Discovery-Account-Attribute** in demselben Parameter angeben. `--wrapping-keys` Alle in einem bestimmten `--wrapping-keys` Parameter angegebenen Konten müssen sich in der angegebenen Partition befinden. AWS   
**Discovery-Partition**  
Gibt die AWS Partition für die Konten im Attribut **discovery-account** an. Sein Wert muss eine AWS Partition sein, z. B. `aws``aws-cn`, oder. `aws-gov-cloud` Weitere Informationen finden Sie unter [Amazon Resource Names](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-syntax) in der *Allgemeine AWS-Referenz*.  
Dieses Attribut ist erforderlich, wenn Sie das Attribut **discovery-account** verwenden. Sie können in jedem Parameter nur ein **Discovery-Partition-Attribut** angeben. `--wrapping keys` Verwenden Sie AWS-Konten einen zusätzlichen `--wrapping-keys` Parameter, um mehrere Partitionen anzugeben.  
**provider**  
Identifiziert den [Masterschlüssel-Anbieter](concepts.md#master-key-provider). Das Format ist ein **provider**= ID-Paar. Der Standardwert **aws-kms steht** für. AWS KMS Dieses Attribut ist nur erforderlich, wenn der Hauptschlüsselanbieter dies nicht tut. AWS KMS  
**Region**  
Identifiziert den AWS-Region von einem AWS KMS key. Dieses Attribut ist nur gültig für AWS KMS keys. Es wird nur verwendet, wenn die **key**-ID keine Region angibt, andernfalls wird es ignoriert. Wenn es verwendet wird, überschreibt es die Standardregion im AWS CLI namens profile.   
**Profil**  
Identifiziert ein AWS CLI [benanntes Profil](https://docs.aws.amazon.com/cli/latest/userguide/cli-multiple-profiles.html). Dieses Attribut ist nur gültig für AWS KMS keys. Die Region im Profil wird nur verwendet, wenn die key-ID keine Region angibt und es kein **region**-Attribut im Befehl gibt. 

**--input (-i)**  
Gibt den Speicherort der zu ver- oder entschlüsselnden Daten an. Dieser Parameter muss angegeben werden. Der Wert kann ein Pfad zu einer Datei oder einem Verzeichnis oder ein Dateinamenmuster sein. Wenn Sie Eingaben an den Befehl weiterleiten (stdin), verwenden Sie `-`.  
Wenn die Eingabe nicht vorhanden ist, wird der Befehl fehlerfrei ohne Fehlermeldung oder Warnung ausgeführt.    
**--recursive (-r, -R)**  
Führt die Operation für Dateien im Eingabeverzeichnis und seinen Unterverzeichnissen aus. Dieser Parameter ist erforderlich, wenn der Wert von `--input` ein Verzeichnis ist.  
**--decode**  
Decodiert Base64-codierte Eingaben.   
Wenn Sie eine Nachricht entschlüsseln, die verschlüsselt und dann codiert wurde, müssen Sie die Nachricht decodieren, bevor Sie sie entschlüsseln. Dieser Parameter erledigt dies für Sie.   
Wenn Sie beispielsweise den `--encode`-Parameter in einem Verschlüsselungsbefehl verwendet haben, verwenden Sie den `--decode`-Parameter in dem entsprechenden Entschlüsselungsbefehl. Sie können diesen Parameter auch verwenden, um mit Base64 codierte Eingaben zu decodieren, bevor Sie sie verschlüsseln.

**--output (-o)**  
Gibt einen Zielspeicherort für die Ausgabe an. Dieser Parameter muss angegeben werden. Der Wert kann ein Dateiname oder ein vorhandenes Verzeichnis sein, oder `-` sein, womit die Ausgabe in die Befehlszeile geschrieben wird (stdout).   
Wenn das angegebene Ausgabeverzeichnis nicht vorhanden ist, schlägt der Befehl fehl. Wenn die Eingabe Unterverzeichnisse enthält, reproduziert die AWS Encryption CLI die Unterverzeichnisse unter dem von Ihnen angegebenen Ausgabeverzeichnis.   
Standardmäßig überschreibt die AWS Encryption CLI Dateien mit demselben Namen. Dieses Verhalten ändern Sie mit den Parametern `--interactive` oder `--no-overwrite`. Um die Überschreibwarnung zu unterdrücken, verwenden Sie den Parameter `--quiet`.  
Wenn ein Befehl, der eine Ausgabedatei überschreiben würde, fehlschlägt, ist die Ausgabedatei bereits gelöscht.  
**--interactive**  
Informiert Sie, bevor die Datei überschrieben wird.  
**--no-overwrite**  
Überschreibt keine Dateien. Wenn die Ausgabedatei existiert, überspringt die AWS Encryption CLI stattdessen die entsprechende Eingabe.  
**--Suffix**  
Gibt ein benutzerdefiniertes Dateinamensuffix für Dateien an, die die AWS Encryption CLI erstellt. Wenn Sie kein Suffix angeben wollen, verwenden Sie den Parameter ohne Wert (`--suffix`).  
Wenn der `--output`-Parameter keinen Dateinamen angibt, hat der Ausgabedateiname standardmäßig den gleichen Namen wie die Eingabedatei, jedoch mit dem Suffix. Das Suffix für Verschlüsselungsbefehle ist `.encrypted`. Das Suffix für Entschlüsselungsbefehle ist `.decrypted`.   
**--encode**  
Wendet die Base64-Codierung (binär in Text) auf die Ausgabe an. Die Kodierung verhindert, dass das Shell-Host-Programm Nicht-ASCII-Zeichen im Ausgabetext falsch interpretiert.  
Verwenden Sie diesen Parameter, wenn Sie eine verschlüsselte Ausgabe nach stdout (`--output -`) schreiben, insbesondere in einer PowerShell Konsole, auch wenn Sie die Ausgabe an einen anderen Befehl weiterleiten oder sie in einer Variablen speichern.

**--metadata-output**  
Gibt einen Speicherort für Metadaten über die kryptografischen Operationen an. Geben Sie einen Pfad und einen Dateinamen ein. Wenn das Verzeichnis nicht vorhanden ist, schlägt der Befehl fehl. Um die Metadaten in die Befehlszeile zu schreiben (stdout), verwenden Sie `-`.   
Sie können die Befehlsausgabe (`--output`) und Metadatenausgaben (`--metadata-output`) nicht im selben Befehl auf stdout schreiben. Auch wenn der Wert von `--input` oder `--output` ein Verzeichnis (ohne Dateinamen) ist, können Sie die Metadatenausgabe nicht in das gleiche Verzeichnis oder in ein Unterverzeichnis dieses Verzeichnisses schreiben.  
Wenn Sie eine vorhandene Datei angeben, hängt die AWS Encryption CLI standardmäßig neue Metadatensätze an jeden Inhalt der Datei an. Mit dieser Funktion können Sie eine einzige Datei erstellen, die die Metadaten für alle Ihre kryptografischen Operationen enthält. Um den Inhalt einer bestehenden Datei zu überschreiben, verwenden Sie den `--overwrite-metadata`-Parameter.  
Die AWS Encryption CLI gibt für jeden Verschlüsselungs- oder Entschlüsselungsvorgang, den der Befehl ausführt, einen JSON-formatierten Metadatensatz zurück. Jeder Metadatensatz enthält die vollständigen Pfade zur Ein- und Ausgabedatei, den Verschlüsselungskontext, das Algorithmen-Paket und andere praktische Informationen, anhand derer Sie die Operation überprüfen und sicherstellen können, ob sie Ihren Sicherheitsstandards entspricht.    
**--overwrite-metadata**  
Überschreibt den Inhalt in der Metadaten-Ausgabedatei. Standardmäßig fügt der `--metadata-output`-Parameter Metadaten an vorhandenen Inhalt der Datei an.

**--suppress-metadata (-S)**  
Unterdrückt die Metadaten über die Verschlüsselungs- oder Entschlüsselungsoperation. 

**--commitment-policy**  <a name="syntax-commitment-policy"></a>
Gibt die [Commitment-Richtlinie für Befehle](concepts.md#commitment-policy) zum Verschlüsseln und Entschlüsseln an. Die Commitment-Richtlinie bestimmt, ob Ihre Nachricht mit der Sicherheitsfunktion [Key Commitment](concepts.md#key-commitment) ver- oder entschlüsselt wird.  
Der `--commitment-policy` Parameter wurde in Version 1.8 eingeführt. *x.* Es ist gültig für Befehle zum Verschlüsseln und Entschlüsseln.  
**In Version 1.8. ***x*, die AWS Encryption CLI verwendet die `forbid-encrypt-allow-decrypt` Commitment-Richtlinie für alle Verschlüsselungs- und Entschlüsselungsvorgänge. Wenn Sie den `--wrapping-keys` Parameter in einem Verschlüsselungs- oder Entschlüsselungsbefehl verwenden, ist ein `--commitment-policy` Parameter mit dem `forbid-encrypt-allow-decrypt` Wert erforderlich. Wenn Sie den `--wrapping-keys` Parameter nicht verwenden, ist der `--commitment-policy` Parameter ungültig. Wenn Sie eine Verpflichtungsrichtlinie festlegen, wird ausdrücklich verhindert, dass sich Ihre Verpflichtungsrichtlinie automatisch ändert, `require-encrypt-require-decrypt` wenn Sie auf Version 2.1 aktualisieren. *x*  
Ab **Version 2.1. ***x*, alle Werte der Verpflichtungspolitik werden unterstützt. Der `--commitment-policy` Parameter ist optional und der Standardwert ist`require-encrypt-require-decrypt`.   
Dieser Parameter hat die folgenden Werte:  
+ `forbid-encrypt-allow-decrypt`— Mit Schlüsselzusage kann nicht verschlüsselt werden. Es kann Chiffretexte entschlüsseln, die mit oder ohne Schlüsselbindung verschlüsselt wurden. 

  In Version 1.8. *x*, das ist der einzig gültige Wert. Die AWS Encryption CLI verwendet die `forbid-encrypt-allow-decrypt` Commitment-Richtlinie für alle Verschlüsselungs- und Entschlüsselungsvorgänge. 
+ `require-encrypt-allow-decrypt`— Verschlüsselt nur mit Schlüsselzusage. Entschlüsselt mit und ohne Schlüsselbindung. Dieser Wert wurde in Version 2.1 eingeführt. *x.*
+ `require-encrypt-require-decrypt`(Standard) — Verschlüsselt und entschlüsselt nur mit Schlüsselzusage. Dieser Wert wurde in Version 2.1 eingeführt. *x.* Dies ist der Standardwert in den Versionen 2.1. *x* und später. Mit diesem Wert entschlüsselt die AWS Encryption CLI keinen Chiffretext, der mit früheren Versionen von verschlüsselt wurde. AWS Encryption SDK
Ausführliche Informationen zur Festlegung Ihrer Verpflichtungsrichtlinie finden Sie unter. [Migrieren Sie Ihre AWS Encryption SDK](migration.md)

**--encryption-context (-c)**  
Gibt einen [Verschlüsselungskontext](crypto-cli-how-to.md#crypto-cli-encryption-context) für die Operation an. Dieser Parameter ist nicht erforderlich, wird jedoch empfohlen.   
+ In einem `--encrypt` -Befehl geben Sie ein oder mehrere `name=value` Paare an. Verwenden Sie Leerzeichen, um die zu trennen.
+ Geben Sie in einem `--decrypt` Befehl `name=value` Paare, `name` Elemente ohne Werte oder beides ein.
Wenn der `name` oder `value` in einem `name=value`-Paar Leerzeichen oder Sonderzeichen enthält, schließen Sie gesamte Paar in Anführungszeichen ein. Beispiel, `--encryption-context "department=software development"`.

**--buffer (-b) [Eingeführt in Version 1.9. *x und 2.2*. *x*]**  
Gibt Klartext erst zurück, nachdem alle Eingaben verarbeitet wurden, einschließlich der Überprüfung der digitalen Signatur, falls eine vorhanden ist.

**-- max-encrypted-data-keys [Eingeführt in Version 1.9. *x* und 2.2. *x*]**  
Gibt die maximale Anzahl verschlüsselter Datenschlüssel in einer verschlüsselten Nachricht an. Dieser Parameter ist optional.   
Gültige Werte sind 1 — 65.535. Wenn Sie diesen Parameter weglassen, erzwingt die AWS Encryption CLI kein Maximum. Eine verschlüsselte Nachricht kann bis zu 65.535 (2^16 — 1) verschlüsselte Datenschlüssel enthalten.  
Sie können diesen Parameter in Verschlüsselungsbefehlen verwenden, um eine falsch formatierte Nachricht zu verhindern. Sie können ihn in Entschlüsselungsbefehlen verwenden, um bösartige Nachrichten zu erkennen und zu verhindern, dass Nachrichten mit zahlreichen verschlüsselten Datenschlüsseln, die Sie nicht entschlüsseln können, entschlüsselt werden. Einzelheiten und ein Beispiel finden Sie unter [Beschränkung verschlüsselter Datenschlüssel](configure.md#config-limit-keys).

**--help (-h)**  
Gibt Verwendung und Syntax in der Befehlszeile aus.

**--version**  
Ruft die Version der AWS Encryption CLI ab.

**-v \$1 -vv \$1 -vvv \$1 -vvvv**  
Zeigt ausführliche Informationen, Warnungen und Debugging-Nachrichten an. Die Details in der Ausgabe nehmen mit der Anzahl der `v` im Parameter zu. Die detaillierteste Einstellung (`-vvvv`) gibt Daten auf Debugging-Ebene von der AWS Encryption CLI und allen von ihr verwendeten Komponenten zurück.

**--quiet (-q)**  
Unterdrückt Warnmeldungen, z. B. die Nachricht, die angezeigt wird, wenn Sie eine Ausgabedatei überschreiben.

**--master-keys (-m) [Veraltet]**  
Der Parameter --master-keys ist in 1.8 veraltet. *x und wurde* in Version 2.1 entfernt. *x.* Verwenden Sie stattdessen den Parameter [--wrapping-keys](#wrapping-keys).
Gibt die in Ver- und Entschlüsselungsoperationen verwendeten [Masterschlüssel](concepts.md#master-key) an. Sie können in einem Befehl mehrere Masterschlüsselparameter verwenden.  
Der `--master-keys`-Parameter muss in Verschlüsselungsbefehle angegeben werden. Er ist in Entschlüsselungsbefehlen nur erforderlich, wenn Sie einen benutzerdefinierten (nicht-AWS KMS) Hauptschlüsselanbieter verwenden.  
**Attribute**: Der Wert des `--master-keys`-Parameters besteht aus den folgenden Attributen. Das Format ist `attribute_name=value`.     
**Schlüssel**  
Identifiziert den [Wrapping-Schlüssel](concepts.md#master-key), der bei dem Vorgang verwendet wurde. Das Format ist ein **key**= ID-Paar. Das **key**Attribut muss in allen Verschlüsselungsbefehlen angegeben werden.   
Wenn Sie einen Befehl AWS KMS key in an encrypt verwenden, kann der Wert des **Schlüsselattributs** eine Schlüssel-ID, ein Schlüssel-ARN, ein Aliasname oder ein Alias-ARN sein. *Einzelheiten zu AWS KMS Schlüsselkennungen finden Sie unter [Schlüsselkennungen im Entwicklerhandbuch](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id).AWS Key Management Service *  
Das **Schlüsselattribut** ist in Entschlüsselungsbefehlen erforderlich, wenn dies beim Hauptschlüsselanbieter nicht der Fall ist. AWS KMS Das **Schlüsselattribut** ist in Befehlen nicht zulässig, die Daten entschlüsseln, die unter einem verschlüsselt wurden. AWS KMS key  
Sie können mehrere **key**-Attribute in jedem `--master-keys`-Parameterwert angeben. Die **provider**-, **region**- und **profile**-Attribute gelten jedoch für alle Masterschlüssel im Parameterwert. Um Masterschlüssel mit unterschiedlichen Attributwerten anzugeben, verwenden Sie mehrere `--master-keys`-Parameter im Befehl.   
**provider**  
Identifiziert den [Masterschlüssel-Anbieter](concepts.md#master-key-provider). Das Format ist ein **provider**= ID-Paar. Der Standardwert **aws-kms** steht für. AWS KMS Dieses Attribut ist nur erforderlich, wenn der Hauptschlüsselanbieter dies nicht tut. AWS KMS  
**Region**  
Identifiziert den AWS-Region von einem AWS KMS key. Dieses Attribut ist nur gültig für AWS KMS keys. Es wird nur verwendet, wenn die **key**-ID keine Region angibt, andernfalls wird es ignoriert. Wenn es verwendet wird, überschreibt es die Standardregion im AWS CLI namens profile.   
**Profil**  
Identifiziert ein AWS CLI [benanntes Profil](https://docs.aws.amazon.com/cli/latest/userguide/cli-multiple-profiles.html). Dieses Attribut ist nur gültig für AWS KMS keys. Die Region im Profil wird nur verwendet, wenn die key-ID keine Region angibt und es kein **region**-Attribut im Befehl gibt. 

## Erweiterte Parameter
<a name="cli-advanced-parameters"></a>

**--algorithm**  
Gibt ein alternatives [Algorithmen-Paket](concepts.md#crypto-algorithm) an. Dieser Parameter ist optional und nur in Verschlüsselungsbefehlen gültig.   
Wenn Sie diesen Parameter weglassen, verwendet die AWS Encryption CLI eine der Standard-Algorithmus-Suiten für die in Version 1.8 AWS Encryption SDK eingeführte. *x.* Beide Standardalgorithmen verwenden AES-GCM mit einer [HKDF](https://en.wikipedia.org/wiki/HKDF) -, einer ECDSA-Signatur und einem 256-Bit-Verschlüsselungsschlüssel. Man verwendet Key Commitment, man nicht. Die Wahl der Standard-Algorithmus-Suite wird durch die [Commitment-Richtlinie](concepts.md#commitment-policy) für den Befehl bestimmt.  
Die Standard-Algorithmus-Suiten werden für die meisten Verschlüsselungsvorgänge empfohlen. Eine Liste gültiger Werte finden Sie unter den Werten für den `algorithm`-Parameter in [Read the Docs](https://aws-encryption-sdk-cli.readthedocs.io/en/latest/index.html#execution).

**--frame-length**  
Erstellt die Ausgabe mit angegebenen Frame-Länge. Dieser Parameter ist optional und nur in Verschlüsselungsbefehlen gültig.   
Geben Sie einen Wert in Bytes ein. Gültige Werte sind 0 und 1 — 2^31 - 1. Ein Wert von 0 steht für Daten ohne Frame. Die Standardeinstellung ist 4096 (Byte).   
Verwenden Sie nach Möglichkeit gerahmte Daten. Das AWS Encryption SDK unterstützt Daten ohne Frames nur für die Verwendung in älteren Versionen. Einige Sprachimplementierungen von AWS Encryption SDK können immer noch nicht gerahmten Chiffretext generieren. Alle unterstützten Sprachimplementierungen können gerahmten und ungerahmten Chiffretext entschlüsseln.

**--max-length**  
Gibt die maximale Frame-Größe (oder die maximale Inhaltslänge für Nachrichten ohne Frame) in Bytes an, die aus verschlüsselten Nachrichten gelesen werden. Dieser Parameter ist optional und nur in Entschlüsselungsbefehlen gültig. Es wurde entwickelt, um Sie vor der Entschlüsselung extrem großer bösartiger Verschlüsselungstexte zu schützen.   
Geben Sie einen Wert in Bytes ein. Wenn Sie diesen Parameter weglassen, wird die Framegröße beim AWS Encryption SDK Entschlüsseln nicht begrenzt.

**--caching**  
Aktiviert das [Datenschlüssel-Caching](data-key-caching.md), womit Datenschlüssel wiederverwendet werden können, statt für jede Eingabedatei einen neuen Datenschüssel zu generieren. Dieser Parameter unterstützt ein erweitertes Szenario. Lesen Sie unbedingt die Dokumentation zum [Datenschlüssel-Caching](data-key-caching.md), bevor Sie diese Funktion verwenden.   
Der `--caching`-Parameter hat die folgenden Attribute.    
**capacity (erforderlich)**  
Legt die maximale Anzahl der Einträge im Cache fest.   
Der minimale Wert beträgt 1. Es gibt keinen Höchstwert.  
**max\$1age (erforderlich)**  
Ermitteln Sie, wie lange Cache-Einträge in Sekunden verwendet werden, und zwar ab dem Zeitpunkt, zu dem sie dem Cache hinzugefügt werden.  
Geben Sie einen Wert größer als 0 ein. Es gibt keinen Höchstwert.  
**max\$1messages\$1encrypted (optional)**  
Legt die maximale Anzahl der Nachrichten fest, die ein im Cache befindlicher Eintrag verschlüsseln kann.   
Gültige Werte sind 1 — 2^32. Der Standardwert ist 2^32 (Nachrichten).  
**max\$1bytes\$1encrypted (optional)**  
Legt die maximale Anzahl der Bytes fest, die ein im Cache befindlicher Eintrag verschlüsseln kann.  
Gültige Werte sind 0 und 1 — 2^63 - 1. Der Standardwert ist 2^63 - 1 (Nachrichten). Bei einem Wert von 0 können Sie Datenschlüssel-Caching nur verwenden, wenn Sie leere Nachrichtenzeichenfolgen verschlüsseln.