View a markdown version of this page

Erstellen eines Parameter Store Parameter mit dem AWS CLI - AWS Systems Manager

• Das AWS Systems Manager CloudWatch Dashboard wird nach dem 30. April 2026 nicht mehr verfügbar sein. Kunden können die CloudWatch Amazon-Konsole weiterhin verwenden, um ihre CloudWatch Amazon-Dashboards anzuzeigen, zu erstellen und zu verwalten, so wie sie es heute tun. Weitere Informationen finden Sie in der Amazon CloudWatch Dashboard-Dokumentation.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen eines Parameter Store Parameter mit dem AWS CLI

Sie können die AWS Command Line Interface (AWS CLI) verwenden, um die SecureString Parametertypen StringStringList,, und zu erstellen. Warten Sie nach dem Löschen eines Parameters mindestens 30 Sekunden, um einen Parameter mit dem gleichen Namen zu erstellen.

Parameter können nicht referenziert oder in den Werten anderer Parameter verschachtelt werden. Sie können {{}} oder {{ssm:parameter-name}} nicht in einen Parameterwert aufnehmen.

Anmerkung

Parameter sind nur dort verfügbar AWS-Region , wo sie erstellt wurden.

Erstellen eines String-Parameters mit dem AWS CLI

  1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie das noch nicht getan haben.

    Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.

  2. Führen Sie den folgenden Befehl aus, um einen Parameter vom String-Typ zu erstellen. Ersetzen Sie jeden example resource placeholder durch Ihre Informationen.

    Linux & macOS
    aws ssm put-parameter \ --name "parameter-name" \ --value "parameter-value" \ --type String \ --tags "Key=tag-key,Value=tag-value"
    Windows
    aws ssm put-parameter ^ --name "parameter-name" ^ --value "parameter-value" ^ --type String ^ --tags "Key=tag-key,Value=tag-value"

    –oder–

    Führen Sie den folgenden Befehl aus, um einen Parameter zu erstellen, der eine Amazon Machine Image (AMI)-ID als Parameterwert enthält.

    Linux & macOS
    aws ssm put-parameter \ --name "parameter-name" \ --value "an-AMI-id" \ --type String \ --data-type "aws:ec2:image" \ --tags "Key=tag-key,Value=tag-value"
    Windows
    aws ssm put-parameter ^ --name "parameter-name" ^ --value "an-AMI-id" ^ --type String ^ --data-type "aws:ec2:image" ^ --tags "Key=tag-key,Value=tag-value"

    Die Option --name unterstützt Hierarchien. Weitere Informationen zu Hierarchien finden Sie unter Arbeiten mit Parameterhierarchien in Parameter Store.

    Die Option --data-type muss nur angegeben werden, wenn Sie einen Parameter erstellen, der eine AMI-ID enthält. Es wird überprüft, dass der eingegebene Parameterwert eine ordnungsgemäß formatierte Amazon Elastic Compute Cloud (Amazon EC2) AMI-ID ist. Für alle anderen Parameter lautet der Standarddatentyp text und Sie können optional einen Wert angeben. Weitere Informationen finden Sie unter Verwenden der Unterstützung für native Parameter in Parameter Store für Amazon-Machine-Image-IDs.

    Wichtig

    Bei Erfolg gibt der Befehl die Versionsnummer des Parameters zurück. Ausnahme: Wenn Sie aws:ec2:image als Datentyp angegeben haben, bedeutet eine neue Versionsnummer in der Antwort nicht, dass der Parameterwert bereits validiert wurde. Weitere Informationen finden Sie unter Verwenden der Unterstützung für native Parameter in Parameter Store für Amazon-Machine-Image-IDs.

    Im folgenden Beispiel werden einem Parameter die Tags zweier Schlüssel-Wert-Paare hinzugefügt.

    Linux & macOS
    aws ssm put-parameter \ --name parameter-name \ --value "parameter-value" \ --type "String" \ --tags '[{"Key":"Region","Value":"East"},{"Key":"Environment", "Value":"Production"}]'
    Windows
    aws ssm put-parameter ^ --name parameter-name ^ --value "parameter-value" ^ --type "String" ^ --tags [{\"Key\":\"Region1\",\"Value\":\"East1\"},{\"Key\":\"Environment1\",\"Value\":\"Production1\"}]

    Im folgenden Beispiel wird eine Parameterhierarchie im Namen verwendet, um einen String-Klartext-Parameter zu erstellen. Er gibt die Versionsnummer des Parameters zurück. Weitere Informationen zu Parameterhierarchien finden Sie unter Arbeiten mit Parameterhierarchien in Parameter Store.

    Linux & macOS

    Parameter nicht in einer Hierarchie

    aws ssm put-parameter \ --name "golden-ami" \ --type "String" \ --value "ami-12345abcdeEXAMPLE"

    Parameter in einer Hierarchie

    aws ssm put-parameter \ --name "/amis/linux/golden-ami" \ --type "String" \ --value "ami-12345abcdeEXAMPLE"
    Windows

    Parameter nicht in einer Hierarchie

    aws ssm put-parameter ^ --name "golden-ami" ^ --type "String" ^ --value "ami-12345abcdeEXAMPLE"

    Parameter in einer Hierarchie

    aws ssm put-parameter ^ --name "/amis/windows/golden-ami" ^ --type "String" ^ --value "ami-12345abcdeEXAMPLE"
  3. Führen Sie den folgenden Befehl aus, um den letzten Parameterwert anzuzeigen und die Details des neuen Parameters zu überprüfen.

    aws ssm get-parameters --names "/Test/IAD/helloWorld"

    Das System gibt unter anderem folgende Informationen zurück

    {
        "InvalidParameters": [],
        "Parameters": [
            {            
                "Name": "/Test/IAD/helloWorld",
                "Type": "String",
                "Value": "My updated parameter value",
                "Version": 2,
                "LastModifiedDate": "2020-02-25T15:55:33.677000-08:00",
                "ARN": "arn:aws:ssm:us-east-2:123456789012:parameter/Test/IAD/helloWorld"            
            }
        ]
    }

Führen Sie den folgenden Befehl aus, um den Parameterwert zu ändern. Er gibt die Versionsnummer des Parameters zurück.

aws ssm put-parameter --name "/Test/IAD/helloWorld" --value "My updated 1st parameter" --type String --overwrite

Führen Sie den folgenden Befehl aus, um den Verlauf der Parameterwerte anzuzeigen.

aws ssm get-parameter-history --name "/Test/IAD/helloWorld"

Führen Sie den folgenden Befehl aus, um diesen Parameter in einem Befehl zu verwenden.

aws ssm send-command --document-name "AWS-RunShellScript" --parameters '{"commands":["echo {{ssm:/Test/IAD/helloWorld}}"]}' --targets "Key=instanceids,Values=instance-ids"

Führen Sie den folgenden Befehl aus, wenn Sie nur den Parameterwert abrufen möchten.

aws ssm get-parameter --name testDataTypeParameter --query "Parameter.Value"

Führen Sie den folgenden Befehl aus, wenn Sie nur den Parameterwert mithilfe von get-parameters abrufen möchten.

aws ssm get-parameters --names "testDataTypeParameter" --query "Parameters[*].Value"

Führen Sie den folgenden Befehl aus, um die Metadaten zum Parameter anzuzeigen.

aws ssm describe-parameters --filters "Key=Name,Values=/Test/IAD/helloWorld"
Anmerkung

Der Name muss großgeschrieben werden.

Das System gibt unter anderem folgende Informationen zurück

{
    "Parameters": [
        {
            "Name": "helloworld",
            "Type": "String",
            "LastModifiedUser": "arn:aws:iam::123456789012:user/JohnDoe",
            "LastModifiedDate": 1494529763.156,
            "Version": 1,
            "Tier": "Standard",
            "Policies": []           
        }
    ]
}

Erstellen eines StringList Parameters mit dem AWS CLI

  1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie das noch nicht getan haben.

    Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.

  2. Führen Sie den folgenden Befehl aus, um einen Parameter zu erstellen. Ersetzen Sie jeden example resource placeholder durch Ihre Informationen.

    Linux & macOS
    aws ssm put-parameter \ --name "parameter-name" \ --value "a-comma-separated-list-of-values" \ --type StringList \ --tags "Key=tag-key,Value=tag-value"
    Windows
    aws ssm put-parameter ^ --name "parameter-name" ^ --value "a-comma-separated-list-of-values" ^ --type StringList ^ --tags "Key=tag-key,Value=tag-value"
    Anmerkung

    Bei Erfolg gibt der Befehl die Versionsnummer des Parameters zurück.

    In diesem Beispiel werden die Tags zweier Schlüssel-Wert-Paare an ein Parameter hinzugefügt. (Führen Sie, abhängig von der Art des Betriebssystems auf Ihrem lokalen Computer, einen der folgenden Befehle aus. Die von einer lokalen Windows-Maschine auszuführende Version enthält die Escape-Zeichen ("\"), mit denen Sie den Befehl von Ihrem Befehlszeilen-Tool aus ausführen.)

    Im folgenden Beispiel für StringList wird eine Parameterhierarchie verwendet.

    Linux & macOS
    aws ssm put-parameter \ --name /IAD/ERP/Oracle/addUsers \ --value "Milana,Mariana,Mark,Miguel" \ --type StringList
    Windows
    aws ssm put-parameter ^ --name /IAD/ERP/Oracle/addUsers ^ --value "Milana,Mariana,Mark,Miguel" ^ --type StringList
    Anmerkung

    Die Elemente einer StringList müssen durch ein Komma (,) getrennt werden. Sie können keine anderen Satzzeichen oder Sonderzeichen als Escape-Zeichen für Elemente in der Liste verwenden. Verwenden Sie den Typ String, wenn ein Parameterwert ein Komma erfordert.

  3. Führen Sie den Befehl get-parameters aus, um die Details zu einem Parameter zu überprüfen. Beispiel:

    aws ssm get-parameters --name "/IAD/ERP/Oracle/addUsers"

Erstellen eines SecureString Parameters mit dem AWS CLI

Gehen Sie folgendermaßen vor, um einen SecureString-Parameter zu erstellen. Ersetzen Sie jeden example resource placeholder durch Ihre Informationen.

Nur der Wert eines SecureString-Parameters wird verschlüsselt. Der Name des Parameters, die Beschreibung und andere Eigenschaften sind nicht verschlüsselt.

Wichtig

Parameter Store unterstützt nur KMS-Schlüssel zur symmetrischen Verschlüsselung. Sie können keinen KMS-Schlüssel zur asymmetrischen Verschlüsselung verwenden, um Ihre Parameter zu verschlüsseln. Wie Sie feststellen, ob ein KMS-Schlüssel symmetrisch oder asymmetrisch ist, erfahren Sie unter Erkennen symmetrischer und asymmetrischer Schlüssel im AWS Key Management Service -Entwicklerhandbuch.

  1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie das noch nicht getan haben.

    Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.

  2. Führen Sie einen der folgenden Befehle aus, um einen Parameter zu erstellen, der den Datentyp SecureString verwendet.

    Linux & macOS

    Erstellen Sie einen SecureString Parameter mit der Standardeinstellung Von AWS verwalteter Schlüssel

    aws ssm put-parameter \ --name "parameter-name" \ --value "parameter-value" \ --type "SecureString"

    Einen SecureString-Parameter erstellen, der einen vom Kunden verwalteten Schlüssel verwendet

    aws ssm put-parameter \ --name "parameter-name" \ --value "a-parameter-value, for example merchant-739482" \ --type "SecureString" --tags "Key=tag-key,Value=tag-value"

    Erstellen Sie einen SecureString Parameter, der einen benutzerdefinierten AWS KMS Schlüssel verwendet

    aws ssm put-parameter \ --name "parameter-name" \ --value "a-parameter-value, for example merchant-739482" \ --type "SecureString" \ --key-id "your-account-ID/the-custom-AWS KMS-key" \ --tags "Key=tag-key,Value=tag-value"
    Windows

    Erstellen Sie einen SecureString Parameter unter Verwendung des Standardparameters Von AWS verwalteter Schlüssel

    aws ssm put-parameter ^ --name "parameter-name" ^ --value "parameter-value" ^ --type "SecureString"

    Einen SecureString-Parameter erstellen, der einen vom Kunden verwalteten Schlüssel verwendet

    aws ssm put-parameter ^ --name "parameter-name" ^ --value "a-parameter-value, for example merchant-739482" ^ --type "SecureString" ^ --tags "Key=tag-key,Value=tag-value"

    Erstellen Sie einen SecureString Parameter, der einen benutzerdefinierten AWS KMS Schlüssel verwendet

    aws ssm put-parameter ^ --name "parameter-name" ^ --value "a-parameter-value, for example merchant-739482" ^ --type "SecureString" ^ --key-id " ^ --tags "Key=tag-key,Value=tag-value"account-ID/the-custom-AWS KMS-key"

    Wenn Sie einen SecureString-Parameter erstellen, indem Sie den Von AWS verwalteter Schlüssel -Schlüssel in Ihrem Konto und Ihrer Region verwenden, müssen Sie keinen Wert für den --key-id-Parameter angeben.

    Anmerkung

    Um den Ihrem AWS-Konto und AWS KMS key zugewiesenen Wert zu verwenden AWS-Region, entfernen Sie den key-id Parameter aus dem Befehl. Weitere Informationen zum Konfigurieren einer Regel in AWS KMS keys finden Sie unter AWS Key Management Service im AWS Key Management Service -Entwicklerhandbuch.

    Um einen vom Kunden verwalteten Schlüssel anstelle des Schlüssels zu verwenden, der Ihrem Konto Von AWS verwalteter Schlüssel zugewiesen ist, geben Sie den Schlüssel mithilfe des --key-id Parameters an. Der Parameter unterstützt die folgenden KMS-Parameterformate.

    • Beispiel für Schlüssel-Amazon-Ressourcenname (ARN):

      arn:aws:kms:us-east-2:123456789012:key/key-id

    • Beispiel für den Alias-ARN:

      arn:aws:kms:us-east-2:123456789012:alias/alias-name

    • Beispiel: Key-ID

      12345678-1234-1234-1234-123456789012

    • Beispiel für den Aliasnamen:

      alias/MyAliasName

    Sie können einen vom Kunden verwalteten Schlüssel mithilfe der AWS-Managementkonsole oder der AWS KMS API erstellen. Mit den folgenden AWS CLI Befehlen wird ein vom Kunden verwalteter Schlüssel in AWS-Region Ihrer aktuellen Version erstellt AWS-Konto.

    aws kms create-key

    Verwenden Sie einen Befehl im folgenden Format, um einen SecureString-Parameter mit dem Schlüssel zu erstellen, den Sie gerade generiert haben.

    Das folgende Beispiel verwendet einen Parameter, der /myapp/prod/vendor/merchant-id mit einer Händler-ID als verschlüsselten Wert benannt ist, und einem AWS KMS key.

    Linux & macOS
    aws ssm put-parameter \ --name /myapp/prod/vendor/merchant-id \ --value "merchant-739482" \ --type SecureString \ --key-id arn:aws:kms:us-east-2:123456789012:key/1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e
    Windows
    aws ssm put-parameter ^ --name /myapp/prod/vendor/merchant-id ^ --value "merchant-739482" ^ --type SecureString ^ --key-id arn:aws:kms:us-east-2:123456789012:key/1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e
  3. Führen Sie den folgenden Befehl aus, um die Details zu einem Parameter zu überprüfen.

    Wenn Sie keinen with-decryption-Parameter bzw. den no-with-decryption-Parameter angeben, gibt der Befehl eine verschlüsselte GUID zurück.

    Linux & macOS
    aws ssm get-parameters \ --name "the-parameter-name-you-specified" \ --with-decryption
    Windows
    aws ssm get-parameters ^ --name "the-parameter-name-you-specified" ^ --with-decryption
  4. Führen Sie den folgenden Befehl aus, um die Metadaten zum Parameter anzuzeigen.

    Linux & macOS
    aws ssm describe-parameters \ --filters "Key=Name,Values=the-name-that-you-specified"
    Windows
    aws ssm describe-parameters ^ --filters "Key=Name,Values=the-name-that-you-specified"
  5. Führen Sie den folgenden Befehl aus, um den Parameterwert zu ändern, wenn Sie keinen vom Kunden verwalteten AWS KMS key verwenden.

    Linux & macOS
    aws ssm put-parameter \ --name "the-name-that-you-specified" \ --value "a-new-parameter-value" \ --type "SecureString" \ --overwrite
    Windows
    aws ssm put-parameter ^ --name "the-name-that-you-specified" ^ --value "a-new-parameter-value" ^ --type "SecureString" ^ --overwrite

    –oder–

    Führen Sie einen der folgenden Befehle aus, um den Parameterwert zu ändern, wenn Sie einen vom Kunden verwalteten AWS KMS key verwenden.

    Linux & macOS
    aws ssm put-parameter \ --name "the-name-that-you-specified" \ --value "a-new-parameter-value" \ --type "SecureString" \ --key-id "the-KMSkey-ID" \ --overwrite
    aws ssm put-parameter \ --name "the-name-that-you-specified" \ --value "a-new-parameter-value" \ --type "SecureString" \ --key-id "account-alias/the-KMSkey-ID" \ --overwrite
    Windows
    aws ssm put-parameter ^ --name "the-name-that-you-specified" ^ --value "a-new-parameter-value" ^ --type "SecureString" ^ --key-id "the-KMSkey-ID" ^ --overwrite
    aws ssm put-parameter ^ --name "the-name-that-you-specified" ^ --value "a-new-parameter-value" ^ --type "SecureString" ^ --key-id "account-alias/the-KMSkey-ID" ^ --overwrite
  6. Führen Sie den folgenden Befehl aus, um den letzten Parameterwert anzuzeigen.

    Linux & macOS
    aws ssm get-parameters \ --name "the-name-that-you-specified" \ --with-decryption
    Windows
    aws ssm get-parameters ^ --name "the-name-that-you-specified" ^ --with-decryption
  7. Führen Sie den folgenden Befehl aus, um den Verlauf der Parameterwerte anzuzeigen.

    Linux & macOS
    aws ssm get-parameter-history \ --name "the-name-that-you-specified"
    Windows
    aws ssm get-parameter-history ^ --name "the-name-that-you-specified"
Anmerkung

Sie können einen Parameter mit einem verschlüsselten Wert manuell erstellen. In diesem Fall müssen Sie den SecureString Parametertyp nicht auswählen, da der Wert bereits verschlüsselt ist. Wenn Sie möchtenSecureString, wird Ihr Parameter doppelt verschlüsselt.

Alle SecureString-Werte werden standardmäßig als verschlüsselter Text angezeigt. Um einen SecureString Wert zu entschlüsseln, muss ein Benutzer die Berechtigung haben, den API-Vorgang AWS KMS Decrypt aufzurufen. Weitere Informationen zur Konfiguration der AWS KMS -Zugriffskontrolle finden Sie unter Authentifizierung und Zugriffskontrolle für AWS KMS im AWS Key Management Service -Entwicklerhandbuch.

Wichtig

Wenn Sie den KMS-Schlüsselalias für den KMS-Schlüssel ändern, der zum Verschlüsseln eines Parameters verwendet wird, müssen Sie auch den Schlüsselalias aktualisieren, auf den der Parameter verweist. AWS KMS Dies gilt nur für den KMS-Schlüsselalias; die Schlüssel-ID, die ein Alias anfügt, bleibt unverändert, es sei denn, Sie löschen den gesamten Schlüssel.

Erstellen eines mehrzeiligen Parameters mit dem AWS CLI

Sie können den verwenden AWS CLI , um einen Parameter mit Zeilenumbrüchen zu erstellen. Verwenden Sie Zeilenumbrüche, um den Text in längere Parameterwerte aufzuteilen, um die Lesbarkeit zu verbessern, oder aktualisieren Sie beispielsweise den Inhalt von Parametern mit mehreren Absätzen für eine Webseite. Sie können den Inhalt in eine JSON-Datei einschließen und die --cli-input-json-Option verwenden, indem Sie Zeilenumbruchzeichen wie \n verwenden, wie im folgenden Beispiel gezeigt.

  1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie das noch nicht getan haben.

    Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.

  2. Führen Sie den folgenden Befehl aus, um einen mehrzeiligen Parameter zu erstellen.

    Linux & macOS
    aws ssm put-parameter \ ‐‐name "MultiLineParameter3" \ ‐type String \ ‐value "{ \"Value\": \"LineOne\nLineTwo\nLine3\nLine4\"}"
    Windows
    aws ssm put-parameter ^ ‐name "MultiLineParameter3" ^ ‐type String ^ ‐value "{ \"Value\": \"LineOne\nLineTwo\nLine3\nLine4\"}"
    Linux & macOS
    aws ssm put-parameter \ --name "MultiLineParameter" \ --type String \ --cli-input-json file://MultiLineParameter.json
    Windows
    aws ssm put-parameter ^ --name "MultiLineParameter" ^ --type String ^ --cli-input-json file://MultiLineParameter.json

    Im folgenden Beispiel werden die Inhalte der Datei MultiLineParameter.json angezeigt.

    { "Value": "<para>Paragraph One</para>\n<para>Paragraph Two</para>\n<para>Paragraph Three</para>" }

Der gespeicherte Parameterwert wird wie folgt gespeichert.

<para>Paragraph One</para>
<para>Paragraph Two</para>
<para>Paragraph Three</para>