

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 di `credentials` file `config` e file condivisi per configurare AWS SDKs e utilizzare strumenti a livello globale
<a name="file-format"></a>

I `credentials` file AWS `config` condivisi sono il modo più comune per specificare l'autenticazione e la configurazione su un AWS SDK o uno strumento.

I `credentials` file condivisi `config` e contengono un set di profili. Un profilo è un insieme di impostazioni di configurazione, in coppie chiave-valore, utilizzato da AWS SDKs, the AWS Command Line Interface (AWS CLI) e altri strumenti. I valori di configurazione sono allegati a un profilo per configurare alcuni aspetti del SDK/tool momento in cui tale profilo viene utilizzato. Questi file sono «condivisi» in quanto i valori hanno effetto su qualsiasi applicazione, processo o SDKs sull'ambiente locale di un utente.

Sia i file condivisi che `config` i `credentials` file sono file di testo semplice che contengono solo caratteri ASCII (con codifica UTF-8). [Assumono la forma di quelli che vengono generalmente definiti file INI.](https://wikipedia.org/wiki/INI_file)

## Profili
<a name="file-format-profile"></a>

Le impostazioni all'interno dei `credentials` file `config` e dei file condivisi sono associate a un profilo specifico. È possibile definire più profili all'interno del file per creare diverse configurazioni di impostazione da applicare in diversi ambienti di sviluppo.

 Il `[default]` profilo contiene i valori utilizzati da un SDK o dall'operazione dello strumento se non viene specificato un profilo denominato specifico. Puoi anche creare profili separati a cui puoi fare riferimento esplicitamente per nome. Ogni profilo può utilizzare impostazioni e valori diversi in base alle esigenze dell'applicazione e dello scenario. 

**Nota**  
`[default]`è semplicemente un profilo senza nome. Questo profilo è denominato `default` perché è il profilo predefinito utilizzato dall'SDK se l'utente non specifica un profilo. Non fornisce valori predefiniti ereditati ad altri profili. Se si imposta qualcosa nel `[default]` profilo e non lo si imposta in un profilo denominato, il valore non viene impostato quando si utilizza il profilo denominato. 

### Imposta un profilo denominato
<a name="set-named-profile"></a>

Il `[default]` profilo e più profili denominati possono esistere nello stesso file. Utilizza la seguente impostazione per selezionare le impostazioni del profilo utilizzate dall'SDK o dallo strumento durante l'esecuzione del codice. I profili possono anche essere selezionati all'interno del codice o per comando quando si lavora con. AWS CLI

Configura questa funzionalità impostando una delle seguenti opzioni:

**`AWS_PROFILE`- variabile di ambiente**  
Quando questa variabile di ambiente è impostata su un profilo denominato o «predefinito», tutto il codice e AWS CLI i comandi SDK utilizzano le impostazioni di quel profilo.  
Esempio in Linux/macOS di impostazione delle variabili di ambiente tramite riga di comando:  

```
export AWS_PROFILE="my_default_profile_name";
```
Esempio in Windows di impostazione delle variabili di ambiente tramite riga di comando:  

```
setx AWS_PROFILE "my_default_profile_name"
```

**`aws.profile`- Proprietà del sistema JVM**  
[Per SDK for Kotlin su JVM e SDK for Java 2.x, puoi impostare la proprietà di sistema. `aws.profile`](jvm-system-properties.md#jvm-sys-props-set) Quando l'SDK crea un client di servizio, utilizza le impostazioni nel profilo denominato a meno che l'impostazione non venga sovrascritta nel codice. L'SDK for Java 1.x non supporta questa proprietà di sistema.

**Nota**  
Se l'applicazione si trova su un server che esegue più applicazioni, si consiglia di utilizzare sempre profili denominati anziché il profilo predefinito. Il profilo predefinito viene selezionato automaticamente da qualsiasi AWS applicazione nell'ambiente e viene condiviso tra di esse. Pertanto, se qualcun altro aggiorna il profilo predefinito per la propria applicazione, ciò può influire involontariamente sugli altri. Per evitare ciò, definite un profilo denominato nel `config` file condiviso e quindi utilizzate quel profilo denominato nell'applicazione impostando il profilo denominato nel codice. Puoi utilizzare la variabile di ambiente o la proprietà di sistema JVM per impostare il profilo denominato se sai che l'ambito influisce solo sulla tua applicazione.

## Formato del file di configurazione
<a name="file-format-config"></a>

Il `config` file è organizzato in sezioni. Una sezione è una raccolta denominata di impostazioni e prosegue fino a quando non si incontra un’altra riga di definizione della sezione.

Il `config` file è un file di testo semplice che utilizza il seguente formato:
+ Tutte le voci di una sezione assumono il formato generale `setting-name=value`.
+ Le righe possono essere commentate iniziando la riga con un carattere hashtag (). `#`

### Tipi di sezione
<a name="section-types"></a>

Una definizione di sezione è una riga che applica un nome a una raccolta di impostazioni. Le linee di definizione della sezione iniziano e finiscono con parentesi quadre (`[``]`). All'interno delle parentesi, c'è un identificatore del tipo di sezione e un nome personalizzato per la sezione. È possibile utilizzare lettere, numeri, trattini (`-`) e caratteri di sottolineatura (`_`), ma non spazi.

#### Tipo di sezione: `default`
<a name="section-default"></a>

Esempio di riga di definizione della sezione: `[default]`

 `[default]`è l'unico profilo che non richiede l'identificatore di `profile` sezione. 

L'esempio seguente mostra un `config` file di base con un `[default]` profilo. Imposta l'[`region`](feature-region.md)impostazione. Tutte le impostazioni che seguono questa riga, fino alla definizione di un'altra sezione, fanno parte di questo profilo. 

```
[default]
#Full line comment, this text is ignored.
region = us-east-2
```

#### Tipo di sezione: `profile`
<a name="section-profile"></a>

Esempio di riga di definizione della sezione: `[profile dev]`

La riga di definizione della `profile` sezione è un raggruppamento di configurazione denominato che è possibile applicare per diversi scenari di sviluppo. Per comprendere meglio i profili denominati, consultate la sezione precedente su Profili. 

L'esempio seguente mostra un `config` file con una riga di definizione della `profile` sezione e un profilo denominato`foo`. Tutte le impostazioni che seguono questa riga, fino a quando non viene trovata un'altra definizione di sezione, fanno parte di questo profilo denominato. 

```
[profile foo]
...settings...
```

Alcune impostazioni hanno un proprio gruppo annidato di sottoimpostazioni, come l'`s3`impostazione e le sottoimpostazioni dell'esempio seguente. Associate le sottoimpostazioni al gruppo facendole rientrare con uno o più spazi.

```
[profile test]
region = us-west-2
s3 =
    max_concurrent_requests=10
    max_queue_size=1000
```

#### Tipo di sezione: `sso-session`
<a name="section-session"></a>

Esempio di riga di definizione della sezione: `[sso-session my-sso]`

La riga di definizione della `sso-session` sezione nomina un gruppo di impostazioni utilizzate per configurare un profilo con cui risolvere AWS le credenziali. AWS IAM Identity Center Per ulteriori informazioni sulla configurazione dell'autenticazione Single Sign-On, vedere. [Utilizzo di IAM Identity Center per autenticare AWS SDK e strumenti](access-sso.md) Un profilo è collegato a una `sso-session` sezione da una coppia chiave-valore in cui `sso-session` è la chiave e il nome della `sso-session` sezione è il valore, ad esempio. `sso-session = <name-of-sso-session-section>` 

L'esempio seguente configura un profilo che otterrà AWS le credenziali a breve termine per il ruolo "SampleRole" IAM nell'account «111122223333" utilizzando un token proveniente da «my-sso». La sezione «my-sso» viene referenziata `sso-session` nella sezione per nome utilizzando la chiave. `profile` `sso-session` 

```
[profile dev]
sso_session = my-sso
sso_account_id = 111122223333
sso_role_name = SampleRole

[sso-session my-sso]
sso_region = us-east-1
sso_start_url = https://my-sso-portal.awsapps.com/start
```

#### Tipo di sezione: `services`
<a name="section-services"></a>

Esempio di riga di definizione della sezione: `[services dev]`

**Nota**  
La `services` sezione supporta le personalizzazioni degli endpoint specifici del servizio ed è disponibile solo negli strumenti che SDKs includono questa funzionalità. Per vedere se questa funzionalità è disponibile per il tuo SDK, consulta per gli endpoint specifici del servizio. [Support by AWS SDKs and tools](feature-ss-endpoints.md#ss-endpoints-sdk-compat)

La riga di definizione della `services` sezione indica un gruppo di impostazioni che configurano endpoint personalizzati per le richieste. Servizio AWS Un profilo è collegato a una `services` sezione da una coppia chiave-valore in cui `services` è la chiave e il nome della `services` sezione è il valore, ad esempio. `services = <name-of-services-section>` 

 La `services` sezione è ulteriormente suddivisa in sottosezioni mediante `<SERVICE> = ` righe, dove si `<SERVICE>` trova la Servizio AWS chiave identificativa. L' Servizio AWS identificatore si basa sul modello API e sostituisce tutti gli spazi con caratteri `serviceId` di sottolineatura e tutte le lettere minuscole. Per un elenco di tutte le chiavi identificative del servizio da utilizzare nella sezione `services`, consulta [Identificatori per endpoint specifici del servizio](ss-endpoints-table.md). La chiave identificativa del servizio è seguita da impostazioni annidate, ciascuna sulla propria riga e con un rientro di due spazi. 

 L'esempio seguente utilizza una `services` definizione per configurare l'endpoint da utilizzare per le richieste effettuate solo al servizio. Amazon DynamoDB La `"local-dynamodb"` `services` sezione viene referenziata nella `profile` sezione per nome utilizzando la `services` chiave. La chiave Servizio AWS identificativa è. `dynamodb` La sottosezione del Amazon DynamoDB servizio inizia sulla linea. `dynamodb = ` Tutte le righe con rientro immediatamente successive vengono incluse in tale sottosezione e si applicano a quel servizio. 

```
[profile dev]
services = local-dynamodb

[services local-dynamodb]
dynamodb = 
  endpoint_url = http://localhost:8000
```

Per ulteriori informazioni sulla configurazione personalizzata degli endpoint, vedere. [Endpoint specifici del servizio](feature-ss-endpoints.md)

## Formato del file delle credenziali
<a name="file-format-creds"></a>

Le regole per il `credentials` file sono generalmente identiche a quelle del `config` file, tranne per il fatto che le sezioni del profilo non iniziano con la parola`profile`. Usa solo il nome del profilo stesso tra parentesi quadre. L'esempio seguente mostra un `credentials` file con una sezione di profilo denominata denominata. `foo` 

```
[foo]
...credential settings...
```

Nel `credentials` file possono essere memorizzate solo le seguenti impostazioni considerate «segrete» o sensibili:`aws_access_key_id`,`aws_secret_access_key`, e`aws_session_token`. Sebbene queste impostazioni possano essere inserite in alternativa nel `config` file condiviso, ti consigliamo di conservare questi valori sensibili in un `credentials` file separato. In questo modo, puoi fornire autorizzazioni separate per ogni file, se necessario.

L'esempio seguente mostra un `credentials` file di base con un `[default]` profilo. Imposta [`aws_access_key_id``aws_secret_access_key`le impostazioni e `aws_session_token`](feature-static-credentials.md) globali.

```
[default]
aws_access_key_id=AKIAIOSFODNN7EXAMPLE
aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
```

Indipendentemente dal fatto che si utilizzi un profilo denominato o `default` "" nel `credentials` file, tutte le impostazioni qui riportate verranno combinate con tutte le impostazioni `config` del file che utilizzano lo stesso nome di profilo. Se in entrambi i file sono presenti credenziali per un profilo che condivide lo stesso nome, le chiavi nel file delle credenziali hanno la precedenza. 