

• La AWS Systems Manager CloudWatch dashboard non sarà più disponibile dopo il 30 aprile 2026. I clienti possono continuare a utilizzare la CloudWatch console Amazon per visualizzare, creare e gestire le proprie CloudWatch dashboard Amazon, proprio come fanno oggi. Per ulteriori informazioni, consulta la [documentazione di Amazon CloudWatch Dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# AWS Segreti ed esempi di codice del Configuration Provider
<a name="ascp-examples"></a>

## Esempi di autenticazione e controllo degli accessi ASCP
<a name="ascp-auth-access-examples"></a>

### Esempio: policy IAM che consente al servizio Amazon EKS Pod Identity (pods.eks.amazonaws.com) di assumere il ruolo e contrassegnare la sessione:
<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>

Puoi utilizzare YAML per descrivere quali parametri montare in Amazon EKS utilizzando l'ASCP. Per alcuni esempi, consulta [SecretProviderClass utilizzo](#ascp-scenarios-secretproviderclass).

### SecretProviderClass Struttura YAML
<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:
```

Il campo parametri contiene i dettagli della richiesta di montaggio:

**region**  
(Facoltativo) Il Regione AWS parametro. Se non utilizzi questo campo, l'ASCP cerca la Regione dall'annotazione sul nodo. Questa ricerca aggiunge un sovraccarico alle richieste di montaggio, quindi consigliamo di fornire la Regione per i cluster che utilizzano un numero elevato di pod.  
Se specifichi anche il `failoverRegion`, l'ASCP tenta di recuperare il parametrp da entrambe le Regioni. Se una delle Regioni restituisce un errore `4xx`, ad esempio per un problema di autenticazione, l'ASCP non monta nessuno dei due parametri. Se il parametro viene recuperato correttamente da `region```, l'ASCP monta quel valore del parametro. Se il parametro non viene recuperato correttamente da `region`, ma viene correttamente recuperato da `failoverRegion`, l'ASCP monta quel valore del parametro.

**`failoverRegion`**  
(Facoltativo) Se si include questo campo, l'ASCP tenta di recuperare il parametro dalle Regioni definite in `region` e in questo campo. Se una delle Regioni restituisce un errore `4xx`, ad esempio per un problema di autenticazione, l'ASCP non monta nessuno dei due parametri. Se il parametro viene recuperato correttamente da `region`, l'ASCP monta quel valore del parametro. Se il parametro non viene recuperato correttamente da `region`, ma viene correttamente recuperato da `failoverRegion`, l'ASCP monta quel valore del parametro. Per un esempio su come utilizzare questo campo, consulta la sezione [Failover multiregionale dei parametri](#multi-region-failover).

**pathTranslation**  
(Facoltativo) Un singolo carattere di sostituzione da utilizzare se il nome del file in Amazon EKS conterrà il carattere separatore di percorso, come barra (/) su Linux. L'ASCP non è in grado di creare un file montato che contiene un carattere separatore di percorso. Invece, l'ASCP sostituisce il carattere separatore di percorso con un carattere diverso. Se non utilizzi questo campo, il carattere sostitutivo è il carattere di sottolineatura (\$1), quindi ad esempio, `My/Path/Parameter` monta come `My_Path_Parameter`.   
Per impedire la sostituzione dei caratteri, immettere la stringa `False`.

***usePodIdentity***  
(Facoltativo) Determina l'approccio di autenticazione. Se non specificato, il valore predefinito è ruoli IAM per gli account di servizio (IRSA).  
+ Per utilizzare EKS Pod Identity, utilizza uno qualsiasi di questi valori: `"true"`", `"True"`, `"TRUE"`, `"t"` o `"T"`.
+ Per utilizzare in modo esplicito IRSA, imposta uno qualsiasi dei seguenti valori: `"false"`, `"False"`, `"FALSE"`, `"f"`, or `"F"`"=.

***preferredAddressType***  
(Facoltativo) Specifica il tipo di indirizzo IP preferito per la comunicazione con gli endpoint dell'agente Pod Identity. Il campo è applicabile solo quando si utilizza la funzionalità EKS Pod Identity e verrà ignorato, quando si utilizzano i ruoli IAM per gli account di servizio. I valori non fanno distinzione tra maiuscole e minuscole. I valori validi sono:  
+ `"ipv4"`, `"IPv4"` «, oppure `"IPV4"` — Forza l'uso dell' IPv4 endpoint Pod Identity Agent
+ `"ipv6"`,`"IPv6"`, o `"IPV6"` — Forza l'uso dell'endpoint Pod Identity Agent IPv6 
+ non specificato: utilizza la selezione automatica degli endpoint, provando prima l' IPv4 endpoint e ritornando all' IPv6endpoint se fallisce IPv4 

**objects**  
Una stringa contenente una dichiarazione YAML dei segreti da montare. Si consiglia di utilizzare una stringa multiriga YAML o un carattere pipe (\$1).    
**objectName**  
Obbligatorio. Specifica il nome del parametro o del segreto da recuperare. PerParameter Store, questo è il [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) del parametro e può essere sia il nome che l'ARN completo del parametro. Per Secrets Manager questo è il parametro [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) e può essere sia il nome descrittivo sia l'ARN completo del segreto.   
**objectType**  
Obbligatorio se non si utilizza un ARN di Secrets Manager per `objectName`. Per Parameter Store, utilizza `ssmparameter`. Per Secrets Manager, utilizza `secretsmanager`.   
**objectAlias**  
(Facoltativo) Il nome file del segreto nel pod Amazon EKS. Se non indichi questo campo, `objectName` viene visualizzato come nome del file.  
**objectVersion**  
(Facoltativo) Il numero ID del parametro. Non è consigliato, perché è necessario aggiornare l'ID di versione ogni volta che si aggiorna il parametro. Per impostazione predefinita viene utilizzata la versione più recente. Se includi un `failoverRegion`, questo campo rappresenta l'`objectVersion` primario.  
**objectVersionLabel**  
(Facoltativo) L'alias per la versione. Il valore predefinito è la versione più recente `AWSCURRENT`. Se includi un `failoverRegion`, questo campo rappresenta l'`objectVersionLabel` primario.  
**jmesPath**  
(Facoltativo) Una mappa delle chiavi nel parametro per i file da montare in Amazon EKS. Per utilizzare questo campo, il valore del parametro deve essere in formato JSON.   
L'esempio seguente mostra l'aspetto di un parametro codificato JSON.  

```
{
    "username" : "myusername",
    "password" : "mypassword"
}
```
Le chiavi sono `username` e `password`. Il valore associato a `username` è `myusername` e il valore associato a `password` è `mypassword`.  
Se si utilizza questo campo, è necessario includere i sottocampi `path` e `objectAlias`.    
**path**  
Una chiave di una coppia chiave-valore nel JSON del valore del parametro. Se il campo contiene un trattino, usa le virgolette singole per evitarlo, ad esempio: `path: '"hyphenated-path"'`  
**objectAlias**  
Il nome del file da montare nel pod Amazon EKS. Se il campo contiene un trattino, usa le virgolette singole per evitarlo, ad esempio: `objectAlias: '"hyphenated-alias"'`  
**`failoverObject`**  
(Facoltativo) Se specifichi questo campo, l'ASCP tenta di recuperare sia il parametro specificato nel campo `objectName` primario che quello specificato nel sottocampo `failoverObject` `objectName`. Se uno dei due restituisce un errore `4xx`, ad esempio per un problema di autenticazione, l'ASCP non monta nessuno dei due parametri. Se si riesce a recuperare il parametro dal `objectName` primario, l'ASCP monta quel valore del parametro. Se il parametro non viene recuperato correttamente dal `objectName` primario, ma viene recuperato correttamente dal `objectName` di failover, l'ASCP monta quel valore del parametro. Se si include questo campo, è necessario includere il campo `objectAlias`. Per un esempio su come utilizzare questo campo, consulta la sezione [Failover su un parametro diverso](#failover-parameter).  
In genere, si utilizza questo campo quando il parametro di failover non è una replica. Per un esempio su come specificare una replica, consulta la sezione [Failover multiregionale dei parametri](#multi-region-failover).    
**objectName**  
Il nome o l'ARN completi del parametro di failover. Se utilizzi un ARN, la Regione nell'ARN deve corrispondere al campo `failoverRegion`.  
**objectVersion**  
(Facoltativo) Il numero ID del parametro. Deve corrispondere all'`objectVersion` primaria. Non è consigliato, perché è necessario aggiornare l'ID di versione ogni volta che si aggiorna il parametro. Per impostazione predefinita viene utilizzata la versione più recente.   
**objectVersionLabel**  
(Facoltativo) L'alias per la versione. Il valore predefinito è la versione più recente `AWSCURRENT`.

### Crea una SecretProviderClass configurazione di base per montare i parametri nei tuoi Amazon EKS Pods.
<a name="create-SecretProviderClass-config"></a>

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

SecretProviderClass per utilizzare un parametro nello stesso cluster Amazon EKS:

```
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 utilizzo
<a name="ascp-scenarios-secretproviderclass"></a>

Usa questi esempi per creare configurazioni `SecretProviderClass` per diversi scenari.

#### Esempio: montaggio di parametri per nome o ARN
<a name="mount-by-name-arn"></a>

Questo esempio mostra come montare tre diversi tipi di parametri:
+ Un parametro specificato dall'ARN completo
+ Un parametro specificato dal nome
+ Una versione parametrica di un segreto

```
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"
```

#### Esempio: montaggio di coppie chiave-valore da un parametro
<a name="mount-key-value-pairs"></a>

Questo esempio mostra come montare coppie chiave-valore specifiche da un parametro in formato JSON:

```
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
```

#### Esempio: esempi di configurazione di failover
<a name="failover-examples"></a>

Questi esempi mostrano come configurare il failover per i parametri.

##### Failover multiregionale dei parametri
<a name="multi-region-failover"></a>

Questo esempio mostra come configurare il failover automatico per un parametro replicato su più regioni:

```
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 su un parametro diverso
<a name="failover-parameter"></a>

Questo esempio mostra come configurare il failover su un parametro diverso (non una replica):

```
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"
```

## Risorse aggiuntive
<a name="additional-resources"></a>

Per ulteriori informazioni su come utilizzare ASCP con Amazon EKS, consulta le seguenti risorse:
+ [Utilizzo di Pod Identity con Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html)
+ [AWS Driver CSI Secrets Store attivo GitHub](https://github.com/aws/secrets-store-csi-driver-provider-aws)