

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

# Autenticazione con AWS Strumenti per PowerShell AWS
<a name="creds-idc"></a>

È necessario stabilire in che modo il codice si autentica durante lo sviluppo con AWS . Servizi AWS Esistono diversi modi in cui è possibile configurare l'accesso programmatico alle AWS risorse, a seconda dell'ambiente e dell' AWS accesso a disposizione.

Per visualizzare i vari metodi di autenticazione per Tools for PowerShell, consulta [Autenticazione e accesso](https://docs.aws.amazon.com/sdkref/latest/guide/access.html) nella *Guida di riferimento agli strumenti AWS SDKs e agli strumenti*.

In questo argomento si presuppone che un nuovo utente stia sviluppando localmente, non abbia ricevuto un metodo di autenticazione dal datore di lavoro e che lo utilizzerà AWS IAM Identity Center per ottenere credenziali temporanee. Se l'ambiente in uso non rientra in questi presupposti, alcune delle informazioni contenute in questo argomento potrebbero non riguardarti l'utente o potrebbero esserti già state fornite.

La configurazione di questo ambiente richiede diversi passaggi, riassunti di seguito:

1. [Accedi utilizzando le credenziali della console](#login-con-creds)

1. [Abilitazione e configurazione di IAM Identity Center](#idc-config-sso)

1. [Configura gli strumenti per PowerShell utilizzare IAM Identity Center.](#idc-config-sdk)

1. [Avviare una sessione del portale di AWS accesso](#idc-start-portal)

## Accedi utilizzando le credenziali della console
<a name="login-con-creds"></a>

È possibile utilizzare le credenziali di accesso esistenti AWS della Console di gestione per l'accesso programmatico a. Servizi AWS Dopo un flusso di autenticazione basato su browser, AWS Strumenti per PowerShell genera credenziali temporanee che funzionano con strumenti di sviluppo locali come, and. AWS SDKs AWS Strumenti per PowerShell AWS CLI Questa funzionalità semplifica il processo di configurazione e gestione delle credenziali CLI, soprattutto se si preferisce l'autenticazione interattiva alla gestione delle chiavi di accesso a lungo termine.

Con questo processo, puoi autenticarti utilizzando le credenziali root create durante la configurazione iniziale dell'account, un utente IAM o un'identità federata del tuo provider di identità e Tools for gestisce PowerShell automaticamente le credenziali temporanee per te. Questo approccio migliora la sicurezza eliminando la necessità di archiviare le credenziali a lungo termine a livello locale.

Quando si esegue il `Invoke-AWSLogin` cmdlet, è possibile selezionare una delle sessioni attive della console oppure accedere tramite il flusso di autenticazione basato sul browser e questo genererà automaticamente credenziali temporanee. AWS Strumenti per PowerShell aggiornerà automaticamente queste credenziali per un massimo di 12 ore.

Una volta configurata, la sessione può essere utilizzata in AWS Strumenti per PowerShell e in tutti gli altri strumenti AWS SDKs .

### Prerequisiti
<a name="idc-invoke-login-prerequisites"></a>
+ Accesso per accedere alla console di AWS gestione come utente root, utente IAM o tramite federazione con IAM. Se utilizzi IAM Identity Center, vai [Configura gli strumenti per PowerShell utilizzare IAM Identity Center.](#idc-config-sdk) invece a.
+ Assicurati che l'identità IAM disponga delle autorizzazioni appropriate. Allega la policy [SignInLocalDevelopmentAccess](https://docs.aws.amazon.com/signin/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-SignInLocalDevelopmentAccess)gestita al tuo utente, ruolo o gruppo IAM. Se accedi come utente root, non sono richieste autorizzazioni aggiuntive.

### Accedere a AWS con il cmdlet Invoke- AWSLogin
<a name="idc-invoke-login"></a>

Esegui il `Invoke-AWSLogin` cmdlet per l'autenticazione utilizzando le credenziali della console di gestione esistenti. AWS Se non hai configurato in precedenza un profilo, ti verranno richieste ulteriori informazioni.

Per accedere o configurare un profilo, procedi nel seguente modo.

1. Assicurati di aver importato il modulo corretto che hai installato dalla guida all'installazione. 
**Nota**  
Abbiamo tre diversi moduli per PowerShell -`AWS.Tools`, `AWSPowerShell.NetCore` e`AWSPowerShell`. Per ulteriori informazioni, consulta [Cosa sono gli AWS Strumenti per PowerShell?](pstools-welcome.md).
   + Nel PowerShell terminale, esegui il cmdlet. Verrà utilizzato il profilo. `default`

     ```
     PS > Invoke-AWSLogin
     ```
   + Per accedere a un profilo denominato o crearne uno nuovo, usa il `-ProfileName` parametro.

     ```
     PS > Invoke-AWSLogin -ProfileName 'my-dev-profile'
     ```
   + Se si tratta di un nuovo profilo o se non è Regione AWS stato specificato o configurato in nessuna delle profiles/environment variabili precedenti, il cmdlet richiede di fornire un'area.

     ```
     Press Ctrl+C to cancel the following login prompts.
     
     Specify AWS Region
     No AWS region has been configured. The AWS region is the geographic location of your AWS resources.
     
     If you've used AWS before and already have resources in your account, tell us which region they were created in. If you
      haven't created resources in your account before, you can pick the region closest to you:
     https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html
     
     AWS Region:
     ```

1. I AWS Strumenti per PowerShell tentativi di aprire il browser predefinito per la procedura di accesso all'account. AWS 

   ```
   Using region 'us-west-2'
   Attempting to open the login page for 'us-west-2' in your default browser.
   If the browser does not open, use the following URL to complete your login:
   https://signin.us-west-2.amazonaws.com/authorize?<abbreviated>
   
   If you cannot connect to this URL, make sure that you have specified a valid region.
   ```
   + Se il dispositivo utilizzato AWS Strumenti per PowerShell non dispone di un browser, puoi utilizzare il `-Remote` parametro per fornire un URL da aprire su un dispositivo abilitato al browser.

     ```
     PS > Invoke-AWSLogin -Remote
     ```
   + Se hai utilizzato il `-Remote` parametro, vengono visualizzate le istruzioni per avviare manualmente la procedura di accesso in base al tipo di autorizzazione che stai utilizzando. L'URL visualizzato è un URL univoco che inizia con: https://signin.us-east-1.amazonaws.com /authorize. Una volta completato l'accesso al browser, dovrai copiare e incollare nuovamente il codice di autorizzazione risultante nel terminale.

     ```
     Press Ctrl+C to cancel the following login prompts.
     Using region 'us-west-2' determined by profile/environment defaults. To override, specify '-Region' parameter.
     Please complete the login workflow via the following URL:
     
     https://us-west-2.signin.aws.amazon.com/v1/authorize?<abbrievated>
     
     Please enter the authorization code displayed in the browser:
     ```

1. Nel browser, selezionate le credenziali da utilizzare dall'elenco visualizzato e poi tornate al terminale.
   + Se il profilo che state configurando ha una sessione di accesso precedentemente configurata che non corrisponde alla nuova sessione, vi viene AWS Strumenti per PowerShell richiesto di confermare che state cambiando la sessione che corrisponde al profilo esistente.

     ```
     WARNING: Previously profile default was configured for arn:aws:iam::0123456789012:user/ReadOnly, 
                     and is now being updated to arn:aws:iam::0123456789012:user/Admin. 
     
     Do you wish to change the identity that default is associated with? (y/n)
     ```

1. Un messaggio finale descrive la configurazione del profilo completata.

   ```
   Login completed successfully for profile 'my-dev-profile'.
   ```

   Il token di autenticazione viene memorizzato nella cache su disco sotto il. aws/login/cachedirectory con un nome di file hash basato sul profilo risolto.

#### File di configurazione generato
<a name="idc-generated-config"></a>

Questi passaggi comportano la creazione del profilo predefinito o specificato nel file di configurazione simile al seguente:

```
[default]
login_session = arn:aws:iam::0123456789012:user/username
region = us-east-1

[my-dev-profile]
login_session = arn:aws:iam::0123456789012:user/username
region = us-east-1
```

#### Esegui un comando con il tuo profilo
<a name="idc-run-command"></a>

Una volta effettuato l'accesso, è possibile utilizzare le credenziali per richiamare Tools for PowerShell cmdlet con il profilo associato. L'esempio seguente chiama il `Get-STSCallerIdentity` cmdlet utilizzando il profilo predefinito:

```
PS > Get-STSCallerIdentity
```

Per verificare la presenza di una sessione specifica, utilizzare il `-ProfileName` parametro.

```
PS > Get-STSCallerIdentity -ProfileName 'my-dev-profile'
```

Il token di credenziali temporaneo scadrà tra 15 minuti, ma lo AWS Strumenti per PowerShell SDKs aggiornerà automaticamente quando necessario durante le richieste. L'intera sessione sarà valida per un massimo di 12 ore, dopodiché sarà necessario eseguire nuovamente il `Invoke-AWSLogin` cmdlet.

#### Uscire dalla sessione utilizzando il cmdlet `Invoke-AWSLogout`
<a name="idc-logout"></a>

Al termine della sessione, è possibile lasciare scadere le credenziali oppure eseguire il `Invoke-AWSLogout` cmdlet per eliminare le credenziali memorizzate nella cache. Se non viene specificato alcun profilo nella CLI o nella variabile di AWS\$1PROFILE ambiente, il comando esclude il profilo predefinito. L'esempio seguente ti disconnette dal tuo profilo predefinito.

```
PS > Invoke-AWSLogout
```

Per uscire da una sessione di profilo specifica, utilizzate il `-ProfileName` parametro.

```
PS > Invoke-AWSLogout -ProfileName 'my-dev-profile'
```

Per uscire da tutte le sessioni del profilo a cui hai effettuato l'accesso, usa il `-All` parametro.

```
PS > Invoke-AWSLogout -All
```

#### Credenziali memorizzate nella cache
<a name="idc-cached-credentials"></a>

Le credenziali temporanee memorizzate nella cache e i metadati necessari per aggiornarle vengono archiviati per impostazione predefinita `%USERPROFILE%\.aws\login\cache` in Windows o `~/.aws/login/cache` Linux e macOS.

È possibile sovrascrivere questa posizione impostando la variabile di ambiente. `AWS_LOGIN_CACHE_DIRECTORY`

## Abilitazione e configurazione di IAM Identity Center
<a name="idc-config-sso"></a>

Per utilizzarla AWS IAM Identity Center, deve prima essere abilitata e configurata. Per maggiori dettagli su come eseguire questa operazione PowerShell, consulta la **Fase 1** dell'argomento relativo all'[autenticazione di IAM Identity Center](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html) nella *AWS SDKs and Tools Reference Guide*. In particolare, segui le istruzioni necessarie riportate nella sezione **I do not have established access through IAM Identity Center** (Non ho stabilito l'accesso tramite IAM Identity Center).

## Configura gli strumenti per PowerShell utilizzare IAM Identity Center.
<a name="idc-config-sdk"></a>

**Nota**  
A partire dalla versione 4.1.538 di Tools for PowerShell, il metodo consigliato per configurare le credenziali SSO e avviare una sessione del portale di AWS accesso consiste nell'utilizzare i [https://docs.aws.amazon.com/powershell/v5/reference/index.html?page=Invoke-AWSSSOLogin.html&tocid=Invoke-AWSSSOLogin](https://docs.aws.amazon.com/powershell/v5/reference/index.html?page=Invoke-AWSSSOLogin.html&tocid=Invoke-AWSSSOLogin)cmdlet [https://docs.aws.amazon.com/powershell/v5/reference/index.html?page=Initialize-AWSSSOConfiguration.html&tocid=Initialize-AWSSSOConfiguration](https://docs.aws.amazon.com/powershell/v5/reference/index.html?page=Initialize-AWSSSOConfiguration.html&tocid=Initialize-AWSSSOConfiguration)and, come descritto in questo argomento. Se non si ha accesso a quella versione degli strumenti per PowerShell (o successiva) o non è possibile utilizzare tali cmdlet, è comunque possibile eseguire queste attività utilizzando il. AWS CLI Per scoprire come, vedi. [Usa il AWS CLI per accedere al portale](creds-idc-cli.md)

La procedura seguente aggiorna il AWS `config` file condiviso con le informazioni SSO che Tools for PowerShell utilizza per ottenere credenziali temporanee. Come conseguenza di questa procedura, viene avviata anche una sessione del portale di AWS accesso. Se il `config` file condiviso contiene già informazioni SSO e desideri semplicemente sapere come avviare una sessione del portale di accesso utilizzando gli Strumenti per PowerShell, consulta la sezione successiva di questo argomento,[Avviare una sessione del portale di AWS accesso](#idc-start-portal).

1. Se non l'hai ancora fatto, apri PowerShell e installa il file appropriato per AWS Strumenti per PowerShell il tuo sistema operativo e ambiente, inclusi i cmdlet comuni. Per informazioni su come eseguire questa attività, consultare [Inizia con AWS Strumenti per PowerShell](pstools-getting-set-up.md).

   Ad esempio, se installi la versione modulare di Tools for PowerShell on Windows, molto probabilmente eseguirai comandi simili ai seguenti:

   ```
   Install-Module -Name AWS.Tools.Installer
   Install-AWSToolsModule AWS.Tools.Common
   ```

1. Eseguire il seguente comando seguente. Sostituisci i valori delle proprietà di esempio con i valori della configurazione di IAM Identity Center. Per informazioni su queste proprietà e su come trovarle, consulta le [impostazioni del provider di credenziali IAM Identity Center](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html#feature-sso-credentials-profile) nella *AWS SDKs and Tools Reference Guide*.

   ```
   $params = @{
     ProfileName = 'my-sso-profile'
     AccountId = '111122223333'
     RoleName = 'SamplePermissionSet'
     SessionName = 'my-sso-session'
     StartUrl = 'https://provided-domain.awsapps.com/start'
     SSORegion = 'us-west-2'
     RegistrationScopes = 'sso:account:access'
   };
   Initialize-AWSSSOConfiguration @params
   ```

   In alternativa, è possibile utilizzare semplicemente il cmdlet da solo e la `Initialize-AWSSSOConfiguration` finestra Tools for PowerShell richiede i valori delle proprietà.

   Considerazioni per determinati valori di proprietà:
   + Se hai semplicemente seguito le istruzioni per [abilitare e configurare IAM Identity Center](#idc-config-sso), il valore per `-RoleName` potrebbe essere`PowerUserAccess`. Ma se hai creato un set di autorizzazioni IAM Identity Center appositamente per PowerShell il lavoro, utilizzalo invece.
   + Assicurati di utilizzare il Regione AWS punto in cui hai configurato IAM Identity Center.

1. A questo punto, il AWS `config` file condiviso contiene un profilo chiamato `my-sso-profile` con un set di valori di configurazione a cui è possibile fare riferimento negli Strumenti per PowerShell. Per trovare la posizione di questo file, consulta [Posizione dei file condivisi nella](https://docs.aws.amazon.com/sdkref/latest/guide/file-location.html) *Guida di riferimento agli strumenti AWS SDKs e strumenti*.

   Tools for PowerShell utilizza il provider di token SSO del profilo per acquisire le credenziali prima di inviare richieste a. AWS Il `sso_role_name` valore, che è un ruolo IAM connesso a un set di autorizzazioni IAM Identity Center, dovrebbe consentire l'accesso ai dati Servizi AWS utilizzati nell'applicazione.

   L'esempio seguente mostra il profilo che è stato creato utilizzando il comando mostrato sopra. Alcuni valori delle proprietà e il relativo ordine potrebbero essere diversi nel profilo attuale. La `sso-session` proprietà del profilo si riferisce alla sezione denominata`my-sso-session`, che contiene le impostazioni per avviare una sessione del portale di AWS accesso.

   ```
   [profile my-sso-profile]
   sso_account_id=111122223333
   sso_role_name=SamplePermissionSet
   sso_session=my-sso-session
   
   [sso-session my-sso-session]
   sso_region=us-west-2
   sso_registration_scopes=sso:account:access
   sso_start_url=https://provided-domain.awsapps.com/start/
   ```

1. Se hai già una sessione attiva del portale di AWS accesso, la sezione Strumenti ti PowerShell informa che hai già effettuato l'accesso.

   In caso contrario, la sezione Strumenti PowerShell tenta di aprire automaticamente la pagina di autorizzazione SSO nel browser Web predefinito. Segui le istruzioni del tuo browser, che potrebbero includere un codice di autorizzazione SSO, nome utente e password e l'autorizzazione ad accedere agli AWS IAM Identity Center account e ai set di autorizzazioni.

   Gli strumenti per PowerShell informarti che l'accesso SSO è avvenuto con successo.

## Avviare una sessione del portale di AWS accesso
<a name="idc-start-portal"></a>

Prima di eseguire i comandi di accesso Servizi AWS, è necessaria una sessione attiva del portale di AWS accesso in modo che Tools for PowerShell possa utilizzare l'autenticazione IAM Identity Center per risolvere le credenziali. Per accedere al portale di AWS accesso, esegui il seguente comando in PowerShell, `-ProfileName my-sso-profile` dov'è il nome del profilo che è stato creato nel `config` file condiviso quando hai seguito la procedura nella sezione precedente di questo argomento.

```
Invoke-AWSSSOLogin -ProfileName my-sso-profile
```

Se hai già una sessione attiva del portale di AWS accesso, il menu Strumenti ti PowerShell informa che hai già effettuato l'accesso.

In caso contrario, la sezione Strumenti PowerShell tenta di aprire automaticamente la pagina di autorizzazione SSO nel browser Web predefinito. Segui le istruzioni del tuo browser, che potrebbero includere un codice di autorizzazione SSO, nome utente e password e l'autorizzazione ad accedere agli AWS IAM Identity Center account e ai set di autorizzazioni.

Gli strumenti per PowerShell informarti che l'accesso SSO è avvenuto con successo.

Per verificare se hai già una sessione attiva, esegui il comando seguente dopo aver installato o importato il `AWS.Tools.SecurityToken` modulo, se necessario.

```
Get-STSCallerIdentity -ProfileName my-sso-profile
```

La risposta al `Get-STSCallerIdentity` cmdlet riporta l'account IAM Identity Center e il set di autorizzazioni configurati nel file condiviso. `config`

## Esempio
<a name="idc-short-example"></a>

Di seguito è riportato un esempio di come utilizzare IAM Identity Center con gli strumenti per. PowerShell Si presume quanto segue:
+ Hai abilitato IAM Identity Center e lo hai configurato come descritto in questo argomento. Le proprietà SSO si trovano nel `my-sso-profile` profilo, configurato in precedenza in questo argomento.
+ Quando accedi tramite i `Invoke-AWSSSOLogin` cmdlet `Initialize-AWSSSOConfiguration` or, l'utente dispone almeno delle autorizzazioni di sola lettura per Amazon S3.
+ Alcuni bucket S3 sono disponibili per la visualizzazione da parte dell'utente.

Installa o importa il `AWS.Tools.S3` modulo secondo necessità, quindi utilizza il PowerShell comando seguente per visualizzare un elenco dei bucket S3.

```
Get-S3Bucket -ProfileName my-sso-profile
```

## Informazioni aggiuntive
<a name="idc-additional-info"></a>
+ Per ulteriori opzioni sull'autenticazione per gli strumenti per PowerShell, come l'uso di profili e variabili di ambiente, consulta il capitolo sulla [configurazione](https://docs.aws.amazon.com/sdkref/latest/guide/creds-config-files.html) nella Guida di *riferimento agli strumenti AWS SDKs e agli strumenti*.
+ Alcuni comandi richiedono la specificazione di una AWS regione. Esistono diversi modi per farlo, tra cui l'opzione del `-Region` cmdlet, il `[default]` profilo e la variabile di `AWS_REGION` ambiente. Per ulteriori informazioni, vedere [Specificare la AWS regione per AWS Strumenti per PowerShell](pstools-installing-specifying-region.md) in questa guida e [AWS Region nella AWS](https://docs.aws.amazon.com/sdkref/latest/guide/feature-region.html) *SDKs and Tools Reference* Guide.
+ Per ulteriori informazioni sulle best practice, consulta [Best practice per la sicurezza in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) nella *Guida per l'utente di IAM*.
+ Per creare AWS credenziali a breve termine, consulta [Temporary Security Credentials](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) nella *IAM User Guide*.
+ *Per ulteriori informazioni su altri fornitori di credenziali, consulta Provider di [credenziali standardizzati nella and Tools Reference](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html) Guide AWS SDKs .*

**Topics**
+ [Accedi utilizzando le credenziali della console](#login-con-creds)
+ [Abilitazione e configurazione di IAM Identity Center](#idc-config-sso)
+ [Configura gli strumenti per PowerShell utilizzare IAM Identity Center.](#idc-config-sdk)
+ [Avviare una sessione del portale di AWS accesso](#idc-start-portal)
+ [Esempio](#idc-short-example)
+ [Informazioni aggiuntive](#idc-additional-info)
+ [Usa il AWS CLI](creds-idc-cli.md)