

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

# Creazione di parametri Parameter Store in Systems Manager
<a name="sysman-paramstore-su-create"></a>

Utilizzate le informazioni contenute nei seguenti argomenti per aiutarvi a creare parametri Systems Manager utilizzando la AWS Systems Manager console, AWS Command Line Interface (AWS CLI) o AWS Tools for Windows PowerShell (Tools for Windows PowerShell).

Questa sezione mostra come creare, archiviare ed eseguire i parametri con Parameter Store in un ambiente di test. Viene inoltre illustrato come utilizzarlo Parameter Store con altri strumenti di Systems Manager in Servizi AWS. Per ulteriori informazioni, consulta [Che cos'è un parametro?](systems-manager-parameter-store.md#what-is-a-parameter)

## Capire i requisiti e vincoli per i nomi di parametro
<a name="sysman-parameter-name-constraints"></a>

Utilizza le informazioni riportate in questo argomento per specificare valori validi per i nomi di parametro durante il processo di creazione di un parametro. 

**Queste informazioni integrano i dettagli contenuti [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html)nell'argomento dell'*AWS Systems Manager API Reference*, che fornisce anche informazioni sui valori **AllowedPattern**, sulla **descrizione**, sulla **sovrascrittura **KeyId****, sul **tipo** e sul valore.**

I requisiti e i vincoli relativi ai nomi di parametro sono descritti di seguito:
+ **Distinzione tra lettere maiuscole e minuscole**: i nomi di parametro fanno distinzione tra maiuscole e minuscole.
+ **Spazi**: i nomi di parametro non possono contenere spazi.
+ **Caratteri validi**: i nomi di parametro possono contenere solo i seguenti simboli e lettere: `a-zA-Z0-9_.-`

  Inoltre, il carattere barra (/) viene utilizzato per delineare le gerarchie nei nomi dei parametri. Ad esempio: `/Dev/Production/East/Project-ABC/MyParameter`
+ **Formato AMI valido**: quando si sceglie `aws:ec2:image` come tipo di dati per un parametro `String`, l'ID immesso deve essere convalidato per il formato ID AMI `ami-12345abcdeEXAMPLE`.
+ **Pienamente qualificato**: quando si crea o si fa riferimento a un parametro in una gerarchia, è necessario includere una barra iniziale (/). Quando si fa riferimento a un parametro che fa parte di una gerarchia, è necessario specificare l'intero percorso della gerarchia, inclusa la barra iniziale (/).
  + Nomi di parametri completi: `MyParameter1`, `/MyParameter2`, `/Dev/Production/East/Project-ABC/MyParameter`
  + Nome del parametro non completo: `MyParameter3/L1`
+ **Lunghezza**: la lunghezza massima per il nome del parametro creato è 1.011 caratteri. Questa somma di 1.011 caratteri include i caratteri nell'ARN che precedono il nome specificato, ad esempio i 45 caratteri in `arn:aws:ssm:us-east-2:111122223333:parameter/`.
+ **Prefissi**: un nome di parametro non può essere associato al prefisso "`aws`" o "`ssm`" (non prevede distinzione tra lettere maiuscole e minuscole). Ad esempio, il tentativo di creare parametri con i seguenti nomi ha esito negativo con un'eccezione:
  + `awsTestParameter`
  + `SSM-testparameter`
  + `/aws/testparam1`
**Nota**  
Quando specifichi un parametro in un documento SSM, un comando o uno script, includi `ssm` come parte della sintassi. Ad esempio, \$1\$1ssm:*parameter-name*\$1\$1 e \$1\$1ssm:*parameter-name*\$1\$1, come, e `{{ssm:MyParameter}}` `{{ ssm:MyParameter }}.`
+ **Unicità**: un nome di parametro deve essere univoco all'interno di una Regione AWS. Ad esempio, Systems Manager considera i seguenti elementi come parametri distinti, se presenti nella stessa regione:
  + `/Test/TestParam1`
  + `/TestParam1`

  I seguenti esempi sono tutti elementi univoci:
  + `/Test/TestParam1/Logpath1`
  + `/Test/TestParam1`

  I seguenti esempi, tuttavia, se presenti nella stessa regione, non sono elementi univoci:
  + `/TestParam1`
  + `TestParam1`
+ **Profondità della gerarchia**: se specifichi una gerarchia di parametri, tale gerarchia può avere un massimo di quindici livelli. È possibile definire un parametro a qualsiasi livello della gerarchia. Entrambi gli esempi seguenti sono strutturalmente validi:
  + `/Level-1/L2/L3/L4/L5/L6/L7/L8/L9/L10/L11/L12/L13/L14/parameter-name`
  + `parameter-name`

  Il tentativo di creare il parametro seguente avrà esito negativo e restituirà un'eccezione `HierarchyLevelLimitExceededException`:
  + `/Level-1/L2/L3/L4/L5/L6/L7/L8/L9/L10/L11/L12/L13/L14/L15/L16/parameter-name`

**Importante**  
Se un utente ha accesso a un percorso, accederà a tutti i livelli del percorso. Ad esempio, se un utente è autorizzato ad accedere al percorso `/a`, accederà anche a `/a/b`. Anche se a un utente è stato esplicitamente negato l'accesso in AWS Identity and Access Management (IAM) per il parametro`/a/b`, può comunque richiamare l'operazione [GetParametersByPath](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html)API in modo ricorsivo e visualizzarlo. `/a` `/a/b`

**Topics**
+ [Capire i requisiti e vincoli per i nomi di parametro](#sysman-parameter-name-constraints)
+ [Creazione di un parametro Parameter Store utilizzando la console](parameter-create-console.md)
+ [Creazione di un Parameter Store parametro utilizzando AWS CLI](param-create-cli.md)
+ [Creazione di un Parameter Store parametro utilizzando Tools for Windows PowerShell](param-create-ps.md)

# Creazione di un parametro Parameter Store utilizzando la console
<a name="parameter-create-console"></a>

È possibile utilizzare la AWS Systems Manager console per creare ed eseguire `String` tipi di `SecureString` parametri. `StringList` Dopo aver eliminato un parametro, attendere almeno 30 secondi per creare un parametro con lo stesso nome.

**Nota**  
I parametri sono disponibili solo nel Regione AWS luogo in cui sono stati creati.

La procedura seguente ti guiderà attraverso il processo di creazione di un parametro, nella console Parameter Store. Puoi creare i tipi di parametri `String`, `StringList` e `SecureString` dalla console.

**Per creare un parametro**

1. Apri la AWS Systems Manager console all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Nel pannello di navigazione, scegli **Parameter Store**.

1. Scegli **Create parameter (Crea parametro)**.

1. Nella casella **Name (Nome)** immettere una gerarchia e un nome. Ad esempio, specifica **/Test/helloWorld**.

   Per ulteriori informazioni sulle gerarchie di parametri, consulta [Utilizzo delle gerarchie di parametri in Parameter Store](sysman-paramstore-hierarchies.md).

1. Nella casella **Description (Descrizione)**, immettere una descrizione che identifichi il parametro come parametro di test.

1. In **Parameter tier (Livello parametri)** scegliere **Standard** o **Advanced (Avanzato)**. Per ulteriori informazioni sui parametri avanzati, consultare [Gestione dei livelli dei parametri](parameter-store-advanced-parameters.md).

1. Per **Tipo**, scegliete **String **StringList****, o **SecureString**.
   + Se si sceglie **String**, viene visualizzato il campo **Tipo di dati**. Se stai creando un parametro per contenere l'ID risorsa per un'Amazon Machine Image (AMI), seleziona `aws:ec2:image`. In caso contrario, mantieni selezionata l'impostazione predefinita `text`.
   + Se scegli **SecureString,** viene visualizzato il campo **KMS Key ID**. Se non fornisci un AWS Key Management Service AWS KMS key ID, un AWS KMS key Amazon Resource Name (ARN), un nome alias o un alias ARN, il sistema utilizza`alias/aws/ssm`, che è il Systems Manager. Chiave gestita da AWS In alternativa, è possibile utilizzare una chiave gestita dal cliente. Per ulteriori informazioni sulle chiavi gestite dal cliente e sulle Chiavi gestite da AWS , consulta [Concetti di AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) nella *Guida per gli sviluppatori di AWS Key Management Service *. [Per ulteriori informazioni sulla AWS KMS crittografia, consulta Parameter Store How Uses. AWS Systems ManagerParameter StoreAWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/services-parameter-store.html)
**Importante**  
Parameter Store supporta solo [Chiavi KMS simmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html#symmetric-cmks). Non è possibile utilizzare una [chiave KMS asimmetrica](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) per crittografare i parametri. Per informazioni su come determinare se una chiave KMS è simmetrica o asimmetrica, consulta [Identificazione di chiavi KMS simmetriche e asimmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) nella *Guida per gli sviluppatori di AWS Key Management Service *
   + Quando si crea un parametro `SecureString` nella console utilizzando il parametro `key-id` con un nome alias della CMK gestita dal cliente o con un ARN dell'alias, è necessario specificare il prefisso `alias/` prima dell'alias. Di seguito è riportato un ARN di esempio.

     ```
     arn:aws:kms:us-east-2:123456789012:alias/abcd1234-ab12-cd34-ef56-abcdeEXAMPLE
     ```

     Di seguito è riportato un nome alias di esempio.

     ```
     alias/MyAliasName
     ```

1. Nella casella **Value (Valore)** immettere un valore. Ad esempio, digita **This is my first parameter** o **ami-0dbf5ea29aEXAMPLE**.
**Nota**  
I parametri non possono essere referenziati o nidificati nei valori di altri parametri. Non è possibile includere `{{}}` o `{{ssm:parameter-name}}` in un valore di parametro.  
Se si sceglie questa opzione **SecureString**, il valore del parametro viene mascherato per impostazione predefinita («\$1\$1\$1\$1\$1\$1») quando lo si visualizza in un secondo momento nella scheda **Panoramica** del parametro, come illustrato nella figura seguente. Scegliere **Show (Mostra)** per visualizzare il valore del parametro.  

![\[Il valore di un SecureString parametro è mascherato con l'opzione di visualizzazione del valore.\]](http://docs.aws.amazon.com/it_it/systems-manager/latest/userguide/images/ps-overview-show-secstring.png)


1. (Facoltativo) Nell'area **Tags (Tag)**, applicare una o più coppie chiave tag-valore al parametro.

   I tag sono metadati facoltativi assegnati a una risorsa. Consentono di categorizzare una risorsa in diversi modi, ad esempio in base allo scopo, al proprietario o all'ambiente. Ad esempio, puoi aggiungere tag a un parametro System Manager per identificare il tipo di risorsa a cui viene applicato, l'ambiente o il tipo di dati di configurazione a cui il parametro fa riferimento. In questo caso, è possibile specificare le coppie chiave-valore seguenti:
   + `Key=Resource,Value=S3bucket`
   + `Key=OS,Value=Windows`
   + `Key=ParameterType,Value=LicenseKey`

1. Scegli **Create parameter (Crea parametro)**. 

1. Nell'elenco dei parametri scegliere il nome del parametro creato. Verifica i dettagli nella scheda **Panoramica**. Se è stato creato un parametro `SecureString`, scegli **Mostra** per visualizzare il valore non crittografato.

**Nota**  
Non è possibile convertire un parametro avanzato in un parametro standard. Se non hai più bisogno o desideri eliminare i costi di un parametro avanzato, cancellalo e ricrealo come nuovo parametro standard.

**Nota**  
Non è possibile modificare il tipo di un parametro esistente (ad esempio, da `String` a`SecureString`) utilizzando la console. Per modificare il tipo di un parametro, è necessario utilizzare AWS CLI o s con l'`--overwrite`opzione. Per ulteriori informazioni, consulta [Creazione di un Parameter Store parametro utilizzando AWS CLI](param-create-cli.md).

# Creazione di un Parameter Store parametro utilizzando AWS CLI
<a name="param-create-cli"></a>

È possibile utilizzare AWS Command Line Interface (AWS CLI) per creare `String` e tipi di `SecureString` parametri. `StringList` Dopo aver eliminato un parametro, attendere almeno 30 secondi per creare un parametro con lo stesso nome.

I parametri non possono essere referenziati o nidificati nei valori di altri parametri. Non è possibile includere `{{}}` o `{{ssm:parameter-name}}` in un valore di parametro.

**Nota**  
I parametri sono disponibili solo nel Regione AWS luogo in cui sono stati creati.

**Topics**
+ [Creazione di un `String` parametro utilizzando AWS CLI](#param-create-cli-string)
+ [Creazione di un StringList parametro utilizzando AWS CLI](#param-create-cli-stringlist)
+ [Creazione di un SecureString parametro utilizzando AWS CLI](#param-create-cli-securestring)
+ [Creazione di un parametro multilinea utilizzando AWS CLI](#param-create-cli-multiline)

## Creazione di un `String` parametro utilizzando AWS CLI
<a name="param-create-cli-string"></a>

1. Installa e configura AWS Command Line Interface (AWS CLI), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione o aggiornamento della versione più recente di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Per creare un parametro di tipo `String`, eseguire questo comando. Sostituisci ogni *example resource placeholder* con le tue informazioni.

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

------

   oppure

   Eseguire il comando seguente per creare un parametro che contiene un ID Amazon Machine Image (AMI) come valore del parametro.

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

------

   L'opzione `--name` supporta le gerarchie. Per informazioni sulle gerarchie, consultare [Utilizzo delle gerarchie di parametri in Parameter Store](sysman-paramstore-hierarchies.md).

   L'opzione `--data-type` deve essere specificata solo se si sta creando un parametro che contiene un ID AMI. Convalida che il valore del parametro inserito sia un ID AMI di Amazon Elastic Compute Cloud (Amazon EC2) correttamente formattato. Per tutti gli altri parametri, il tipo di dati di default è `text` ed è facoltativo per specificare un valore. Per ulteriori informazioni, consulta [Utilizzo del supporto nativo dei parametri in Parameter Store Amazon Machine Image IDs](parameter-store-ec2-aliases.md).
**Importante**  
In caso di esito positivo, il comando restituisce il numero di versione del parametro. **Eccezione**: se è stato specificato `aws:ec2:image` come tipo di dati, un nuovo numero di versione nella risposta non significa che il valore del parametro sia stato ancora convalidato. Per ulteriori informazioni, consulta [Utilizzo del supporto nativo dei parametri in Parameter Store Amazon Machine Image IDs](parameter-store-ec2-aliases.md).

   Il seguente esempio aggiunge due tag di tipo coppia chiave-valore a un parametro. 

------
#### [ 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\"}]
   ```

------

   L'esempio seguente utilizza una gerarchia di parametri nel nome per creare un testo normale di parametro `String`. Restituisce il numero di versione del parametro. Per ulteriori informazioni sulle gerarchie di parametri, consulta [Utilizzo delle gerarchie di parametri in Parameter Store](sysman-paramstore-hierarchies.md).

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

   **Parametro non in una gerarchia**

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

   **Parametro in una gerarchia**

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

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

   **Parametro non in una gerarchia**

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

   **Parametro in una gerarchia**

   ```
   aws ssm put-parameter ^
       --name "/amis/windows/golden-ami" ^
       --type "String" ^
       --value "ami-12345abcdeEXAMPLE"
   ```

------

1. Eseguire il comando seguente per visualizzare il valore più recente del parametro e verificare i dettagli del nuovo parametro.

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

   Il sistema restituisce informazioni simili alle seguenti.

   ```
   {
       "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"            
           }
       ]
   }
   ```

Eseguire questo comando per modificare il valore del parametro. Restituisce il numero di versione del parametro.

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

Eseguire questo comando per visualizzare la cronologia del valore del parametro.

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

Eseguire questo comando per utilizzare questo parametro in un comando.

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

Eseguire il comando seguente se si desidera recuperare solo il parametro Value (Valore).

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

Eseguire il comando seguente se si desidera recuperare solo il parametro Value (Valore) tramite `get-parameters`.

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

Eseguire questo comando per visualizzare i metadati del parametro.

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

**Nota**  
*Name (Nome)* deve avere l'iniziale maiuscola.

Il sistema restituisce informazioni simili alle seguenti.

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

## Creazione di un StringList parametro utilizzando AWS CLI
<a name="param-create-cli-stringlist"></a>

1. Installa e configura AWS Command Line Interface (AWS CLI), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione o aggiornamento della versione più recente di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Per creare un parametro, eseguire questo comando. Sostituisci ogni *example resource placeholder* con le tue informazioni.

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

------
**Nota**  
In caso di esito positivo, il comando restituisce il numero di versione del parametro.

   Questo esempio aggiunge due tag di tipo coppia chiave-valore a un parametro. (A seconda del tipo di sistema operativo nel computer locale, utilizzare uno dei comandi seguenti. La versione da eseguire su una macchina Windows locale include i caratteri di escape ("\$1"), è necessario eseguire il comando dal proprio strumento a riga di comando.)

   Ecco un esempio `StringList` che utilizza una gerarchia di parametri.

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

------
**Nota**  
Gli elementi in `StringList` devono essere separati da una virgola (,). Non è possibile utilizzare altri caratteri speciali o di punteggiatura per eseguire l'escape degli elementi inclusi nell'elenco. Se un valore di parametro richiede una virgola, utilizzare il tipo di dati `String`.

1. Eseguire il comando `get-parameters` per verificare i dettagli del parametro. Esempio:

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

## Creazione di un SecureString parametro utilizzando AWS CLI
<a name="param-create-cli-securestring"></a>

Utilizza la procedura seguente per creare un parametro `SecureString`. Sostituisci ogni *example resource placeholder* con le tue informazioni.

**Importante**  
Solo il *valore* di un parametro `SecureString` viene crittografato. I nomi dei parametri, le descrizioni e altre proprietà non sono crittografati.

**Importante**  
Parameter Store supporta solo [Chiavi KMS simmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html#symmetric-cmks). Non è possibile utilizzare una [chiave KMS asimmetrica](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) per crittografare i parametri. Per informazioni su come determinare se una chiave KMS è simmetrica o asimmetrica, consulta [Identificazione di chiavi KMS simmetriche e asimmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) nella *Guida per gli sviluppatori di AWS Key Management Service *

1. Installa e configura AWS Command Line Interface (AWS CLI), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione o aggiornamento della versione più recente di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Eseguire **uno** dei seguenti comandi per creare un parametro che utilizza il tipo di dati `SecureString`.

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

   **Crea un `SecureString` parametro utilizzando il valore predefinito Chiave gestita da AWS **

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

   **Creazione di un parametro `SecureString` che utilizza una chiave gestita del cliente**

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "a-parameter-value, for example P@ssW%rd#1" \
       --type "SecureString"
       --tags "Key=tag-key,Value=tag-value"
   ```

   **Crea un `SecureString` parametro che utilizza una AWS KMS chiave personalizzata**

   ```
   aws ssm put-parameter \
       --name "parameter-name" \
       --value "a-parameter-value, for example P@ssW%rd#1" \
       --type "SecureString" \
       --key-id "your-account-ID/the-custom-AWS KMS-key" \
       --tags "Key=tag-key,Value=tag-value"
   ```

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

   **Crea un `SecureString` parametro utilizzando il valore predefinito Chiave gestita da AWS**

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

   **Creazione di un parametro `SecureString` che utilizza una chiave gestita del cliente**

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "a-parameter-value, for example P@ssW%rd#1" ^
       --type "SecureString" ^
       --tags "Key=tag-key,Value=tag-value"
   ```

   **Crea un `SecureString` parametro che utilizza una AWS KMS chiave personalizzata**

   ```
   aws ssm put-parameter ^
       --name "parameter-name" ^
       --value "a-parameter-value, for example P@ssW%rd#1" ^
       --type "SecureString" ^
       --key-id " ^
       --tags "Key=tag-key,Value=tag-value"account-ID/the-custom-AWS KMS-key"
   ```

------

   Se crei un parametro `SecureString` utilizzando la chiave Chiave gestita da AWS nel tuo account e nella tua Regione, *non* devi fornire un valore per il parametro `--key-id`.
**Nota**  
Per utilizzare il parametro AWS KMS key assegnato al tuo Account AWS and Regione AWS, rimuovi il `key-id` parametro dal comando. Per ulteriori informazioni su AWS KMS keys, consulta [Concetti di AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) nella *Guida per gli sviluppatori AWS Key Management Service *.

   Per utilizzare una chiave gestita dal cliente anziché quella Chiave gestita da AWS assegnata al tuo account, specifica la chiave utilizzando il `--key-id` parametro. Il parametro supporta i formati di KMS seguenti.
   + Esempio chiave Amazon Resource Name (ARN):

      `arn:aws:kms:us-east-2:123456789012:key/key-id`
   + Esempio di ARN alias:

     `arn:aws:kms:us-east-2:123456789012:alias/alias-name`
   + Esempio di ID chiave:

     `12345678-1234-1234-1234-123456789012`
   + Esempio di nome alias:

     `alias/MyAliasName`

   Puoi creare una chiave gestita dal cliente utilizzando Console di gestione AWS o l' AWS KMS API. I seguenti AWS CLI comandi creano una chiave gestita dal cliente nella versione corrente Regione AWS del tuo Account AWS.

   ```
   aws kms [create-key](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
   ```

   Utilizza un comando nel formato seguente per creare un parametro `SecureString` utilizzando la chiave appena creata.

   L'esempio seguente usa un nome offuscato (`3l3vat3131`) per un parametro password e una AWS KMS key.

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

   ```
   aws ssm put-parameter \
       --name /Finance/Payroll/3l3vat3131 \
       --value "P@sSwW)rd" \
       --type SecureString \
       --key-id arn:aws:kms:us-east-2:123456789012:key/1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e
   ```

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

   ```
   aws ssm put-parameter ^
       --name /Finance/Payroll/3l3vat3131 ^
       --value "P@sSwW)rd" ^
       --type SecureString ^
       --key-id arn:aws:kms:us-east-2:123456789012:key/1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e
   ```

------

1. Utilizzare il comando seguente per verificare i dettagli del parametro.

   Se non si specifica il parametro `with-decryption` o se è necessario specificare il parametro `no-with-decryption`, il comando restituisce un GUID criptato.

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

------

1. Eseguire questo comando per visualizzare i metadati del parametro.

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

------

1. Eseguire il comando seguente per modificare il valore del parametro se **non** si utilizza una AWS KMS key gestita dal cliente.

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

------

   oppure

   Eseguire uno dei seguenti comandi per modificare il valore del parametro se **si utilizza** una AWS KMS key gestita dal cliente.

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

------

1. Eseguire questo comando per visualizzare il valore più recente del parametro.

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

------

1. Eseguire questo comando per visualizzare la cronologia del valore del parametro.

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

------

**Nota**  
Puoi creare manualmente un parametro con un valore criptato. In questo caso, poiché il valore è già crittografato, non è necessario scegliere il tipo di parametro `SecureString`. Se scegli comunque `SecureString`, il parametro è protetto da una doppia crittografia.

Per impostazione predefinita, tutti i valori `SecureString` vengono visualizzati come testo crittografato. Per decrittografare un `SecureString` valore, un utente deve disporre del permesso di chiamare l'operazione AWS KMS [Decrypt API](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html). Per informazioni sulla configurazione di AWS KMS controllo di accesso, vedere [Autenticazione e controllo degli accessi per AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html) nella *Guida per gli sviluppatori AWS Key Management Service *.

**Importante**  
Se si modifica l'alias della chiave del Servizio di gestione delle chiavi utilizzata per crittografare un parametro, è necessario aggiornare anche l'alias chiave utilizzato dal parametro per fare riferimento AWS KMS. Questo vale solo per l'alias della chiave del Servizio di gestione delle chiavi; l'ID chiave a cui viene associato un alias rimane lo stesso, a meno che non si elimini l'intera chiave.

## Creazione di un parametro multilinea utilizzando AWS CLI
<a name="param-create-cli-multiline"></a>

È possibile utilizzare il AWS CLI per creare un parametro con interruzioni di riga. Utilizzare le interruzioni di riga per suddividere il testo in valori di parametro più lunghi per una migliore leggibilità o, ad esempio, aggiornare il contenuto di parametri multiparagrafo per una pagina Web. È possibile includere il contenuto in un file JSON e utilizzare `--cli-input-json`, utilizzando caratteri di interruzione di riga come `\n`, come mostrato nell'esempio seguente.

1. Installa e configura AWS Command Line Interface (AWS CLI), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione o aggiornamento della versione più recente di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Per creare un parametro a linea multipla, eseguire il seguente comando. 

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

------

   Nell'esempio seguente viene mostrato il contenuto del file `MultiLineParameter.json`.

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

Il valore del parametro salvato viene memorizzato come segue.

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

# Creazione di un Parameter Store parametro utilizzando Tools for Windows PowerShell
<a name="param-create-ps"></a>

È possibile utilizzare AWS Tools for Windows PowerShell per creare `String` `StringList` e tipi di `SecureString` parametri. Dopo aver eliminato un parametro, attendere almeno 30 secondi per creare un parametro con lo stesso nome.

I parametri non possono essere referenziati o nidificati nei valori di altri parametri. Non è possibile includere `{{}}` o `{{ssm:parameter-name}}` in un valore di parametro.

**Nota**  
I parametri sono disponibili solo nel Regione AWS luogo in cui sono stati creati.

**Topics**
+ [Creazione di un parametro String (Tools for Windows PowerShell)](#param-create-ps-string)
+ [Creazione di un StringList parametro (Strumenti per Windows PowerShell)](#param-create-ps-stringlist)
+ [Creazione di un SecureString parametro (Strumenti per Windows PowerShell)](#param-create-ps-securestring)

## Creazione di un parametro String (Tools for Windows PowerShell)
<a name="param-create-ps-string"></a>

1. Installa e configura AWS Strumenti per PowerShell (Strumenti per Windows PowerShell), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione di AWS Strumenti per PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html).

1. Eseguire il comando seguente per creare un parametro che contiene un valore di testo normale. Sostituisci ogni *example resource placeholder* con le tue informazioni.

   ```
   Write-SSMParameter `
       -Name "parameter-name" `
       -Value "parameter-value" `
       -Type "String"
   ```

   oppure

   Eseguire il comando seguente per creare un parametro che contiene un ID Amazon Machine Image (AMI) come valore del parametro.
**Nota**  
Per creare un parametro con un tag, create il service.model.tag prima mano come variabile. Ecco un esempio.  

   ```
   $tag = New-Object Amazon.SimpleSystemsManagement.Model.Tag
   $tag.Key = "tag-key"
   $tag.Value = "tag-value"
   ```

   ```
   Write-SSMParameter `
       -Name "parameter-name" `
       -Value "an-AMI-id" `
       -Type "String" `
       -DataType "aws:ec2:image" `
       -Tags $tag
   ```

   L'opzione `-DataType` deve essere specificata solo se si sta creando un parametro che contiene un ID AMI. Per tutti gli altri parametri, il tipo di dati predefinito è `text`. Per ulteriori informazioni, consulta [Utilizzo del supporto nativo dei parametri in Parameter Store Amazon Machine Image IDs](parameter-store-ec2-aliases.md).

   Ecco un esempio che utilizza una gerarchia di parametri.

   ```
   Write-SSMParameter `
       -Name "/IAD/Web/SQL/IPaddress" `
       -Value "99.99.99.999" `
       -Type "String" `
       -Tags $tag
   ```

1. Utilizzare il comando seguente per verificare i dettagli del parametro.

   ```
   (Get-SSMParameterValue -Name "the-parameter-name-you-specified").Parameters
   ```

## Creazione di un StringList parametro (Strumenti per Windows PowerShell)
<a name="param-create-ps-stringlist"></a>

1. Installa e configura AWS Strumenti per PowerShell (Strumenti per Windows PowerShell), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione di AWS Strumenti per PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html).

1. Esegui il comando seguente per creare un StringList parametro. Sostituisci ogni *example resource placeholder* con le tue informazioni.
**Nota**  
Per creare un parametro con un tag, create il service.model.tag prima mano come variabile. Ecco un esempio.   

   ```
   $tag = New-Object Amazon.SimpleSystemsManagement.Model.Tag
   $tag.Key = "tag-key"
   $tag.Value = "tag-value"
   ```

   ```
   Write-SSMParameter `
       -Name "parameter-name" `
       -Value "a-comma-separated-list-of-values" `
       -Type "StringList" `
       -Tags $tag
   ```

   In caso di esito positivo, il comando restituisce il numero di versione del parametro.

   Ecco un esempio.

   ```
   Write-SSMParameter `
       -Name "stringlist-parameter" `
       -Value "Milana,Mariana,Mark,Miguel" `
       -Type "StringList" `
       -Tags $tag
   ```
**Nota**  
Gli elementi in `StringList` devono essere separati da una virgola (,). Non è possibile utilizzare altri caratteri speciali o di punteggiatura per eseguire l'escape degli elementi inclusi nell'elenco. Se un valore di parametro richiede una virgola, utilizzare il tipo di dati `String`.

1. Utilizzare il comando seguente per verificare i dettagli del parametro.

   ```
   (Get-SSMParameterValue -Name "the-parameter-name-you-specified").Parameters
   ```

## Creazione di un SecureString parametro (Strumenti per Windows PowerShell)
<a name="param-create-ps-securestring"></a>

Prima di creare un parametro `SecureString`, consulta i requisiti relativi a questo tipo di parametro. Per ulteriori informazioni, consulta [Creazione di un SecureString parametro utilizzando AWS CLI](param-create-cli.md#param-create-cli-securestring).

**Importante**  
Solo il *valore* di un parametro `SecureString` viene crittografato. I nomi dei parametri, le descrizioni e altre proprietà non sono crittografati.

**Importante**  
Parameter Store supporta solo [Chiavi KMS simmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html#symmetric-cmks). Non è possibile utilizzare una [chiave KMS asimmetrica](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) per crittografare i parametri. Per informazioni su come determinare se una chiave KMS è simmetrica o asimmetrica, consulta [Identificazione di chiavi KMS simmetriche e asimmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) nella *Guida per gli sviluppatori di AWS Key Management Service *

1. Installa e configura AWS Strumenti per PowerShell (Strumenti per Windows PowerShell), se non l'hai già fatto.

   Per informazioni, consulta la pagina [Installazione di AWS Strumenti per PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html).

1. Per creare un parametro, eseguire questo comando. Sostituisci ogni *example resource placeholder* con le tue informazioni.
**Nota**  
Per creare un parametro con un tag, crea prima il service.model.tag come variabile. Ecco un esempio.   

   ```
   $tag = New-Object Amazon.SimpleSystemsManagement.Model.Tag
   $tag.Key = "tag-key"
   $tag.Value = "tag-value"
   ```

   ```
   Write-SSMParameter `
       -Name "parameter-name" `
       -Value "parameter-value" `
       -Type "SecureString"  `
       -KeyId "an AWS KMS key ID, an AWS KMS key ARN, an alias name, or an alias ARN" `
       -Tags $tag
   ```

   In caso di esito positivo, il comando restituisce il numero di versione del parametro.
**Nota**  
Per utilizzare il parametro Chiave gestita da AWS assegnato al tuo account, rimuovi il `-KeyId` parametro dal comando.

   Segue un esempio che utilizza un nome offuscato (3l3vat3131) per un parametro password e una Chiave gestita da AWS.

   ```
   Write-SSMParameter `
       -Name "/Finance/Payroll/3l3vat3131" `
       -Value "P@sSwW)rd" `
       -Type "SecureString"`
       -Tags $tag
   ```

1. Utilizzare il comando seguente per verificare i dettagli del parametro.

   ```
   (Get-SSMParameterValue -Name "the-parameter-name-you-specified" –WithDecryption $true).Parameters
   ```

Per impostazione predefinita, tutti i valori `SecureString` vengono visualizzati come testo crittografato. Per decrittografare un `SecureString` valore, un utente deve avere l'autorizzazione a chiamare l'operazione AWS KMS [Decrypt API](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html). Per informazioni sulla configurazione di AWS KMS controllo di accesso, vedere [Autenticazione e controllo degli accessi per AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html) nella *Guida per gli sviluppatori AWS Key Management Service *.

**Importante**  
Se si modifica l'alias della chiave del Servizio di gestione delle chiavi utilizzata per crittografare un parametro, è necessario aggiornare anche l'alias chiave utilizzato dal parametro per fare riferimento AWS KMS. Questo vale solo per l'alias della chiave del Servizio di gestione delle chiavi; l'ID chiave a cui viene associato un alias rimane lo stesso, a meno che non si elimini l'intera chiave.