

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

# Configurazione di Parameter Store
<a name="configure-store"></a>

Parameter Store è una funzionalità di. AWS Systems Manager Fornisce uno storage sicuro e gerarchico per la gestione dei dati di configurazione e la gestione dei segreti. Puoi memorizzare dati come password, stringhe di database, Amazon Machine Image (AMI) IDs e codici di licenza come valori dei parametri. 

## Prerequisiti per l'utilizzo di Parameter Store con applicazioni.NET Framework
<a name="configure-store-prereq"></a>
+ Un attivo Account AWS
+ [Microsoft Visual Studio](https://visualstudio.microsoft.com/downloads/), installato
+ AWS Command Line Interface (AWS CLI) versione 2, installata e configurata per accedere a Account AWS (vedi [istruzioni](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html))
+ AWS Toolkit for Visual Studio, configurato (vedi [istruzioni](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/setup.html))
+ Un parametro Systems Manager, creato utilizzando la [console Secrets Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-create-console.html) o [AWS CLI](https://docs.aws.amazon.com/systems-manager/latest/userguide/param-create-cli.html)

## Esempio
<a name="configure-store-example"></a>

Per recuperare i valori da Parameter Store nelle applicazioni Web o nelle API ASP.NET Core:

1. Aggiungi il seguente NuGet pacchetto all'API Web ASP.NET Core.

   ```
   Amazon.Extensions.Configuration.SystemsManager
   ```

1. Nel `Program.cs` file, apporta le seguenti modifiche.
   + Aggiungere `using` le istruzioni (1).

     ```
     using Amazon;
     using Amazon.Extensions.NETCore.Setup;
     ```
   + Aggiungere la AWS Systems Manager configurazione (2).

     ```
     builder.Configuration.AddSystemsManager("/dev/myapp", new AWSOptions
     {
         Region = RegionEndpoint.EUWest2
     });
     ```  
![\[Modifiche al file Program.cs per l'accesso a Parameter Store\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/modernization-net-applications-security/images/ps-program-cs.png)
**Nota**  
È necessario chiamare i `RegionEndPoint` parametri `/myapp/dev` and dinamicamente o dalle variabili di ambiente (`Region = RegionEndpoint.GetBySystemName("eu-west-2")`). Non codificate questi valori negli ambienti di produzione.

1. Create un nuovo file di classe e assegnategli un nome. `ParameterOptions.cs` Apri il file e aggiungi il codice seguente.

   ```
   public class ParameterOptions
       {
           public const string ParameterName = "Tenant";
           public string key1 { get; set; } = string.Empty;
           public string key2 { get; set; } = string.Empty;
       }
   ```

1. Per recuperare i valori da Parameter Store, apportate le seguenti modifiche al file della classe del controller (ad esempio,`ValuesController.cs`). 
   + Aggiungete il costruttore (1).

     ```
     private readonly IConfiguration _configuration;
     public ParametersController(IConfiguration configuration)
     {
         _configuration = configuration;
     }
     ```
   + Recupera i valori da Parameter Store (2).

     ```
     var parameterOptions = new ParameterOptions();
     _configuration.GetSection(ParameterOptions.ParameterName).Bind(parameterOptions);
     
     return new string[] {
         parameterOptions.key1,
         parameterOptions.key2
     };
     ```  
![\[Modifiche al file di classe del controller per il recupero dei valori da Parameter Store\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/modernization-net-applications-security/images/ps-controller-class.png)

## Resources
<a name="configure-store-resources"></a>
+ [Gestione dei segreti AWS Funzioni Lambda di rotazione (repository](https://github.com/aws-samples/aws-secrets-manager-rotation-lambdas)) GitHub 
+ [AWS Estensione di configurazione.NET per Systems Manager, cartella Samples](https://github.com/aws/aws-dotnet-extensions-configuration/tree/master/samples/Samples) (GitHubrepository)
+ [Come utilizzare la memorizzazione nella cache lato client di Secrets Manager in.NET](https://aws.amazon.com/blogs/security/how-to-use-aws-secrets-manager-client-side-caching-in-dotnet/) (AWS blog sulla sicurezza)