

• 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.

# AWS Codebeispiele für Secrets und Configuration Provider
<a name="ascp-examples"></a>

## Beispiele für ASCP-Authentifizierung und Zugriffskontrolle
<a name="ascp-auth-access-examples"></a>

### Beispiel: IAM-Richtlinie, die dem Service Amazon EKS Pod Identity (pods.eks.amazonaws.com) ermöglicht, die Rolle zu übernehmen und die Sitzung zu taggen:
<a name="ascp-auth-access-example-1"></a>

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "pods.eks.amazonaws.com"
      },
      "Action": [
        "sts:AssumeRole",
        "sts:TagSession"
      ]
    }
  ]
}
```

------

## SecretProviderClass
<a name="ascp-examples-secretproviderclass"></a>

Sie verwenden YAML, um zu beschreiben, welche Parameter mithilfe von ASCP in Amazon EKS gemountet werden sollen. Beispiele finden Sie unter [SecretProviderClass Verwendung](#ascp-scenarios-secretproviderclass).

### SecretProviderClass YAML-Struktur
<a name="ascp-examples-secretproviderclass-1"></a>

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
   name: name
spec:
  provider: aws
  parameters:
    region:
    failoverRegion:
    pathTranslation:
    usePodIdentity:
    preferredAddressType:
    objects:
```

Das Feld Parameter enthält die Details der Mounting-Anfrage:

**Region**  
(Optional) Der Wert AWS-Region des Parameters. Wenn Sie dieses Feld nicht verwenden, sucht der ASCP die Region aus der Anmerkung auf dem Knoten. Diese Suche steigert den Overhead von Mounting-Anfragen. Daher wird empfohlen, die Region für Cluster mit einer großen Anzahl von Pods anzugeben.  
Wenn Sie auch `failoverRegion` angeben, versucht ASCP, den Parameter aus beiden Regionen abzurufen. Wenn eine Region einen `4xx`-Fehler zurückgibt, z. B. aufgrund eines Authentifizierungsproblems, mountet ASCP keinen der Parameter. Wenn der Parameter erfolgreich von `region``` abgerufen wurde, mountet ASCP diesen Parameterwert. Wenn das Secret nicht erfolgreich von `region` abgerufen wurde, aber erfolgreich von `failoverRegion` abgerufen werden konnte, mountet ASCP diesen Parameter-Wert.

**`failoverRegion`**  
(Optional) Wenn Sie dieses Feld angeben, versucht ASCP, das Secret aus den Regionen abzurufen, die in `region` und diesem Feld definiert sind. Wenn eine Region einen `4xx`-Fehler zurückgibt, z. B. aufgrund eines Authentifizierungsproblems, mountet ASCP keinen der Parameter. Wenn der Parameter erfolgreich von `region` abgerufen wurde, mountet ASCP diesen Parameterwert. Wenn das Secret nicht erfolgreich von `region` abgerufen wurde, aber erfolgreich von `failoverRegion` abgerufen werden konnte, mountet ASCP diesen Parameter-Wert. Ein Beispiel für die Nutzung dieses Felds finden Sie unter [Multiregionaler Parameter-Failover](#multi-region-failover).

**pathTranslation (Pfadangabe)**  
(Optional) Ein einzelnes Ersetzungszeichen, das verwendet werden soll, wenn der Dateiname in Amazon EKS das Pfadtrennzeichen enthält, z. B. Schrägstrich (/) unter Linux. ASCP kann keine gemountete Datei erstellen, die ein Pfadtrennzeichen enthält. Stattdessen ersetzt ASCP das Pfadtrennzeichen durch ein anderes Zeichen. Wenn Sie dieses Feld nicht verwenden, ist das Ersatzzeichen ein Unterstrich (\$1), d. h. `My/Path/Parameter` wird als `My_Path_Parameter` gemountet.   
Um die Zeichenersetzung zu verhindern, geben Sie die Zeichenfolge `False` ein.

***usePodIdentity***  
(Optional) Legt den Authentifizierungsansatz fest. Wenn nicht angegeben, wird standardmäßig IAM Roles for Service Accounts (IRSA) verwendet.  
+ Verwenden Sie einen der folgenden Werte, um EKS Pod Identity zu verwenden: `"true"`, `"True"`, `"TRUE"`, `"t"` oder `"T"`.
+ Wenn Sie explizit IRSA nutzen möchten, verwenden Sie einen der folgenden Werte: `"false"`, `"False"`, `"FALSE"`, `"f"` oder `"F"`.

***preferredAddressType***  
(Optional) Gibt den bevorzugten IP-Adresstyp für die Pod-Identity-Agent-Endpunktkommunikation an. Das Feld ist nur bei Verwendung der EKS-Pod-Identity-Funktion relevant und wird ignoriert, wenn IAM-Roles for Service Accounts verwendet wird. Bei den Werten wird zwischen Groß- und Kleinschreibung unterschieden. Folgende sind gültige Werte:  
+ `"ipv4"`, `"IPv4"` „, oder `"IPV4"` — Erzwingt die Verwendung des Pod Identity IPv4 Agent-Endpunkts
+ `"ipv6"`,`"IPv6"`, oder `"IPV6"` — Erzwingen Sie die Verwendung des Pod Identity IPv6 Agent-Endpunkts
+ nicht spezifiziert — auto Endpunktauswahl verwenden, zuerst den IPv4 Endpunkt ausprobieren und bei einem Fehler auf den IPv6 Endpunkt IPv4 zurückgreifen

**objects (Objekte)**  
Eine Zeichenfolge, die eine YAML-Deklaration der bereitzustellenden Secrets enthält. Wir empfehlen, eine mehrzeilige YAML-Zeichenfolge oder ein Pipe-Zeichen (\$1) zu verwenden.    
**objectName (Objektname)**  
Erforderlich Gibt den Namen des Parameters oder Secrets an, das abgerufen werden soll. Für Parameter Store ist dies der [https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html#API_GetParameter_RequestParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html#API_GetParameter_RequestParameters) des Parameters und kann entweder der Name oder der vollständige ARN sein. Für Secrets Manager ist dies der Parameter [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html#API_GetSecretValue_RequestParameters](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html#API_GetSecretValue_RequestParameters) und kann entweder der Anzeigename oder der vollständige ARN des Secrets sein.   
**objectType**  
Erforderlich, wenn Sie keinen Secrets Manager ARN für `objectName` verwenden. Geben Sie als Parameter Store `ssmparameter`ein. Verwenden Sie für Secrets Manager `secretsmanager`.   
**objectAlias**  
(Optional) Der Dateiname des Secrets im Amazon-EKS-Pod. Wenn Sie dieses Feld nicht angeben, wird `objectName` als Dateiname angezeigt.  
**objectVersion (Objektversion)**  
(Optional) Die Versions-ID des Parameters. Nicht empfohlen, da Sie jedes Mal, wenn Sie den Parameter aktualisieren, die Versions-ID aktualisieren müssen. Standardmäßig wird die neueste Version verwendet. Wenn Sie eine `failoverRegion` angeben, stellt dieses Feld den primären `objectVersion` dar.  
**objectVersionLabel**  
(Optional) Der Alias für die Version. Die Standardversion ist die neueste Version`AWSCURRENT`. Wenn Sie eine `failoverRegion` angeben, stellt dieses Feld den primären `objectVersionLabel` dar.  
**jmesPath**  
(Optional) Eine Zuordnung der Schlüssel im Parameter zu den Dateien, die in Amazon EKS gemountet werden sollen. Um dieses Feld zu verwenden, muss Ihr Parameterwert im JSON-Format vorliegen.   
Das folgende Beispiel zeigt, wie ein JSON-kodierter Parameter aussieht.  

```
{
    "username" : "myusername",
    "password" : "mypassword"
}
```
Die Schlüssel sind `username` und `password`. Der Wert, der mit `username` verbunden ist, ist `myusername`, und der Wert, der mit `password` verbunden ist, ist `mypassword`.  
Wenn Sie dieses Feld verwenden, müssen Sie die Unterfelder `path` und `objectAlias` angeben.    
**Pfad**  
Ein Schlüssel aus einem Schlüssel-Wert-Paar im JSON des Parameterwerts. Wenn das Feld einen Bindestrich enthält, verwenden Sie einfache Anführungszeichen als Escape-Zeichen. Beispiel: `path: '"hyphenated-path"'`  
**objectAlias**  
Der Dateiname, der im Amazon-EKS-Pod gemountet werden soll. Wenn das Feld einen Bindestrich enthält, verwenden Sie einfache Anführungszeichen als Escape-Zeichen. Beispiel: `objectAlias: '"hyphenated-alias"'`  
**`failoverObject`**  
(Optional) Wenn Sie dieses Feld angeben, versucht ASCP, den im primären `objectName` angegebenen Parameter und den im `failoverObject`-`objectName`-Unterfeld angegebenen Parameter abzurufen. Wenn einer der Parameter einen `4xx`-Fehler zurückgibt, z. B. aufgrund eines Authentifizierungsproblems, mountet ASCP keinen der Parameter. Wenn der Parameter erfolgreich vom primären `objectName` abgerufen wurde, mountet ASCP diesen Parameterwert. Wenn der Parameter nicht erfolgreich vom primären `objectName` abgerufen wurde, aber erfolgreich vom Failover-`objectName` abgerufen werden konnte, mountet ASCP diesen Parameterwert. Wenn Sie dieses Feld angeben, müssen Sie auch das Feld `objectAlias` angeben. Ein Beispiel für die Nutzung dieses Felds finden Sie unter [Failover auf einen anderen Parameter](#failover-parameter).  
In der Regel verwenden Sie dieses Feld, wenn es sich bei dem Failover-Parameter nicht um ein Replikat handelt. Ein Beispiel dazu, wie Sie ein Replikat angeben, finden Sie unter [Multiregionaler Parameter-Failover](#multi-region-failover).    
**objectName (Objektname)**  
Der Name oder vollständige ARN des Failover-Parameters. Wenn Sie einen ARN verwenden, muss die Region im ARN mit dem Feld `failoverRegion` übereinstimmen.  
**objectVersion (Objektversion)**  
(Optional) Die Versions-ID des Parameters. Muss mit der primären `objectVersion` übereinstimmen. Nicht empfohlen, da Sie jedes Mal, wenn Sie den Parameter aktualisieren, die Versions-ID aktualisieren müssen. Standardmäßig wird die neueste Version verwendet.   
**objectVersionLabel**  
(Optional) Der Alias für die Version. Die Standardversion ist die neueste Version`AWSCURRENT`.

### Erstellen Sie eine SecretProviderClass Basiskonfiguration, um Parameter in Ihren Amazon EKS-Pods zu mounten.
<a name="create-SecretProviderClass-config"></a>

------
#### [ Pod Identity ]

SecretProviderClass um einen Parameter im selben Amazon EKS-Cluster zu verwenden:

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: aws-parameter-store
spec:
  provider: aws
  parameters:
    objects: |
      - objectName: "MyParameter"
        objectType: "ssmparameter"
    usePodIdentity: "true"
```

------
#### [ IRSA ]

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: deployment-aws-parameter
spec:
  provider: aws
  parameters:
    objects: |
        - objectName: "MyParameter"
          objectType: "ssmparameter"
```

------

### SecretProviderClass Verwendung
<a name="ascp-scenarios-secretproviderclass"></a>

Verwenden Sie diese Beispiele, um `SecretProviderClass`-Konfigurationen für verschiedene Szenarien zu erstellen.

#### Beispiel: Parameter nach Namen oder ARN mounten
<a name="mount-by-name-arn"></a>

Dieses Beispiel zeigt, wie drei verschiedene Parametertypen gemountet werden:
+ Ein Parameter, der anhand des vollständigen ARN angegeben wird
+ Ein Parameter, der anhand des Namens angegeben wird
+ Eine Parameterversion eines Secrets

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: aws-parameters
spec:
  provider: aws
  parameters:
    objects: |
      - objectName: "arn:aws:ssm:us-east-2:777788889999:parameter:MyParameter2-d4e5f6"
      - objectName: "MyParameter3"
        objectType: "ssmparameter"
      - objectName: "MyParameter4"
        objectType: "ssmparameter"
        objectVersionLabel: "AWSCURRENT"
```

#### Beispiel: Schlüssel-Wert-Paare aus einem Parameter mounten
<a name="mount-key-value-pairs"></a>

Dieses Beispiel zeigt, wie bestimmte Schlüssel-Wert-Paare aus einem Parameter im JSON-Format gemountet werden:

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: aws-parameters
spec:
  provider: aws
  parameters:
    objects: |
      - objectName: "arn:aws:ssm:us-east-2:777788889999:parameter:MyParameter-a1b2c3"
        jmesPath: 
            - path: username
              objectAlias: dbusername
            - path: password
              objectAlias: dbpassword
```

#### Beispiel: verschiedene Failover-Konfigurationen
<a name="failover-examples"></a>

Diese Beispiele veranschaulichen, wie Failover für Parameter konfiguriert wird.

##### Multiregionaler Parameter-Failover
<a name="multi-region-failover"></a>

Dieses Beispiel zeigt, wie Sie einen automatischen Failover für einen Parameter konfigurieren, der über mehrere Regionen repliziert wird:

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: aws-parameters
spec:
  provider: aws
  parameters:
    region: us-east-1
    failoverRegion: us-east-2
    objects: |
      - objectName: "MyParameter"
```

##### Failover auf einen anderen Parameter
<a name="failover-parameter"></a>

Dieses Beispiel zeigt, wie Sie einen Failover auf einen anderen Parameter (kein Replikat) konfigurieren:

```
apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: aws-parameters
spec:
  provider: aws
  parameters:
    region: us-east-1
    failoverRegion: us-east-2
    objects: |
      - objectName: "arn:aws:ssm:us-east-1:777788889999:parameter:MyParameter-a1b2c3"
        objectAlias: "MyMountedParameter"
        failoverObject: 
          - objectName: "arn:aws:ssm:us-east-2:777788889999:parameter:MyFailoverParameter-d4e5f6"
```

## Weitere Ressourcen
<a name="additional-resources"></a>

Weitere Informationen zur Verwendung von ASCP mit Amazon EKS finden Sie in den folgenden Ressourcen:
+ [Verwenden von Pod Identity mit Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html)
+ [AWS Secrets Store CSI-Treiber aktiviert GitHub](https://github.com/aws/secrets-store-csi-driver-provider-aws)