

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

# Connessione al di istanze DB utilizzando l'autenticazione IAM dalla riga di comando: AWS CLI e il client mysql
<a name="UsingWithRDS.IAMDBAuth.Connecting.AWSCLI"></a>

Puoi connetterti dalla riga di comando a un cluster DB di istanze Amazon RDS con AWS CLI lo strumento da riga di comando `mysql` and come descritto di seguito.

**Prerequisiti**  
Di seguito sono riportati i prerequisiti per la connessione al di istanzaDB utilizzando l’autenticazione IAM:
+ [Abilitazione e disabilitazione dell’autenticazione database IAM](UsingWithRDS.IAMDBAuth.Enabling.md)
+ [Creazione e utilizzo di una policy IAM per l'accesso al database IAM](UsingWithRDS.IAMDBAuth.IAMPolicy.md)
+ [Creazione di un account database tramite l’autenticazione IAM](UsingWithRDS.IAMDBAuth.DBAccounts.md)

**Nota**  
Per informazioni sulla connessione al database tramite SQL Workbench/J con autenticazione IAM, consulta il post del blog [Use IAM authentication to connect with SQL Workbench/J to Aurora MySQL o Amazon RDS for MySQL](https://aws.amazon.com/blogs/database/use-iam-authentication-to-connect-with-sql-workbenchj-to-amazon-aurora-mysql-or-amazon-rds-for-mysql/).

**Topics**
+ [Generazione di un token di autenticazione IAM](#UsingWithRDS.IAMDBAuth.Connecting.AWSCLI.AuthToken)
+ [Connessione a un’istanza database](#UsingWithRDS.IAMDBAuth.Connecting.AWSCLI.Connect)

## Generazione di un token di autenticazione IAM
<a name="UsingWithRDS.IAMDBAuth.Connecting.AWSCLI.AuthToken"></a>

L'esempio seguente mostra come ottenere un token di autenticazione firmato utilizzando AWS CLI.

```
aws rds generate-db-auth-token \
   --hostname rdsmysql.123456789012.us-west-2.rds.amazonaws.com \
   --port 3306 \
   --region us-west-2 \
   --username jane_doe
```

Nell'esempio, i parametri sono come segue:
+ `--hostname` – Nome host dell'istanza database cui vuoi accedere.
+ `--port` – Numero di porta usato per la connessione al cluster
+ `--region`
+ `--username` – L'account database cui vuoi accedere.

I primi caratteri del token hanno il seguente aspetto.

```
rdsmysql.123456789012.us-west-2.rds.amazonaws.com:3306/?Action=connect&DBUser=jane_doe&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=900...
```

**Nota**  
Non è possibile utilizzare un record DNS Route 53 personalizzato anziché l'endpoint dell'istanza databaseper generare il token di autenticazione.

## Connessione a un’istanza database
<a name="UsingWithRDS.IAMDBAuth.Connecting.AWSCLI.Connect"></a>

Il formato generale per la connessione è visualizzato di seguito.

```
mysql --host=hostName --port=portNumber --ssl-ca=full_path_to_ssl_certificate --enable-cleartext-plugin --user=userName --password=authToken
```

I parametri sono i seguenti:
+ `--host` – Nome host dell'istanza database cui vuoi accedere.
+ `--port` – Numero di porta usato per la connessione al cluster
+ `--ssl-ca` – Il percorso completo del file del certificato SSL che contiene la chiave pubblica

  Per ulteriori informazioni sul SSL/TLS supporto per MariadB, consulta. [Supporto di SSL/TLS per le istanze database MariaDB in Amazon RDS](MariaDB.Concepts.SSLSupport.md)

  Per ulteriori informazioni sul SSL/TLS supporto per MySQL, vedere. [Supporto di SSL/TLS per le istanze database MySQL in Amazon RDS](MySQL.Concepts.SSLSupport.md)

  Per scaricare un certificato SSL consulta [](UsingWithRDS.SSL.md)
+ `--enable-cleartext-plugin` – Valore che specifica che per la connessione deve essere usato `AWSAuthenticationPlugin`.

  Se si utilizza un client MariaDB, l'opzione `--enable-cleartext-plugin` non è richiesta.
+ `--user` – L'account database cui vuoi accedere.
+ `--password` – Token di autenticazione IAM firmato.

Il token di autenticazione consiste in diverse centinaia di caratteri. Può essere macchinoso nella riga di comando. Una soluzione è di salvare il token in una variabile di ambiente e utilizzare quella variabile durante la connessione. L'esempio seguente mostra un modo per eseguire questa soluzione. Nell'esempio, */sample\$1dir/* è il percorso completo del file del certificato SSL che contiene la chiave pubblica.

```
RDSHOST="mysqldb.123456789012.us-east-1.rds.amazonaws.com"
TOKEN="$(aws rds generate-db-auth-token --hostname $RDSHOST --port 3306 --region us-west-2 --username jane_doe )"

mysql --host=$RDSHOST --port=3306 --ssl-ca=/sample_dir/global-bundle.pem --enable-cleartext-plugin --user=jane_doe --password=$TOKEN
```

Quando si esegue la connessione utilizzando `AWSAuthenticationPlugin`, la connessione viene protetta utilizzando SSL. Per verificare ciò, digita quanto segue al prompt del comando `mysql>`.

```
show status like 'Ssl%';
```

Le righe seguenti nell'output mostrano più dettagli.

```
+---------------+-------------+
| Variable_name | Value                                                                                                                                                                                                                                |
+---------------+-------------+
| ...           | ...
| Ssl_cipher    | AES256-SHA                                                                                                                                                                                                                           |
| ...           | ...
| Ssl_version   | TLSv1.1                                                                                                                                                                                                                              |
| ...           | ...
+-----------------------------+
```

Se desideri connetterti a un'istanza database tramite un proxy, consulta [Connessione a un database tramite l'autenticazione IAM](rds-proxy-connecting.md#rds-proxy-connecting-iam).