

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'autenticazione Kerberos per Aurora MySQL
<a name="aurora-mysql-kerberos"></a>

Puoi utilizzare l'autenticazione Kerberos per autenticare gli utenti quando si connettono al cluster di database Aurora MySQL. A tale scopo, devi configurare il cluster di database per utilizzare AWS Directory Service for Microsoft Active Directory per l'autenticazione Kerberos. AWS Directory Service for Microsoft Active Directory è anche chiamato AWS Managed Microsoft AD. È una funzionalità disponibile con Directory Service. Per ulteriori informazioni, consultare [Che cos'è Directory Service?](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/what_is.html)nella *Guida di amministrazione di AWS Directory Service*.

Per iniziare, crea una directory AWS Managed Microsoft AD in cui archiviare le credenziali utente. Quindi fornisci al cluster di database Aurora MySQL il dominio di Active Directory e altre informazioni. Quando gli utenti eseguono l'autenticazione con il cluster di database Aurora MySQL, le richieste di autenticazione vengono inoltrate alla directory AWS Managed Microsoft AD.

Mantenere tutte le credenziali nella stessa directory consente di ridurre il tempo e l'impegno. Con questo approccio, hai una posizione centralizzata per archiviare e gestire le credenziali per più cluster di database. L'uso di una directory può inoltre migliorare il profilo di sicurezza complessivo.

Puoi inoltre accedere alle credenziali da Microsoft Active Directory on-premise. A tale scopo, crea una relazione di dominio trusting in modo che la directory AWS Managed Microsoft AD consideri attendibile Microsoft Active Directory on-premise. In questo modo, gli utenti possono accedere ai cluster di database Aurora MySQL con la stessa esperienza di autenticazione unica (SSO) di Windows dei carichi di lavoro nella rete on-premise.

Un database può usare Kerberos, AWS Identity and Access Management (IAM) o autenticazione Kerberos e IAM insieme. Tuttavia, poiché l'autenticazione Kerberos e IAM forniscono metodi di autenticazione diversi, un utente specifico può accedere a un database utilizzando solo uno o l'altro metodo di autenticazione, ma non entrambi. Per ulteriori informazioni sull'autenticazione IAM, consulta [Autenticazione del database IAM ](UsingWithRDS.IAMDBAuth.md).

**Contents**
+ [Panoramica dell'autenticazione Kerberos per cluster di database Aurora MySQL](#aurora-mysql-kerberos-setting-up-overview)
+ [Limitazioni dell'autenticazione Kerberos per Aurora MySQL](#aurora-mysql-kerberos.limitations)
+ [Configurazione dell'autenticazione Kerberos per cluster di database Aurora MySQL](aurora-mysql-kerberos-setting-up.md)
  + [Passaggio 1: creare una directory utilizzando AWS Managed Microsoft AD](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-directory)
  + [Fase 2: (facoltativa) creazione di un trust per una Active Directory on-premise](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-trust)
  + [Fase 3: creazione di un ruolo IAM per l'utilizzo da parte di Amazon Aurora](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.CreateIAMRole)
  + [Fase 4: creazione e configurazione di utenti](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-users)
  + [Fase 5: creazione o modifica di un cluster di database Aurora MySQL](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-modify)
  + [Fase 6: creazione di utenti Aurora MySQL che utilizzano l'autenticazione Kerberos](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-logins)
    + [Modifica di un accesso Aurora MySQL esistente](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos.modify-login)
  + [Fase 7: configurazione di un client MySQL](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.configure-client)
  + [Fase 8: (facoltativo) configurazione il confronto dei nomi utente senza distinzione tra maiuscole e minuscole](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.case-insensitive)
+ [Connessione ad Aurora MySQL con l'autenticazione Kerberos](aurora-mysql-kerberos-connecting.md)
  + [Utilizzo dell'accesso Kerberos di Aurora MySQL per la connessione al cluster di database](aurora-mysql-kerberos-connecting.md#aurora-mysql-kerberos-connecting.login)
  + [Autenticazione Kerberos con i database globali Aurora](aurora-mysql-kerberos-connecting.md#aurora-mysql-kerberos-connecting.global)
  + [Migrazione da RDS per MySQL ad Aurora MySQL](aurora-mysql-kerberos-connecting.md#aurora-mysql-kerberos-connecting.rds)
  + [Memorizzazione del ticket nella cache impedita](aurora-mysql-kerberos-connecting.md#aurora-mysql-kerberos.destroy-tickets)
  + [Registrazione per l'autenticazione Kerberos](aurora-mysql-kerberos-connecting.md#aurora-mysql-kerberos.logging)
+ [Gestione di un cluster di database in un dominio](aurora-mysql-kerberos-managing.md)
  + [Appartenenza al dominio](aurora-mysql-kerberos-managing.md#aurora-mysql-kerberos-managing.understanding)

## Panoramica dell'autenticazione Kerberos per cluster di database Aurora MySQL
<a name="aurora-mysql-kerberos-setting-up-overview"></a>

Per configurare l'autenticazione Kerberos per un cluster di database Aurora MySQL, completa le fasi generali riportate di seguito. che vengono descritte dettagliatamente più avanti.

1. Utilizza AWS Managed Microsoft AD per creare una directory AWS Managed Microsoft AD. Per creare la directory puoi utilizzare la Console di gestione AWS, AWS CLI o la Directory Service. Per ulteriori informazioni, consulta [Creazione della directory AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_getting_started_create_directory.html) nella *Guida per l'amministrazione di AWS Directory Service*.

1. Creare un ruolo AWS Identity and Access Management (IAM) che utilizza la policy IAM gestita `AmazonRDSDirectoryServiceAccess`. Il ruolo consente ad Amazon Aurora di effettuare chiamate alla tua directory.

   Affinché il ruolo consenta l'accesso, l'endpoint AWS Security Token Service (AWS STS) deve essere attivato nella Regione AWS per l'account AWS. Gli endpoint AWS STS sono attivi per impostazione predefinita in tutte le Regioni AWS e puoi utilizzarli senza ulteriori interventi. Per ulteriori informazioni, consulta [Attivazione e disattivazione di AWS STS in una Regione AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html#sts-regions-activate-deactivate) nella *Guida per l’utente di IAM*.

1. Crea e configura utenti nella directory AWS Managed Microsoft AD utilizzando gli strumenti di Microsoft Active Directory. Per ulteriori informazioni sulla creazione di utenti in Active Directory, consulta [Gestione di utenti e gruppi in AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_manage_users_groups.html) nella *Guida all’amministrazione di AWS Directory Service*.

1. Crea o modifica un cluster di database Aurora MySQL. Se si utilizza l'interfaccia a riga di comando (CLI) o l'API RDS nella richiesta di creazione, specificare un identificatore di dominio con il parametro `Domain`. Utilizza l'identificatore `d-*` generato al momento della creazione della directory e il nome del ruolo IAM creato.

   Se modifichi un cluster di database Aurora MySQL esistente per utilizzare l'autenticazione Kerberos, imposta i parametri di dominio e ruolo IAM per il cluster di database. Individua il cluster di database nello stesso VPC della directory di dominio.

1. Utilizza le credenziali dell'utente principale Amazon RDS per connetterti al cluster di database Aurora MySQL. Crea l'utente del database in Aurora MySQL utilizzando le istruzioni riportate in [Fase 6: creazione di utenti Aurora MySQL che utilizzano l'autenticazione Kerberos](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-logins).

   Gli utenti creati in questo modo possono accedere al cluster di database Aurora MySQL utilizzando l'autenticazione Kerberos. Per ulteriori informazioni, consulta [Connessione ad Aurora MySQL con l'autenticazione Kerberos](aurora-mysql-kerberos-connecting.md).

Per usare l'autenticazione Kerberos con una Microsoft Active Directory on-premise o auto ospitato, crea un *trust tra foreste*. Un trust tra foreste è una relazione di trust tra due gruppi di domini. La fiducia può essere a senso unico o bidirezionale. Per ulteriori informazioni sulla configurazione di trust tra foreste tramite Directory Service, consulta [Quando creare una relazione di trust](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_setup_trust.html) nella *Guida di amministrazione di AWS Directory Service*.

## Limitazioni dell'autenticazione Kerberos per Aurora MySQL
<a name="aurora-mysql-kerberos.limitations"></a>

Le seguenti limitazioni si applicano all'autenticazione Kerberos per Aurora MySQL:
+ L'autenticazione Kerberos è supportata per Aurora MySQL versione 3.03 e successive.

  Per ulteriori informazioni sul supporto Regione AWS, consulta [Autenticazione Kerberos con Aurora MySQL](Concepts.Aurora_Fea_Regions_DB-eng.Feature.KerberosAuthentication.md#Concepts.Aurora_Fea_Regions_DB-eng.Feature.KerberosAuthentication.amy).
+ Per utilizzare l'autenticazione Kerberos con Aurora MySQL, il client o il connettore MySQL deve utilizzare la versione 8.0.26 o successiva su piattaforme Unix e 8.0.27 o successiva su Windows. In caso contrario, il plugin `authentication_kerberos_client` lato client non è disponibile e non puoi autenticarti.
+ Solo AWS Managed Microsoft AD è supportato su Aurora MySQL. Tuttavia, puoi aggiungere i cluster di database Aurora MySQL a domini Microsoft AD gestita condivisi di proprietà di account diversi nella stessa Regione AWS.

  Inoltre puoi utilizzare la tua Active Directory on-premise. Per ulteriori informazioni, consulta [Fase 2: (facoltativa) creazione di un trust per una Active Directory on-premise](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-trust).
+ Quando utilizzi Kerberos per autenticare un utente che si connette al cluster Aurora MySQL dai client MySQL o dai driver nel sistema operativo Windows, per impostazione predefinita i caratteri maiuscoli e minuscoli del nome utente del database devono corrispondere a quelli dell'utente in Active Directory. Ad esempio, se l'utente in Active Directory è `Admin`, il nome utente del database deve essere `Admin`.

  Tuttavia, ora puoi utilizzare il confronto dei nomi utente senza distinzione tra maiuscole e minuscole con il plugin `authentication_kerberos`. Per ulteriori informazioni, consulta [Fase 8: (facoltativo) configurazione il confronto dei nomi utente senza distinzione tra maiuscole e minuscole](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.case-insensitive).
+ È necessario riavviare le istanze database di lettura dopo aver attivato la funzionalità per installare il plugin `authentication_kerberos`.
+ La replica su istanze database che non supportano il plugin `authentication_kerberos` può causare un errore di replica.
+ Affinché i database globali Aurora utilizzino l'autenticazione Kerberos, è necessario configurarla per ogni cluster del database globale.
+ Il nome di dominio non deve contenere più di 62 caratteri.
+ Non modificare la porta del cluster di database dopo aver abilitato l'autenticazione Kerberos. Se si modifica la porta, l'autenticazione Kerberos non funzionerà. 

# Configurazione dell'autenticazione Kerberos per cluster di database Aurora MySQL
<a name="aurora-mysql-kerberos-setting-up"></a>

 AWS Managed Microsoft AD Da utilizzare per configurare l'autenticazione Kerberos per un cluster Aurora MySQL DB. Per configurare l'autenticazione Kerberos, completa la procedura seguente.

**Topics**
+ [Passaggio 1: creare una directory utilizzando AWS Managed Microsoft AD](#aurora-mysql-kerberos-setting-up.create-directory)
+ [Fase 2: (facoltativa) creazione di un trust per una Active Directory on-premise](#aurora-mysql-kerberos-setting-up.create-trust)
+ [Fase 3: creazione di un ruolo IAM per l'utilizzo da parte di Amazon Aurora](#aurora-mysql-kerberos-setting-up.CreateIAMRole)
+ [Fase 4: creazione e configurazione di utenti](#aurora-mysql-kerberos-setting-up.create-users)
+ [Fase 5: creazione o modifica di un cluster di database Aurora MySQL](#aurora-mysql-kerberos-setting-up.create-modify)
+ [Fase 6: creazione di utenti Aurora MySQL che utilizzano l'autenticazione Kerberos](#aurora-mysql-kerberos-setting-up.create-logins)
+ [Fase 7: configurazione di un client MySQL](#aurora-mysql-kerberos-setting-up.configure-client)
+ [Fase 8: (facoltativo) configurazione il confronto dei nomi utente senza distinzione tra maiuscole e minuscole](#aurora-mysql-kerberos-setting-up.case-insensitive)

## Passaggio 1: creare una directory utilizzando AWS Managed Microsoft AD
<a name="aurora-mysql-kerberos-setting-up.create-directory"></a>

Directory Service crea una Active Directory completamente gestita nel AWS cloud. Quando crei una AWS Managed Microsoft AD directory, Directory Service crea due controller di dominio e server DNS (Domain Name System) per tuo conto. I server di directory vengono creati in sottoreti diverse in un VPC. Questa ridondanza assicura che la directory rimanga accessibile anche se si verifica un errore.

Quando crei una AWS Managed Microsoft AD directory, Directory Service esegue le seguenti attività per tuo conto:
+ Configura una Active Directory all'interno del VPC.
+ Crea un account amministratore della directory con il nome utente `Admin` e la password specificata. Puoi utilizzare questo account per gestire le directory.
**Nota**  
Assicurati di salvare questa password. Directory Service non la memorizza. È possibile reimpostarla ma non recuperarla.
+ Crea un gruppo di sicurezza per i controller della directory.

Quando si avvia un AWS Managed Microsoft AD, AWS crea un'unità organizzativa (OU) che contiene tutti gli oggetti della directory. Questa unità organizzativa ha lo stesso nome NetBIOS che hai immesso al momento della creazione della directory e Si trova nella radice del dominio, che è di proprietà e gestita da AWS.

L'`Admin`account creato con la AWS Managed Microsoft AD directory dispone delle autorizzazioni per le attività amministrative più comuni dell'unità organizzativa, tra cui:
+ Creazione, aggiornamento o eliminazione di utenti
+ Aggiunta di risorse al tuo dominio, come file o server di stampa, quindi assegnazione delle autorizzazioni per tali risorse a utenti e dell'UO
+ Crea contenitori aggiuntivi OUs 
+ Delega dell'autorità
+ Ripristino degli oggetti eliminati dal cestino di Active Directory
+ Esegui i PowerShell moduli Windows AD e DNS sul servizio Web Active Directory 

L'account `Admin` dispone anche dei diritti per eseguire queste attività in tutto il dominio:
+ gestione delle configurazioni DNS (aggiunta, eliminazione o aggiornamento di record, zone e server d'inoltro);
+ visualizzazione di log di eventi DNS;
+ visualizzazione di log di eventi di sicurezza.

**Per creare una directory con AWS Managed Microsoft AD**

1. Accedi a Console di gestione AWS e apri la Directory Service console all'indirizzo [https://console.aws.amazon.com/directoryservicev2/](https://console.aws.amazon.com/directoryservicev2/).

1. Nel riquadro di navigazione, seleziona **Directories (Directory)** e quindi **Set up directory (Configura la directory)**.

1. Scegli **AWS Managed Microsoft AD**. AWS Managed Microsoft AD è l'unica opzione attualmente utilizzabile con Amazon RDS.

1. Immettere le seguenti informazioni:  
**Nome DNS directory**  
Il nome completo della directory, ad esempio **corp.example.com**.  
**Nome NetBIOS della directory**  
Nome breve per la directory, ad esempio **CORP**.  
**Descrizione della directory**  
(Opzionale) Una descrizione della directory.  
**Password amministratore**  
La password dell'amministratore della directory. Con il processo di creazione della directory viene generato un account amministratore con il nome utente Admin e questa password.  
La password dell'amministratore della directory e non può includere il termine "admin". La password distingue tra maiuscole e minuscole e la lunghezza deve essere compresa tra 8 e 64 caratteri. Deve anche contenere un carattere di almeno tre delle seguenti quattro categorie:  
   + Lettere minuscole (a–z)
   + Lettere maiuscole (A–Z)
   + Numeri (0–9)
   + Caratteri non alfanumerici (\$1\$1@\$1\$1%^&\$1\$1-\$1=`\$1\$1()\$1\$1[]:;"'<>,.?/)  
**Confirm password (Conferma password)**  
La password dell'amministratore immessa nuovamente.

1. Scegli **Next (Successivo)**.

1.  Immettere le seguenti informazioni nella sezione **Networking (Rete)** e quindi scegliere **Next (Avanti)**:  
**VPC**  
VPC per la directory. Crea il cluster di database Aurora MySQL in questo stesso VPC.  
**Sottoreti**  
Sottoreti per i server di directory. Le due sottoreti devono trovarsi in diverse zone di disponibilità.

1. Esaminare le informazioni relative alla directory e apportare eventuali modifiche. Quando le informazioni sono corrette, scegli **Create Directory (Crea directory)**.  
![\[Pagina dei dettagli della directory durante la creazione\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/WinAuth2.png)

Per creare la directory sono necessari alcuni minuti. Una volta creata correttamente la directory, il valore **Status (Stato)** viene modificato in **Active (Attivo)**.

Per consultare le informazioni sulla directory, selezionare il nome della directory nell'elenco di directory. Prendi nota del valore di **ID directory** perché è necessario quando crei o modifichi il cluster di database Aurora MySQL.

![\[ID directory nella pagina Dettagli della directory\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/WinAuth3.png)


## Fase 2: (facoltativa) creazione di un trust per una Active Directory on-premise
<a name="aurora-mysql-kerberos-setting-up.create-trust"></a>

Se non prevedi di utilizzare Microsoft Active Directory locale, passa a [Fase 3: creazione di un ruolo IAM per l'utilizzo da parte di Amazon Aurora](#aurora-mysql-kerberos-setting-up.CreateIAMRole).

Per utilizzare l'autenticazione Kerberos con l'Active Directory locale, è necessario creare una relazione di dominio affidabile utilizzando un trust di foresta tra Microsoft Active Directory locale e la AWS Managed Microsoft AD directory (creata in). [Passaggio 1: creare una directory utilizzando AWS Managed Microsoft AD](#aurora-mysql-kerberos-setting-up.create-directory) Il trust può essere unidirezionale, in cui la directory AWS Managed Microsoft AD considera attendibile Microsoft Active Directory locale. Il trust può anche essere bidirezionale, in cui entrambe le Active Directory si considerano reciprocamente attendibili. *Per ulteriori informazioni sulla configurazione dei trust utilizzando Directory Service, consulta [When to create a trust relationship nella Administration Guide](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_setup_trust.html).AWS Directory Service *

**Nota**  
Se utilizzi una Microsoft Active Directory locale:  
I client Windows non possono connettersi con endpoint personalizzati Aurora. Per ulteriori informazioni, consulta [Connessioni degli endpoint Amazon Aurora](Aurora.Overview.Endpoints.md).
Per i [database globali](aurora-global-database.md):  
I client Windows possono connettersi solo con endpoint di istanza o cluster nella Regione AWS primaria del database globale.
I client Windows non possono connettersi utilizzando gli endpoint del cluster in modalità secondaria. Regioni AWS

Assicurati che il nome di dominio di Microsoft Active Directory locale includa un routing del suffisso DNS che corrisponde alla nuova relazione di trust creata. Il risultato è mostrato nella screenshot seguente.

![\[Il routing DNS corrisponde al trust creato\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/kerberos-auth-trust.png)


## Fase 3: creazione di un ruolo IAM per l'utilizzo da parte di Amazon Aurora
<a name="aurora-mysql-kerberos-setting-up.CreateIAMRole"></a>

Affinché Amazon Aurora possa Directory Service chiamarti, hai bisogno di un ruolo AWS Identity and Access Management (IAM) che utilizzi la policy IAM gestita. `AmazonRDSDirectoryServiceAccess` Questo ruolo permette ad Aurora di effettuare chiamate ad Directory Service.

Quando crei un cluster DB utilizzando e disponi Console di gestione AWS dell'`iam:CreateRole`autorizzazione, la console crea questo ruolo automaticamente. In questo caso, il nome del ruolo è `rds-directoryservice-kerberos-access-role`. In caso contrario, è necessario creare manualmente il ruolo IAM. Quando crei questo ruolo IAM`Directory Service`, scegli e allega la policy AWS gestita `AmazonRDSDirectoryServiceAccess` ad esso.

Per ulteriori informazioni sulla creazione di ruoli IAM per un servizio, consulta [Creating a role to delegate permissions to an AWS service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) nella *IAM User* Guide.

Facoltativamente, puoi creare policy con le autorizzazioni richieste anziché utilizzare la policy IAM gestita `AmazonRDSDirectoryServiceAccess`. In questo caso, il ruolo IAM deve avere la seguente policy di attendibilità IAM.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "directoryservice.rds.amazonaws.com",
          "rds.amazonaws.com"
        ]
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

Il ruolo deve anche disporre della seguente policy del ruolo IAM.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "ds:DescribeDirectories",
        "ds:AuthorizeApplication",
        "ds:UnauthorizeApplication",
        "ds:GetAuthorizedApplicationDetails"
      ],
    "Effect": "Allow",
    "Resource": "*"
    }
  ]
}
```

------

## Fase 4: creazione e configurazione di utenti
<a name="aurora-mysql-kerberos-setting-up.create-users"></a>

È possibile creare utenti con lo strumento Utenti Active Directory e computer. Questo strumento fa parte degli strumenti Active Directory Domain Services e Active Directory Lightweight Directory Services. Gli utenti possono essere individui singoli o entità che hanno accesso alla tua directory.

Per creare utenti in una Directory Service directory, usi un'istanza locale o Amazon EC2 basata su Microsoft Windows che viene aggiunta alla Directory Service tua directory. Devi anche essere connesso all'istanza come utente che dispone dei privilegi per creare utenti. Per ulteriori informazioni, consulta [Gestione di utenti e gruppi in AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/creating_ad_users_and_groups.html) nella *AWS Directory Service - Guida di amministrazione*.

## Fase 5: creazione o modifica di un cluster di database Aurora MySQL
<a name="aurora-mysql-kerberos-setting-up.create-modify"></a>

Crea o modifica un cluster di database Aurora MySQL da usare con la directory. Puoi utilizzare la console o l' AWS CLI API RDS per associare un cluster DB a una directory. Questa operazione può essere eseguita in uno dei seguenti modi:
+ [Crea un nuovo cluster Aurora MySQL DB utilizzando la console, il comando [ create-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster.html)CLI o l'operazione Create RDS API. DBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBCluster.html)

  Per istruzioni, consulta [Creazione di un cluster database Amazon Aurora](Aurora.CreateInstance.md).
+ [Modifica un cluster Aurora MySQL DB esistente utilizzando la console, il comando CLI o l'operazione Modify [modify-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster.html)RDS API. DBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBCluster.html)

  Per istruzioni, consulta [Modifica di un cluster database Amazon Aurora](Aurora.Modifying.md).
+ [Ripristina un cluster Aurora MySQL DB da un'istantanea DB utilizzando la console, il comando [restore-db-cluster-fromCLI](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-from-snapshot.html) -snapshot o l'operazione API Restore RDS. DBCluster FromSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBClusterFromSnapshot.html)

  Per istruzioni, consulta [Ripristino da uno snapshot cluster database](aurora-restore-snapshot.md).
+ [Ripristina un cluster Aurora MySQL DB point-in-time utilizzando la console, il comando - [ restore-db-cluster-topoint-in-timeCLI o l'operazione Restore RDS](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-to-point-in-time.html) API. DBCluster ToPointInTime](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBClusterToPointInTime.html)

  Per istruzioni, consulta [Ripristino di un cluster di database a un determinato momento](aurora-pitr.md).

L'autenticazione Kerberos è supportata solo per i cluster di database Aurora MySQL in un VPC. Il cluster di database può trovarsi nello stesso VPC della directory o in un VPC diverso. Il VPC del cluster di database deve disporre di un gruppo di sicurezza VPC che consenta la comunicazione in uscita verso la directory. 

### Console
<a name="aurora-mysql-kerberos-setting-up.create-modify.CON"></a>

Quando utilizzi la console per creare, modificare o ripristinare un cluster di database, scegli **Autenticazione Kerberos** nella sezione **Autenticazione database**. Scegli **Browse Directory (Sfoglia directory)** quindi seleziona la directory oppure scegli **Create a new directory (Crea una nuova directory)**.

![\[Impostazione dell'autenticazione Kerberos durante la creazione di un cluster di database\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/kerberos-auth-create-cluster.png)


### AWS CLI
<a name="aurora-mysql-kerberos-setting-up.create-modify.CLI"></a>

Quando utilizzi l'API AWS CLI o RDS, associa un cluster DB a una directory. Per consentire al cluster di database di utilizzare la directory del dominio che hai creato sono necessari i seguenti parametri:
+ Per il parametro `--domain`, utilizza l'identificatore di dominio (identificatore "d-\$1") generato durante la creazione della directory.
+ Per il parametro `--domain-iam-role-name`, utilizza il ruolo creato che utilizza la policy IAM gestita `AmazonRDSDirectoryServiceAccess`.

Ad esempio, il comando CLI seguente modifica un cluster di database per utilizzare una directory.

Per Linux, macOS o Unix:

```
aws rds modify-db-cluster \
    --db-cluster-identifier mydbcluster \
    --domain d-ID \
    --domain-iam-role-name role-name
```

Per Windows:

```
aws rds modify-db-cluster ^
    --db-cluster-identifier mydbcluster ^
    --domain d-ID ^
    --domain-iam-role-name role-name
```

**Importante**  
Se modifichi un cluster di database per abilitare l'autenticazione Kerberos, riavvia le istanze database di lettura dopo aver apportato la modifica.

## Fase 6: creazione di utenti Aurora MySQL che utilizzano l'autenticazione Kerberos
<a name="aurora-mysql-kerberos-setting-up.create-logins"></a>

Il cluster DB viene aggiunto al AWS Managed Microsoft AD dominio. Pertanto, puoi creare utenti Aurora MySQL dagli utenti di Active Directory nel tuo dominio. Le autorizzazioni del database vengono gestite tramite autorizzazioni Aurora MySQL standard concesse e revocate da questi utenti.

È possibile consentire a un utente di Active Directory di autenticarsi con Aurora MySQL. Per fare ciò, utilizza innanzitutto le credenziali utente principale Amazon RDS per connetterti al cluster di database Aurora MySQL come con qualsiasi altro cluster di database. Dopo aver eseguito l'accesso, crea un utente autenticato esternamente con l'autenticazione Kerberos in Aurora MySQL come illustrato di seguito:

```
CREATE USER user_name@'host_name' IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name';
```
+ Sostituisci `user_name` con il nome utente. Gli utenti (persone e applicazioni) del tuo dominio ora possono connettersi al cluster di database da un computer client associato al dominio utilizzando l'autenticazione Kerberos.
+ Sostituisci `host_name` con il nome host. È possibile utilizzare `%` come carattere jolly. È inoltre possibile usare indirizzi IP specifici per il nome host.
+ Sostituisci *realm\$1name* con il nome dell'area di directory del dominio. Il nome del realm è in genere uguale al nome di dominio DNS in lettere maiuscole, ad esempio `CORP.EXAMPLE.COM`. Un realm è un gruppo di sistemi che utilizzano lo stesso Kerberos Key Distribution Center.

L'esempio seguente crea un utente del database con il nome `Admin` che esegue l'autenticazione in Active Directory con il nome del realm `MYSQL.LOCAL`.

```
CREATE USER Admin@'%' IDENTIFIED WITH 'authentication_kerberos' BY 'MYSQL.LOCAL';
```

### Modifica di un accesso Aurora MySQL esistente
<a name="aurora-mysql-kerberos.modify-login"></a>

È possibile modificare un accesso Aurora MySQL esistente per utilizzare l'autenticazione Kerberos usando la seguente sintassi:

```
ALTER USER user_name IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name';
```

## Fase 7: configurazione di un client MySQL
<a name="aurora-mysql-kerberos-setting-up.configure-client"></a>

Per configurare un client MySQL, procedi come indicato di seguito:

1. Crea un file `krb5.conf` (o equivalente) che punti al dominio.

1. Verifica che il traffico possa fluire tra l'host del client e Directory Service. Utilizza un'utilità di rete come Netcat per le operazioni seguenti:
   + Verifica il traffico su DNS per la porta 53.
   + Verifica il traffico verso TCP/UDP la porta 53 e per Kerberos, che include le porte 88 e 464 per. Directory Service

1. Verifica che il traffico scorra senza problemi tra l'host client e l'istanza database sulla porta del database. Ad esempio, utilizza `mysql` per connetterti e accedere al database.

Di seguito è riportato un esempio `krb5.conf` di contenuto per. AWS Managed Microsoft AD

```
[libdefaults]
 default_realm = EXAMPLE.COM
[realms]
 EXAMPLE.COM = {
  kdc = example.com
  admin_server = example.com
 }
[domain_realm]
 .example.com = EXAMPLE.COM
 example.com = EXAMPLE.COM
```

Di seguito è riportato un esempio di contenuto `krb5.conf` per una Microsoft Active Directory on-premise.

```
[libdefaults]
 default_realm = EXAMPLE.COM
[realms]
 EXAMPLE.COM = {
  kdc = example.com
  admin_server = example.com
 }
 ONPREM.COM = {
  kdc = onprem.com
  admin_server = onprem.com
 }
[domain_realm]
 .example.com = EXAMPLE.COM
 example.com = EXAMPLE.COM
 .onprem.com = ONPREM.COM
 onprem.com = ONPREM.COM  
 .rds.amazonaws.com = EXAMPLE.COM
 .amazonaws.com.rproxy.govskope.ca.cn = EXAMPLE.COM
 .amazon.com = EXAMPLE.COM
```

## Fase 8: (facoltativo) configurazione il confronto dei nomi utente senza distinzione tra maiuscole e minuscole
<a name="aurora-mysql-kerberos-setting-up.case-insensitive"></a>

Per impostazione predefinita, a livello di distinzione tra maiuscole e minuscole, il nome utente del database MySQL deve corrispondere a quello dell'accesso di Active Directory. Tuttavia, ora puoi utilizzare il confronto dei nomi utente senza distinzione tra maiuscole e minuscole con il plugin `authentication_kerberos`. A tale scopo, devi impostare il parametro `authentication_kerberos_caseins_cmp` del cluster database su `true`.

**Utilizzo del confronto dei nomi utente senza distinzione tra maiuscole e minuscole**

1. Crea un gruppo di parametri per il cluster database personalizzato. Seguire le procedure indicate in [Creazione di un gruppo di parametri del cluster DB in Amazon Aurora](USER_WorkingWithParamGroups.CreatingCluster.md).

1. Modifica il nuovo gruppo di parametri per impostare il valore di `authentication_kerberos_caseins_cmp` su `true`. Seguire le procedure indicate in [Modifica dei parametri in un gruppo di parametri del cluster DB in Amazon Aurora](USER_WorkingWithParamGroups.ModifyingCluster.md).

1. Associa il gruppo di parametri del cluster di database al cluster database Aurora MySQL. Seguire le procedure indicate in [Associazione di un gruppo di parametri del cluster di database a un cluster di database in Amazon Aurora](USER_WorkingWithParamGroups.AssociatingCluster.md).

1. Riavviare il cluster database.

# Connessione ad Aurora MySQL con l'autenticazione Kerberos
<a name="aurora-mysql-kerberos-connecting"></a>

Per evitare errori, usa un client MySQL versione 8.0.26 o successiva su piattaforme Unix e 8.0.27 o successiva su Windows.

## Utilizzo dell'accesso Kerberos di Aurora MySQL per la connessione al cluster di database
<a name="aurora-mysql-kerberos-connecting.login"></a>

Per connetterti ad Aurora MySQL con l'autenticazione Kerberos, accedi come utente del database creato utilizzando le istruzioni riportate in [Fase 6: creazione di utenti Aurora MySQL che utilizzano l'autenticazione Kerberos](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-logins).

Al prompt dei comandi, connettiti a uno degli endpoint associati al cluster di database Aurora MySQL. Quando viene richiesta la password, immetti la password Kerberos associata al nome utente.

Quando ti autentichi con Kerberos, viene generato un *ticket di concessione* (TGT) se non ne esiste già uno. Il plugin `authentication_kerberos` utilizza il TGT per ottenere un *ticket di servizio*, che viene poi inviato al server di database Aurora MySQL.

Puoi utilizzare il client MySQL per connetterti ad Aurora MySQL con l'autenticazione Kerberos usando Windows o Unix.

### Unix
<a name="aurora-mysql-kerberos-connecting.login.unix"></a>

Puoi connetterti usando i seguenti metodi:
+ Ottieni il TGT manualmente. In questo caso, non è necessario fornire la password al client MySQL.
+ Fornisci la password per l'accesso ad Active Directory direttamente al client MySQL.

Il plugin lato client è supportato nelle piattaforme Unix per i client MySQL versione 8.0.26 e successive.

**Per connettersi ottenendo il TGT manualmente**

1. Nell'interfaccia della linea di comando, utilizza il seguente comando per ottenere il TGT.

   ```
   kinit user_name
   ```

1. Usa il comando `mysql` seguente per accedere all'endpoint dell'istanza database del cluster di database.

   ```
   mysql -h DB_instance_endpoint -P 3306 -u user_name -p
   ```
**Nota**  
L'autenticazione non riesce se il keytab viene ruotato sull'istanza database. In questo caso, ottieni un nuovo TGT eseguendo nuovamente `kinit`.

**Per connettersi direttamente**

1. Nell'interfaccia della linea di comando usa il comando `mysql` seguente per accedere all'endpoint dell'istanza database del cluster di database.

   ```
   mysql -h DB_instance_endpoint -P 3306 -u user_name -p
   ```

1. Immetti la password per l'utente di Active Directory.

### Windows
<a name="aurora-mysql-kerberos-connecting.login.win"></a>

In Windows, l'autenticazione viene solitamente eseguita al momento dell'accesso, quindi non è necessario ottenere il TGT manualmente per connettersi al cluster di database Aurora MySQL. Le maiuscole e minuscole del nome utente del database devono corrispondere alle maiuscole e minuscole dell'utente in Active Directory. Ad esempio, se l'utente in Active Directory è `Admin`, il nome utente del database deve essere `Admin`.

Il plug-in lato client è supportato su Windows per i client MySQL versione 8.0.27 e successive.

**Per connettersi direttamente**
+ Nell'interfaccia della linea di comando usa il comando `mysql` seguente per accedere all'endpoint dell'istanza database del cluster di database.

  ```
  mysql -h DB_instance_endpoint -P 3306 -u user_name
  ```

## Autenticazione Kerberos con i database globali Aurora
<a name="aurora-mysql-kerberos-connecting.global"></a>

L'autenticazione Kerberos per Aurora MySQL è supportata per i database globali Aurora. Per autenticare gli utenti sul cluster di database secondario utilizzando l'Active Directory del cluster di database primario, replica l'Active Directory sulla Regione AWS secondaria. L'autenticazione Kerberos viene attivata sul cluster secondario utilizzando lo stesso ID di dominio del cluster primario. La replica AWS Managed Microsoft AD è supportata solo con la versione Enterprise di Active Directory. Per ulteriori informazioni, consulta [Replica multiregionale](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_configure_multi_region_replication.html) nella *Guida per l'amministrazione di AWS Directory Service*.

## Migrazione da RDS per MySQL ad Aurora MySQL
<a name="aurora-mysql-kerberos-connecting.rds"></a>

Dopo aver eseguito la migrazione da RDS per MySQL ad Aurora MySQL con l'autenticazione Kerberos abilitata, modifica gli utenti creati con il plugin `auth_pam` per utilizzare il plugin `authentication_kerberos`. Per esempio:

```
ALTER USER user_name IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name';
```

## Memorizzazione del ticket nella cache impedita
<a name="aurora-mysql-kerberos.destroy-tickets"></a>

Se non esiste un TGT valido all'avvio, l'applicazione client MySQL può ottenerlo e memorizzarlo nella cache. Se vuoi evitare che il TGT venga memorizzato nella cache, imposta un parametro di configurazione nel file `/etc/krb5.conf`.

**Nota**  
Questa configurazione si applica solo agli host client che eseguono Unix, non Windows.

**Per impedire la memorizzazione del TGT nella cache**
+ Aggiungi una sezione `[appdefaults]` a `/etc/krb5.conf` come segue:

  ```
  [appdefaults]
    mysql = {
      destroy_tickets = true
    }
  ```

## Registrazione per l'autenticazione Kerberos
<a name="aurora-mysql-kerberos.logging"></a>

La variabile di ambiente `AUTHENTICATION_KERBEROS_CLIENT_LOG` imposta il livello di registrazione per l'autenticazione Kerberos. È possibile utilizzare i log per il debug sul lato client.

I valori consentiti sono compresi tra 1 e 5. I messaggi del log vengono scritti nell'output di errore standard. La seguente tabella descrive ciascun livello di registrazione.


| Livello di logging | Descrizione | 
| --- | --- | 
| 1 o non impostato | Nessuna registrazione | 
| 2 | Messaggi di errore | 
| 3 | Messaggi di errore e avviso | 
| 4 | Messaggi di errore, avviso e informazioni | 
| 5 | Messaggi di errore, avviso, informazioni e debug | 

# Gestione di un cluster di database in un dominio
<a name="aurora-mysql-kerberos-managing"></a>

Puoi utilizzare la AWS CLI o l'API RDS per gestire il cluster di database e la sua relazione con la tua Active Directory gestita. Ad esempio, è possibile associare un'autenticazione di Active Directory per Kerberos e annullare l'associazione di una Active Directory per disattivare l'autenticazione Kerberos. Puoi anche spostare un cluster di database affinché venga autenticato esternamente da una Microsoft Active Directory a un'altra.

Ad esempio, puoi utilizzare l'API Amazon RDS per effettuare quanto segue:
+ Per tentare di attivare nuovamente l'autenticazione Kerberos per un'appartenenza non riuscita, utilizza l'operazione API `ModifyDBInstance` e specifica l'ID della directory dell'appartenenza corrente.
+ Per aggiornare il nome del ruolo IAM dell'appartenenza, utilizza l'operazione API `ModifyDBInstance` e specifica l'ID della directory dell'appartenenza corrente e il nuovo ruolo IAM.
+ Per disattivare l'autenticazione Kerberos in un cluster di database, utilizza l'operazione API `ModifyDBInstance` e specifica `none` come parametro di dominio.
+ Per spostare un cluster di database da un dominio a un altro, utilizza l'operazione API `ModifyDBInstance` e specifica l'identificatore del nuovo dominio come parametro di dominio.
+ Per elencare l'appartenenza per ogni cluster di database, utilizza l'operazione API `DescribeDBInstances`.

## Appartenenza al dominio
<a name="aurora-mysql-kerberos-managing.understanding"></a>

Quando il cluster di database viene creato o modificato diventa membro del dominio. Puoi visualizzare lo stato dell'appartenenza al dominio per il cluster di database eseguendo il comando CLI [describe-db-clusters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html). Lo stato del cluster di database può essere uno dei seguenti:
+ `kerberos-enabled`: il cluster di database ha l'autenticazione Kerberos attivata.
+  `enabling-kerberos`: AWS sta attivando l'autenticazione Kerberos sul cluster di database.
+ `pending-enable-kerberos`: l'attivazione dell'autenticazione Kerberos è in sospeso su questo cluster di database.
+ `pending-maintenance-enable-kerberos`: AWS proverà ad attivare l'autenticazione Kerberos sul cluster di database durante la prossima finestra di manutenzione pianificata.
+ `pending-disable-kerberos`: la disattivazione dell'autenticazione Kerberos è in sospeso su questo cluster di database.
+ `pending-maintenance-disable-kerberos`: AWS proverà a disattivare l'autenticazione Kerberos sul cluster di database durante la prossima finestra di manutenzione pianificata.
+ `enable-kerberos-failed`: un problema di configurazione ha impedito ad AWS di attivare l'autenticazione Kerberos sul cluster di database. Verifica e correggi la configurazione prima di eseguire nuovamente il comando di modifica del cluster di database.
+ `disabling-kerberos`: AWS sta disattivando l'autenticazione Kerberos sul cluster di database.

Una richiesta per attivare l'autenticazione Kerberos potrebbe non andare a buon fine a causa di un problema di connettività di rete o un ruolo IAM non corretto. Ad esempio, supponi di creare un cluster di database o di modificare un cluster di database esistente e il tentativo di attivare l'autenticazione Kerberos non riesce. In questo caso, esegui nuovamente il comando di modifica o modifica il cluster di database appena creato per l'aggiunta al dominio.