

È stata rilasciata la versione 5 (V5) di\$1 AWS Strumenti per PowerShell 

Per informazioni sulle modifiche introduttive e sulla migrazione delle applicazioni, consulta l'argomento sulla [migrazione](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html).

 [https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.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à.

# Credenziali condivise in AWS Strumenti per PowerShell
<a name="shared-credentials-in-aws-powershell"></a>

Gli strumenti per Windows PowerShell supportano l'uso del file di credenziali AWS condivise, in modo analogo a AWS CLI e altri. AWS SDKs Gli Strumenti per Windows PowerShell ora supportano la lettura e la scrittura e i profili di `basic` `assume role` credenziali sia nel file di credenziali.NET che nel file di credenziali AWS condiviso. `session` Questa funzionalità è abilitata da un nuovo namespace `Amazon.Runtime.CredentialManagement`.

**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 and Tools](https://docs.aws.amazon.com/sdkref/latest/guide/access-users.html) Reference Guide.AWS SDKs *  
Per le migliori pratiche di sicurezza, utilizzare AWS IAM Identity Center, come descritto in. [Autenticazione con AWS](creds-idc.md)

[https://docs.aws.amazon.com/powershell/v5/reference/items/New-AWSCredential.html](https://docs.aws.amazon.com/powershell/v5/reference/items/New-AWSCredential.html) Nei cmdlet del servizio, puoi fare riferimento ai nuovi profili aggiungendo il parametro comune `-ProfileName`.

## Utilizzo di un ruolo IAM con AWS Strumenti per PowerShell
<a name="shared-credentials-assume-role"></a>

Il file di credenziali AWS condiviso consente tipi di accesso aggiuntivi. Ad esempio, puoi accedere alle tue AWS risorse utilizzando un ruolo IAM anziché le credenziali a lungo termine di un utente IAM. A tale scopo, devi disporre di un profilo standard con autorizzazioni per assumere il ruolo. Quando gli dici AWS Strumenti per PowerShell di utilizzare un profilo che ha specificato un ruolo, AWS Strumenti per PowerShell cerca il profilo identificato dal `SourceProfile` parametro. Tali credenziali vengono utilizzate per richiedere credenziali temporanee per il ruolo specificato dal parametro `RoleArn`. Puoi richiedere l'utilizzo di un dispositivo di autenticazione a più fattori (Multi-Factor Authentication (MFA)) o di un codice `ExternalId` quando terze parti assumono il ruolo.


****  

| Nome parametro | Description | 
| --- | --- | 
|  ExternalId  |  L'ID esterno definito dall'utente da utilizzare quando assume un ruolo, se richiesto dal ruolo. In genere, è necessario solo quando deleghi l'accesso al tuo account a terze parti. La terza parte deve includere il parametro ExternalId come parametro quando assume il ruolo assegnato. Per ulteriori informazioni, consulta [Come utilizzare un ID esterno per concedere l'accesso alle AWS risorse a terzi](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html) nella Guida per l'*utente IAM*.  | 
|  MfaSerial  |  Il numero seriale MFA da utilizzare quando assume un ruolo, se richiesto dal ruolo. Per ulteriori informazioni, consulta la sezione [Utilizzo dell'autenticazione a più fattori (MFA) in AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html) nella *Guida per l'utente IAM*.  | 
|  RoleArn  |  L'ARN del ruolo da assumere per assumere le credenziali di ruolo. Per ulteriori informazioni sulla creazione e sull'utilizzo dei ruoli IAM, consulta la sezione relativa ai [ruoli IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) nella *Guida per l'utente IAM*.  | 
|  SourceProfile  |  Il nome del profilo di origine da utilizzare assumendo credenziali di ruolo. Le credenziali trovate in questo profilo vengono utilizzate per assumere il ruolo specificato dal parametro `RoleArn`.  | 

### Configurazione dei profili per assumere un ruolo
<a name="setup"></a>

Di seguito è riportato un esempio che mostra come configurare un profilo fonte che consente di assumere direttamente un ruolo IAM. 

Il primo comando crea un profilo di origine a cui fa riferimento il profilo del ruolo. Il secondo comando crea il profilo che quel ruolo assumerà. Il terzo comando mostra le credenziali per il profilo del ruolo.

```
PS > Set-AWSCredential -StoreAs my_source_profile -AccessKey access_key_id -SecretKey secret_key
PS > Set-AWSCredential -StoreAs my_role_profile -SourceProfile my_source_profile -RoleArn arn:aws:iam::123456789012:role/role-i-want-to-assume
PS > Get-AWSCredential -ProfileName my_role_profile

SourceCredentials                  RoleArn                                              RoleSessionName                           Options
-----------------                  -------                                              ---------------                           -------
Amazon.Runtime.BasicAWSCredentials arn:aws:iam::123456789012:role/role-i-want-to-assume aws-dotnet-sdk-session-636238288466144357 Amazon.Runtime.AssumeRoleAWSCredentialsOptions
```

Per utilizzare questo profilo di ruolo con i cmdlet di PowerShell servizio Tools for Windows, aggiungi il parametro `-ProfileName` common al comando per fare riferimento al profilo del ruolo. L'esempio seguente utilizza il profilo del ruolo definito nell'esempio precedente per accedere al [Get-S3Bucket](https://docs.aws.amazon.com/powershell/v5/reference/items/Get-S3Bucket.html)cmdlet. AWS Strumenti per PowerShell cerca le credenziali`my_source_profile`, utilizza tali credenziali per chiamare per `AssumeRole` conto dell'utente e quindi utilizza quelle credenziali di ruolo temporanee per chiamare. `Get-S3Bucket`

```
PS > Get-S3Bucket -ProfileName my_role_profile

CreationDate           BucketName
------------           ----------
2/27/2017 8:57:53 AM   4ba3578c-f88f-4d8b-b95f-92a8858dac58-bucket1
2/27/2017 10:44:37 AM  2091a504-66a9-4d69-8981-aaef812a02c3-bucket2
```

## Utilizzo dei tipi di credenziali del profilo
<a name="using-the-credential-profile-types"></a>

Per impostare il tipo di credenziali del profilo, comprendere quali parametri forniscono le informazioni necessarie per il tipo di profilo.


****  

| Tipo di credenziali | Parametri da utilizzare | 
| --- | --- | 
|  **Di base** Queste sono le credenziali a lungo termine per un utente IAM  |  `-AccessKey`  `-SecretKey`  | 
|  **Sessione**: [Queste sono le credenziali a breve termine per un ruolo IAM recuperabili manualmente, ad esempio chiamando direttamente il cmdlet Use-. STSRole](https://docs.aws.amazon.com/powershell/v5/reference/items/Use-STSRole.html)  |  `-AccessKey`  `-SecretKey` `-SessionToken`  | 
|  **Ruolo**: Queste sono credenziali a breve termine per un ruolo IAM che gli AWS Strumenti per PowerShell recuperano per tuo conto.  |  `-SourceProfile` `-RoleArn`  facoltativo: `-ExternalId` facoltativo: `-MfaSerial`  | 

## Il parametro comune `ProfileLocation`
<a name="the-profileslocation-common-parameter"></a>

È possibile utilizzare `-ProfileLocation` per scrivere nel file delle credenziali condivise e istruire un cmdlet per leggere il file delle credenziali. L'aggiunta del `-ProfileLocation` parametro controlla se Tools for Windows PowerShell utilizza il file di credenziali condiviso o il file di credenziali.NET. La tabella seguente descrive come funziona il parametro in Tools for Windows. PowerShell


****  

| Valore posizione profilo | Comportamento della risoluzione del profilo | 
| --- | --- | 
|  null (non impostato) o vuoto  |  In primo luogo, cerca il file delle credenziali .NET per un profilo con il nome specificato. Se il profilo non viene trovato, cerca nel file delle credenziali AWS condivise in`(user's home directory)\.aws\credentials`.  | 
|  Il percorso di un file nel formato di file con credenziali AWS condivise  |  Cerca solo un profilo con uno specifico nome nel file specificato.  | 

### Salvare le credenziali in un file delle credenziali
<a name="save-credentials-to-a-credentials-file"></a>

Per scrivere e salvare le credenziali in uno dei due file delle credenziali, eseguire il cmdlet `Set-AWSCredential`. Gli esempi seguenti mostrano come fare: Il primo comando utilizza `Set-AWSCredential` con `-ProfileLocation` per aggiungere chiavi segrete e di accesso a un profilo specificato dal parametro `-ProfileName`. Nella seconda riga, eseguire il cmdlet [Get-Content](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-content) per visualizzare il contenuto del file delle credenziali.

```
PS > Set-AWSCredential -ProfileLocation C:\Users\auser\.aws\credentials -ProfileName basic_profile -AccessKey access_key2 -SecretKey secret_key2
PS > Get-Content C:\Users\auser\.aws\credentials

aws_access_key_id=access_key2
aws_secret_access_key=secret_key2
```

## Visualizzazione dei profili delle credenziali
<a name="showing-credential-profiles"></a>

Eseguire il AWSCredential cmdlet [Get-](https://docs.aws.amazon.com/powershell/v5/reference/items/Get-AWSCredential.html) e aggiungere il `-ListProfileDetail` parametro per restituire i tipi e le posizioni dei file delle credenziali e un elenco di nomi di profilo.

```
PS > Get-AWSCredential -ListProfileDetail

ProfileName                     StoreTypeName         ProfileLocation
-----------                     -------------         ---------------
source_profile                  NetSDKCredentialsFile
assume_role_profile             NetSDKCredentialsFile
basic_profile                   SharedCredentialsFile C:\Users\auser\.aws\credentials
```

## Rimozione dei profili delle credenziali
<a name="removing-credential-profiles"></a>

Per rimuovere i profili di credenziali, eseguire il nuovo cmdlet [Remove](https://docs.aws.amazon.com/powershell/v5/reference/items/Remove-AWSCredentialProfile.html) - Profile. AWSCredential [Clear- AWSCredential](https://docs.aws.amazon.com/powershell/v5/reference/items/Clear-AWSCredential.html) è obsoleto, ma è ancora disponibile per la compatibilità con le versioni precedenti.

## Note importanti
<a name="important-notes"></a>

Solo [Initialize- AWSDefault Configuration](https://docs.aws.amazon.com/powershell/v5/reference/items/Initialize-AWSDefaultConfiguration.html), [New- e [Set- AWSCredential AWSCredential](https://docs.aws.amazon.com/powershell/v5/reference/items/Set-AWSCredential.html)](https://docs.aws.amazon.com/powershell/v5/reference/items/New-AWSCredential.html) supportano i parametri per i profili di ruolo. Non puoi specificare i parametri del ruolo direttamente in un comando come `Get-S3Bucket -SourceProfile source_profile_name -RoleArn arn:aws:iam::999999999999:role/role_name`. Ciò non funziona perché i cmdlet di servizio non supportano direttamente i parametri `SourceProfile` o `RoleArn`. Devi invece archiviare tali parametri in un profilo, quindi chiamare il comando con il parametro `-ProfileName`.