

• Das AWS Systems Manager CloudWatch Dashboard wird nach dem 30. April 2026 nicht mehr verfügbar sein. Kunden können weiterhin die CloudWatch Amazon-Konsole verwenden, um ihre CloudWatch Amazon-Dashboards anzusehen, zu erstellen und zu verwalten, so wie sie es heute tun. Weitere Informationen finden Sie in der [Amazon CloudWatch Dashboard-Dokumentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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.

# Arbeiten mit Parameterhierarchien in Parameter Store
<a name="sysman-paramstore-hierarchies"></a>

Das Verwalten Dutzender oder Hunderter Parameter als unsortierte Liste ist zeitaufwendig und fehleranfällig. Außerdem kann es sich als schwierig erweisen, für eine bestimmte Aufgabe den korrekten Parameter zu bestimmen. Sie könnten versehentlich den falschen Parameter verwenden, oder Sie erstellen möglicherweise mehrere Parameter, die dieselben Konfigurationsdaten verwenden. 

Mit Parameterhierarchien können Sie -Parameter leichter organisieren und verwalten. Bei einer Hierarchie handelt es sich um einen Parameternamen mit einem Pfad, den Sie mit Schrägstrichen (/) definieren.

**Topics**
+ [Erläutern der Parameterhierarchie anhand von Beispielen](#ps-hierarchy-examples)
+ [Abfragen von Parametern in einer Hierarchie](#ps-hierarchy-queries)
+ [Verwaltung von Parametern mithilfe von Hierarchien mit dem AWS CLI](#sysman-paramstore-walk-hierarchy)

## Erläutern der Parameterhierarchie anhand von Beispielen
<a name="ps-hierarchy-examples"></a>

Im folgendne Beispiel werden drei Hierarchieebenen im Namen verwendet. Damit wird Folgendes identifiziert:

`/Environment/Type of computer/Application/Data`

`/Dev/DBServer/MySQL/db-string13`

Sie können eine Hierarchie mit maximal 15 Ebenen erstellen. Wir empfehlen, dass Sie Hierarchien erstellen, die eine vorhandene hierarchische Struktur in Ihrer Umgebung abbilden, wie in den folgenden Beispielen gezeigt:
+ Ihre Umgebung für [kontinuierliche Integration](https://aws.amazon.com/devops/continuous-integration/) und [kontinuierliche Bereitstellung](https://aws.amazon.com/devops/continuous-delivery/) (CI/CD-Workflows)

  `/Dev/DBServer/MySQL/db-string`

  `/Staging/DBServer/MySQL/db-string`

  `/Prod/DBServer/MySQL/db-string`
+ Die Anwendungen, die Container verwenden

  ```
  /MyApp/.NET/Libraries/my-password
  ```
+ Die Unternehmensstruktur

  `/Finance/Accountants/UserList`

  `/Finance/Analysts/UserList`

  `/HR/Employees/EU/UserList`

Parameterhierarchien standardisieren die Möglichkeiten für die Erstellung von Parameter und vereinfachen mit der Zeit die Verwaltung von Parametern. Eine Parameterhierarchie kann außerdem dazu beitragen, den richtigen Parameter für eine Konfigurationsaufgabe zu bestimmen. Auf diese Weise können Sie vermeiden, dass mehrere Parameter mit denselben Konfigurationsdaten erstellt werden. 

Sie können eine Hierarchie erstellen, mit der Sie wie in den folgenden Beispielen gezeigt Parameter über verschiedene Umgebungen hinweg freigeben können; hier werden Passwörter in Entwicklungs- und Staging-Umgebungen verwendet.

`/DevTest/MyApp/database/my-password`

Sie könnten anschließend ein eindeutiges Passwort für Ihre produktive Umgebung erstellen, wie im folgenden Beispiel gezeigt:

`/prod/MyApp/database/my-password`

Sie müssen dabei nicht unbedingt eine Parameterhierarchie angeben. Sie können Parameter auf Ebene 1 erstellen. Diese werden als *Root*-Parameter bezeichnet. Um die Abwärtskompatibilität zu gewährleisten, sind alle Parameter, die in Parameter Store erstellt wurden, bevor Hierarchien eingeführt wurden, Root-Parameter. Die Systeme behandelt die folgenden beiden Parameter als Root-Parameter.

`/parameter-name`

`parameter-name`

## Abfragen von Parametern in einer Hierarchie
<a name="ps-hierarchy-queries"></a>

Ein weiterer Vorteil der Verwendung von Hierarchien ist die Möglichkeit, mithilfe der [GetParametersByPath](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html)API-Operation alle Parameter *unter* einer bestimmten Ebene in einer Hierarchie abzufragen. Wenn Sie beispielsweise den folgenden Befehl von AWS Command Line Interface (AWS CLI) aus ausführen, gibt das System alle Parameter unter der `Oncall` Ebene zurück:

```
aws ssm get-parameters-by-path --path /Dev/Web/Oncall
```

Beispielausgabe:

```
{
    "Parameters": [
        {
            "Name": "/Dev/Web/Oncall/Week1",
            "Type": "String",
            "Value": "John Doe",
            "Version": 1,
            "LastModifiedDate": "2024-11-22T07:18:53.510000-08:00",
            "ARN": "arn:aws:ssm:us-east-2:123456789012:parameter/Dev/Web/Oncall/Week1",
            "DataType": "text"
        },
        {
            "Name": "/Dev/Web/Oncall/Week2",
            "Type": "String",
            "Value": "Mary Major",
            "Version": 1,
            "LastModifiedDate": "2024-11-22T07:21:25.325000-08:00",
            "ARN": "arn:aws:ssm:us-east-2:123456789012:parameter/Dev/Web/Oncall/Week2",
            "DataType": "text"
        }
    ]
}
```

Sie können den entschlüsselten `SecureString`-Parameter in einer Hierarchie anzeigen, indem Sie den Pfad und den `--with-decryption`-Parameter angeben, wie im folgenden Beispiel gezeigt.

```
aws ssm get-parameters-by-path --path /Prod/ERP/SAP --with-decryption
```

## Verwaltung von Parametern mithilfe von Hierarchien mit dem AWS CLI
<a name="sysman-paramstore-walk-hierarchy"></a>

In dieser Anleitung wird beschrieben, wie Sie mit Parametern und Parameterhierarchien arbeiten können, indem Sie die AWS CLI verwenden.

**So verwalten Sie Parameter mithilfe von Hierarchien**

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

   Weitere Informationen finden Sie unter [Installieren oder Aktualisieren der neuesten Version von AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Führen Sie den folgenden Befehl aus, um einen Parameter zu erstellen, der den `allowedPattern`-Parameter und den Parametertyp `String` verwendet. Das zulässige Muster in diesem Beispiel bedeutet, dass der Wert für den Parameter zwischen 1 und 4 Zeichen lang sein muss.

------
#### [ Linux & macOS ]

   ```
   aws ssm put-parameter \
       --name "/MyService/Test/MaxConnections" \
       --value 100 --allowed-pattern "\d{1,4}" \
       --type String
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "/MyService/Test/MaxConnections" ^
       --value 100 --allowed-pattern "\d{1,4}" ^
       --type String
   ```

------

   Der Befehl gibt die Versionsnummer des Parameters zurück.

1. Führen Sie den folgenden Befehl aus und *versuchen* Sie, den gerade erstellten Parameter mit einem neuen Wert zu überschreiben.

------
#### [ Linux & macOS ]

   ```
   aws ssm put-parameter \
       --name "/MyService/Test/MaxConnections" \
       --value 10,000 \
       --type String \
       --overwrite
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "/MyService/Test/MaxConnections" ^
       --value 10,000 ^
       --type String ^
       --overwrite
   ```

------

   Das System gibt den folgenden Fehler zurück, da der neue Wert die Anforderungen des zulässigen Musters nicht erfüllt, das Sie im letzten Schritt angegeben haben.

   ```
   An error occurred (ParameterPatternMismatchException) when calling the PutParameter operation: Parameter value, cannot be validated against allowedPattern: \d{1,4}
   ```

1. Führen Sie den folgenden Befehl aus, um einen `SecureString`-Parameter zu erstellen, der den Datentyp Von AWS verwalteter Schlüssel verwendet. Das zulässige Muster in diesem Beispiel bedeutet, dass der Benutzer beliebige Zeichen eingeben kann, und der Wert zwischen 8 und 20 Zeichen lang sein muss.

------
#### [ Linux & macOS ]

   ```
   aws ssm put-parameter \
       --name "/MyService/Test/my-password" \
       --value "p#sW*rd33" \
       --allowed-pattern ".{8,20}" \
       --type SecureString
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "/MyService/Test/my-password" ^
       --value "p#sW*rd33" ^
       --allowed-pattern ".{8,20}" ^
       --type SecureString
   ```

------

1. Führen Sie die folgenden Befehle aus, um mehrere Parameter zu erstellen, die die Hierarchiestruktur aus dem letzten Schritt verwenden.

------
#### [ Linux & macOS ]

   ```
   aws ssm put-parameter \
       --name "/MyService/Test/DBname" \
       --value "SQLDevDb" \
       --type String
   ```

   ```
   aws ssm put-parameter \
       --name "/MyService/Test/user" \
       --value "SA" \
       --type String
   ```

   ```
   aws ssm put-parameter \
       --name "/MyService/Test/userType" \
       --value "SQLuser" \
       --type String
   ```

------
#### [ Windows ]

   ```
   aws ssm put-parameter ^
       --name "/MyService/Test/DBname" ^
       --value "SQLDevDb" ^
       --type String
   ```

   ```
   aws ssm put-parameter ^
       --name "/MyService/Test/user" ^
       --value "SA" ^
       --type String
   ```

   ```
   aws ssm put-parameter ^
       --name "/MyService/Test/userType" ^
       --value "SQLuser" ^
       --type String
   ```

------

1. Führen Sie den folgenden Befehl aus, um den Wert zweier Parameter abzurufen.

------
#### [ Linux & macOS ]

   ```
   aws ssm get-parameters \
       --names "/MyService/Test/user" "/MyService/Test/userType"
   ```

------
#### [ Windows ]

   ```
   aws ssm get-parameters ^
       --names "/MyService/Test/user" "/MyService/Test/userType"
   ```

------

1. Führen Sie den folgenden Befehl aus, um alle Parameter unter einer bestimmten Ebene abzufragen. 

------
#### [ Linux & macOS ]

   ```
   aws ssm get-parameters-by-path \
       --path "/MyService/Test"
   ```

------
#### [ Windows ]

   ```
   aws ssm get-parameters-by-path ^
       --path "/MyService/Test"
   ```

------

1. Führen Sie den folgenden Befehl aus, um zwei Parameter zu löschen.

------
#### [ Linux & macOS ]

   ```
   aws ssm delete-parameters \
       --names "/IADRegion/Dev/user" "/IADRegion/Dev/userType"
   ```

------
#### [ Windows ]

   ```
   aws ssm delete-parameters ^
       --names "/IADRegion/Dev/user" "/IADRegion/Dev/userType"
   ```

------