

La AWS SDK per .NET V3 è entrata in modalità manutenzione.

[Ti consigliamo di migrare alla V4.AWS SDK per .NET](https://docs.aws.amazon.com/sdk-for-net/v4/developer-guide/welcome.html) Per ulteriori dettagli e informazioni su come eseguire la migrazione, consulta il nostro annuncio sulla modalità di [manutenzione](https://aws.amazon.com/blogs/developer/aws-sdk-for-net-v3-maintenance-mode-announcement/).

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

# Utilizzo dell'SDK Store (solo Windows)
<a name="sdk-store"></a>

(Assicurati di leggere le [avvertenze e le linee guida importanti](net-dg-legacy-creds.md#net-dg-config-creds-warnings-and-guidelines)).

In Windows, l'*SDK Store* è un altro posto per creare profili e archiviare credenziali crittografate per l'applicazione. AWS SDK per .NET Si trova in. `%USERPROFILE%\AppData\Local\AWSToolkit\RegisteredAccounts.json` Puoi utilizzare l'SDK Store durante lo sviluppo come alternativa al file di [AWS credenziali condivise](creds-file.md).

**avvertimento**  
Per evitare rischi per la sicurezza, non utilizzare gli utenti IAM per l’autenticazione quando sviluppi software creato ad hoc o lavori con dati reali. Utilizza invece la federazione con un provider di identità come [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html).

**Nota**  
Le informazioni contenute in questo argomento riguardano le circostanze in cui è necessario ottenere e gestire manualmente le credenziali a breve o lungo termine. Per ulteriori informazioni sulle credenziali a breve e lungo termine, consulta [Altri modi di autenticazione nella *AWS SDKs and* Tools](https://docs.aws.amazon.com/sdkref/latest/guide/access-users.html) Reference Guide.  
Per le migliori pratiche di sicurezza, utilizzare AWS IAM Identity Center, come descritto in. [Configura l'autenticazione SDK](creds-idc.md)

## Informazioni generali
<a name="sdk-store-general-info"></a>

L'SDK Store offre i seguenti vantaggi:
+ Le credenziali nell'SDK Store sono crittografate e l'SDK Store si trova nella home directory dell'utente. Ciò limita il rischio di esporre accidentalmente le proprie credenziali.
+ L'SDK Store fornisce anche le credenziali per e per. [AWS Tools for Windows PowerShell[AWS Toolkit for Visual Studio](https://docs.aws.amazon.com/AWSToolkitVS/latest/UserGuide/)](https://docs.aws.amazon.com/powershell/latest/userguide/)

I profili SDK Store sono specifici per un particolare utente su un determinato host. Non puoi copiarli in altri host o per altri utenti. Ciò significa che non puoi riutilizzare i profili SDK Store presenti sulla tua macchina di sviluppo per altri host o macchine per sviluppatori. Significa anche che non puoi utilizzare i profili SDK Store nelle applicazioni di produzione.

Puoi gestire i profili nell'SDK Store nei seguenti modi:
+ Utilizzate l'interfaccia utente grafica (GUI) in. [AWS Toolkit for Visual Studio](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/credentials.html)
+ [Usa Amazon.Runtime. CredentialManagement](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/NRuntimeCredentialManagement.html)namespace dell' AWS SDK per .NET API, come illustrato più avanti in questo argomento.
+ Utilizzate i comandi di [AWS Tools for Windows PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/specifying-your-aws-credentials.html); ad esempio, e`Set-AWSCredential`. `Remove-AWSCredentialProfile`

## Esempi di gestione dei profili
<a name="sdk-store-examples"></a>

I seguenti esempi mostrano come creare e aggiornare a livello di codice un profilo nell'SDK Store.

### Crea un profilo a livello di codice
<a name="sdk-store-create-programmatically"></a>

Questo esempio mostra come creare un profilo e salvarlo nell'SDK Store a livello di codice. [Utilizza le seguenti classi di Amazon.Runtime. ](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/NRuntimeCredentialManagement.html)CredentialManagement[namespace: [CredentialProfileOptions](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TCredentialProfileOptions.html), [CredentialProfile](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TCredentialProfile.html)e Net File. SDKCredentials](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TNetSDKCredentialsFile.html)

```
using Amazon.Runtime.CredentialManagement;
...

// Do not include credentials in your code.
WriteProfile("my_new_profile", SecurelyStoredKeyID, SecurelyStoredSecretAccessKey);
...

void WriteProfile(string profileName, string keyId, string secret)
{
    Console.WriteLine($"Create the [{profileName}] profile...");
    var options = new CredentialProfileOptions
    {
        AccessKey = keyId,
        SecretKey = secret
    };
    var profile = new CredentialProfile(profileName, options);
    var netSdkStore = new NetSDKCredentialsFile();
    netSdkStore.RegisterProfile(profile);
}
```

**avvertimento**  
Un codice come questo in genere non dovrebbe essere presente nell'applicazione. Se è incluso nell'applicazione, prendete le precauzioni appropriate per assicurarvi che le chiavi in chiaro non siano visibili nel codice, sulla rete e nemmeno nella memoria del computer.

Di seguito è riportato il profilo creato da questo esempio.

```
"[generated GUID]" : {
    "AWSAccessKey" : "01000000D08...[etc., encrypted access key ID]",
    "AWSSecretKey" : "01000000D08...[etc., encrypted secret access key]",
    "ProfileType"  : "AWS",
    "DisplayName"  : "my_new_profile",
}
```

### Aggiorna un profilo esistente a livello di codice
<a name="sdk-store-update-programmatically"></a>

Questo esempio mostra come aggiornare a livello di codice il profilo creato in precedenza. [Utilizza le seguenti classi di Amazon.Runtime. ](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/NRuntimeCredentialManagement.html)CredentialManagement[namespace: e Net File. [CredentialProfile](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TCredentialProfile.html)SDKCredentials](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Runtime/TNetSDKCredentialsFile.html) Utilizza anche la [RegionEndpoint](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Amazon/TRegionEndpoint.html)classe dello spazio dei nomi [Amazon](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/Amazon/N.html).

```
using Amazon.Runtime.CredentialManagement;
...

AddRegion("my_new_profile", RegionEndpoint.USWest2);
...

void AddRegion(string profileName, RegionEndpoint region)
{
    var netSdkStore = new NetSDKCredentialsFile();
    CredentialProfile profile;
    if (netSdkStore.TryGetProfile(profileName, out profile))
    {
        profile.Region = region;
        netSdkStore.RegisterProfile(profile);
    }
}
```

Di seguito è riportato il profilo aggiornato.

```
"[generated GUID]" : {
    "AWSAccessKey" : "01000000D08...[etc., encrypted access key ID]",
    "AWSSecretKey" : "01000000D08...[etc., encrypted secret access key]",
    "ProfileType"  : "AWS",
    "DisplayName"  : "my_new_profile",
    "Region"       : "us-west-2"
}
```

**Nota**  
È inoltre possibile impostare la AWS regione in altre posizioni e utilizzando altri metodi. Per ulteriori informazioni, consulta [Configura la AWS regione](net-dg-region-selection.md).