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 Kerberos dell'autenticazione per Amazon RDS for MySQL
Puoi utilizzare Autenticazione Kerberos per autenticare gli utenti quando si connettono all'istanza database MySQL. L'istanza DB funziona con AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD) per abilitare l'autenticazione Kerberos. Quando gli utenti si autenticano con un'istanza database MySQL DB unita al dominio trusting, vengono inoltrate le richieste di autenticazione. Le richieste inoltrate vanno alla directory del dominio con cui crei. AWS Directory Service
Mantenere tutte le credenziali nella stessa directory consente di ridurre il tempo e l'impegno. Con questo approccio, è disponibile una posizione centralizzata per archiviare e gestire le credenziali per più istanze database. L'uso di una directory può inoltre migliorare il profilo di sicurezza complessivo.
Disponibilità di regioni e versioni
Il supporto varia a seconda delle versioni specifiche di ciascun motore di database e a seconda delle Regioni AWS. Per ulteriori informazioni sulla disponibilità di versioni e regioni per Amazon RDS con autenticazione Kerberos, consulta Regioni e motori DB supportati per l'autenticazione Kerberos in Amazon RDS.
Panoramica della configurazione dell'autenticazione Kerberos per istanze database MySQL
Per configurare l'autenticazione Kerberos per un'istanza database MySQL, completa le seguenti fasi generali, descritte in dettaglio più avanti:
-
Usa AWS Managed Microsoft AD per creare una AWS Managed Microsoft AD directory. È possibile utilizzare il AWS Management Console AWS CLI, il o il AWS Directory Service per creare la directory. Per ulteriori informazioni su questa operazione, consulta Creare la AWS Managed Microsoft AD directory nella Guida all'AWS Directory Service amministrazione.
-
Crea un ruolo AWS Identity and Access Management (IAM) che utilizzi la policy IAM gestita
AmazonRDSDirectoryServiceAccess
. Il ruolo consente ad Amazon RDS di effettuare chiamate alla tua directory.Affinché il ruolo consenta l'accesso, l'endpoint AWS Security Token Service (AWS STS) deve essere attivato nel campo Regione AWS per il tuo AWS account. AWS STS Gli endpoint sono tutti Regioni AWS attivi per impostazione predefinita e puoi utilizzarli senza ulteriori azioni. Per ulteriori informazioni, consulta Attivazione e disattivazione AWS STSRegione AWS in un capitolo della IAM User Guide.
-
Crea e configura gli utenti nella AWS Managed Microsoft AD directory utilizzando gli strumenti di Microsoft Active Directory. Per ulteriori informazioni sulla creazione di utenti in Active Directory, vedere Gestire utenti e gruppi in Microsoft AD AWS gestito nella Guida all'AWS Directory Service amministrazione.
-
Creazione o modifica di un'istanza database 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
. Utilizzare l'identificatored-*
generato al momento della creazione della directory e il nome del ruolo creato.Se si modifica un'istanza database MySQL esistente per utilizzare l'autenticazione Kerberos, impostare i parametri di dominio e ruolo IAM per l'istanza database. Individuare l'istanza database nello stesso VPC della directory di dominio.
-
Utilizza le credenziali dell'utente master Amazon RDS per connetterti all'istanza database MySQL. Crea l'utente in MySQL utilizzando la clausola
CREATE USER
IDENTIFIED WITH 'auth_pam'
. Gli utenti creati in questo modo possono accedere all'istanza database MySQL utilizzando l'autenticazione Kerberos.
Configurazione dell'autenticazione Kerberos per istanze database MySQL
Si utilizza AWS Managed Microsoft AD per configurare l'autenticazione Kerberos per un'istanza DB MySQL. Per configurare l'autenticazione Kerberos, completa la procedura seguente.
Passaggio 1: creare una directory utilizzando AWS Managed Microsoft AD
AWS Directory Service crea una Active Directory completamente gestita nel AWS cloud. Quando crei una AWS Managed Microsoft AD directory, AWS 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, AWS Directory Service esegue le seguenti attività per tuo conto:
-
Configura una Active Directory all'interno del VPC.
-
Crea un account amministratore della directory con nome utente Admin e la password specificata. Puoi utilizzare questo account per gestire le directory.
Nota
Assicurati di salvare questa password. AWS 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 digitato al momento della creazione della directory e si trova nella radice del dominio. La radice del dominio è di proprietà e gestita da AWS.
L'account amministratore creato con la AWS Managed Microsoft AD directory dispone delle autorizzazioni per le attività amministrative più comuni dell'unità organizzativa:
-
Creazione, aggiornamento o eliminazione di utenti
-
Aggiungi risorse al dominio, come file server o server di stampa, e assegna le autorizzazioni per tali risorse a utenti dell'unità organizzativa
-
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 inoltre dei diritti per eseguire le seguenti attività estese a 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
-
Accedi a AWS Management Console e apri la AWS Directory Service console all'indirizzo https://console.aws.amazon.com/directoryservicev2/
. -
Nel riquadro di navigazione, seleziona Directories (Directory) e quindi Set up directory (Configura la directory).
-
Scegli AWS Managed Microsoft AD. AWS Managed Microsoft AD è l'unica opzione attualmente utilizzabile con Amazon RDS.
-
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 (~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/)
-
- Confirm password (Conferma password)
-
La password dell'amministratore digitata nuovamente.
-
Scegli Next (Successivo).
-
Immettere le seguenti informazioni nella sezione Networking (Rete) e quindi scegliere Next (Avanti):
- VPC
-
VPC per la directory. Crea l'istanza database MySQL in questo stesso VPC.
- Sottoreti
-
Sottoreti per i server di directory. Le due sottoreti devono trovarsi in diverse zone di disponibilità.
-
Esaminare le informazioni relative alla directory e apportare eventuali modifiche. Quando le informazioni sono corrette, scegli Create Directory (Crea directory).
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. Prendere nota del valore di Directory ID (ID directory) perché sarà necessario quando si crea o si modifica l'istanza database MySQL.

Fase 2: creazione del ruolo IAM per l'utilizzo da parte di Amazon RDS
Affinché Amazon RDS possa AWS Directory Service chiamarti, è necessario un ruolo IAM che utilizzi la policy AmazonRDSDirectoryServiceAccess
IAM gestita. Questo ruolo permette ad Amazon RDS di effettuare chiamate alla AWS Directory Service.
Quando un'istanza DB viene creata utilizzando AWS Management Console e l'utente della console dispone 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 IAMDirectory 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 nella IAM User Guide.
Nota
Il ruolo IAM utilizzato per l'autenticazione Windows per RDS per SQL Server non può essere utilizzato per RDS per MySQL.
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.
Il ruolo deve anche disporre della seguente policy del ruolo IAM.
Fase 3: creazione e configurazione di utenti
È 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 AWS Directory Service directory, devi essere connesso a un' EC2 istanza Amazon basata su Microsoft Windows. Questa istanza deve essere un membro della AWS Directory Service directory ed essere connessa come utente con privilegi per creare utenti. Per ulteriori informazioni, consulta Gestione di utenti e gruppi in AWS Managed Microsoft AD nella AWS Directory Service - Guida di amministrazione.
Fase 4: creazione o modifica di un'istanza database MySQL
Creazione o modifica di un'istanza database MySQL per l'utilizzo con la directory. Puoi utilizzare la console, CLI o l'API RDS per associare un'istanza database a una directory. Questa operazione può essere eseguita in uno dei seguenti modi:
-
Crea una nuova istanza DB MySQL utilizzando la console, il comando create-db-instanceCLI o l'operazione Create RDS API. DBInstance
Per istruzioni, consultare Creazione di un'istanza database Amazon RDS.
-
Modifica un'istanza DB MySQL esistente utilizzando la console, il comando modify-db-instanceCLI o l'operazione Modify RDS API. DBInstance
Per istruzioni, consultare Modifica di un'istanza Amazon RDS DB.
-
Ripristina un'istanza DB MySQL da un'istantanea del DB utilizzando la console, il comando CLI restore-db-instance-from-db-snapshot o l'operazione dell'API Restore From RDS. DBInstance DBSnapshot
Per istruzioni, consultare Ripristino su un'istanza DB.
-
Ripristina un'istanza DB MySQL utilizzando la console, il comando restore-db-instance-to- point-in-time CLI o l'operazione Restore RDS API. point-in-time DBInstance ToPointInTime
Per istruzioni, consultare Ripristino di un'istanza DB a un'ora specificata per Amazon RDS.
L'autenticazione Kerberos è supportata solo per istanze database MySQL in un VPC. L'istanza database Oracle può trovarsi nello stesso VPC della directory o in un VPC diverso. L'istanza database deve utilizzare un gruppo di sicurezza che accetta traffico in uscita all'interno del VPC della directory, in modo che l'istanza database possa comunicare con la directory.
Quando utilizzi la console per creare, modificare o ripristinare un'istanza database, scegli Password e 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).

Quando usi l'API AWS CLI o RDS, associa un'istanza DB a una directory. Per consentire all'istanza 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-*") generato durante la creazione della directory. -
Per il parametro
--domain-iam-role-name
, utilizza il ruolo creato che utilizza la policy IAM gestitaAmazonRDSDirectoryServiceAccess
.
Ad esempio, il comando CLI seguente modifica un'istanza database per utilizzare una directory.
Per LinuxmacOS, oUnix:
aws rds modify-db-instance \ --db-instance-identifier
mydbinstance
\ --domain d-ID
\ --domain-iam-role-namerole-name
Per Windows:
aws rds modify-db-instance ^ --db-instance-identifier
mydbinstance
^ --domain d-ID
^ --domain-iam-role-namerole-name
Importante
Se modifichi un'istanza database per abilitare l'autenticazione Kerberos, riavvia l'istanza database dopo aver apportato la modifica.
Fase 5: creazione di login MySQL di autenticazione Kerberos
Usa le credenziali dell'utente master Amazon RDS per eseguire la connessione all'istanza database MySQL come con qualunque altra istanza database. L'istanza DB viene aggiunta al AWS Managed Microsoft AD dominio. Pertanto, puoi effettuare il provisioning di login e utenti MySQL da utenti Active Directory nel dominio. Le autorizzazioni del database vengono gestite tramite autorizzazioni MySQL standard concesse e revocate da questi accessi.
È possibile consentire a un utente di Active Directory di autenticarsi con MySQL. Per fare ciò, utilizzare innanzitutto le credenziali utente master Amazon RDS per connettersi all'istanza database MySQL come con qualsiasi altra istanza database. Dopo aver effettuato l'accesso, crea un utente autenticato esternamente con PAM (Pluggable Authentication Modules) in MySQL eseguendo il seguente comando. Sostituire
con il nome utente.testuser
CREATE USER '
testuser
'@'%' IDENTIFIED WITH 'auth_pam';
Gli utenti (persone e applicazioni) del dominio possono ora connettersi all'istanza database da un computer client associato al dominio utilizzando l'autenticazione Kerberos.
Importante
Consigliamo vivamente ai client di utilizzare le connessioni quando utilizzano l'autenticazione PAM. SSL/TLS Se non utilizzano SSL/TLS connessioni, in alcuni casi la password potrebbe essere inviata come testo non crittografato. Per richiedere una connessione SSL/TLS crittografata per il tuo utente AD, esegui il comando seguente e sostituiscilo
con il nome utente:testuser
ALTER USER '
testuser
'@'%' REQUIRE SSL;
Per ulteriori informazioni, consulta SSL/TLSsupporto per le istanze My SQL DB su Amazon RDS.
Gestione di un'istanza database in un dominio
Puoi utilizzare la CLI o l'API RDS per gestire l'istanza database e la sua relazione con Active Directory gestita. Ad esempio, è possibile associare un'autenticazione di Active Directory per Kerberos e annullare l'associazione di una Active Directory per disabilitare l'autenticazione Kerberos. Puoi anche spostare un'istanza database affinché venga autenticata 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, utilizzare l'operazione API
ModifyDBInstance
e specificare 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 disabilitare l'autenticazione Kerberos in un'istanza database, utilizzare l'operazione API
ModifyDBInstance
e specificarenone
come parametro di dominio. -
Per spostare un'istanza database da un dominio a un altro, utilizza l'operazione API
ModifyDBInstance
e specifica l'identificatore di dominio del nuovo dominio come parametro del dominio. -
Per elencare l'appartenenza per ogni istanza database, utilizzare l'operazione API
DescribeDBInstances
.
Appartenenza al dominio
Quando l'istanza database viene creata o modificata diventa membro del dominio. È possibile visualizzare lo stato dell'appartenenza al dominio per l'istanza DB eseguendo il comando describe-db-instancesCLI. Lo stato dell'istanza di database può essere uno dei seguenti:
-
kerberos-enabled
: l'autenticazione Kerberos è abilitata nell'istanza database. -
enabling-kerberos
— AWS sta abilitando l'autenticazione Kerberos su questa istanza DB. -
pending-enable-kerberos
: l'abilitazione dell'autenticazione Kerberos è in sospeso su questa istanza database. -
pending-maintenance-enable-kerberos
— AWS tenterà di abilitare l'autenticazione Kerberos sull'istanza DB durante la successiva finestra di manutenzione pianificata. -
pending-disable-kerberos
: la disabilitazione dell'autenticazione Kerberos è in sospeso su questa istanza database. -
pending-maintenance-disable-kerberos
— AWS tenterà di disabilitare l'autenticazione Kerberos sull'istanza DB durante la successiva finestra di manutenzione programmata. -
enable-kerberos-failed
- Un problema di configurazione ha impedito a AWS di abilitare l'autenticazione Kerberos sull'istanza database. Verifica e correggi la configurazione prima di eseguire nuovamente il comando di modifica dell'istanza database. -
disabling-kerberos
— AWS sta disabilitando l'autenticazione Kerberos su questa istanza DB.
Una richiesta per abilitare 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, si supponga di creare un'istanza database o di modificare un'istanza database esistente e il tentativo di attivare l'autenticazione Kerberos non riesce. In questo caso, eseguire nuovamente il comando di modifica o modificare l'istanza database appena creata per l'aggiunta al dominio.
Connessione a MySQL con l'autenticazione Kerberos
Per connetterti a MySQL con l'autenticazione Kerberos, è necessario accedere utilizzando il tipo di autenticazione Kerberos.
Per creare un utente di database a cui è possibile connettersi utilizzando l'autenticazione Kerberos, utilizzare una clausola IDENTIFIED
WITH
sull'istruzione CREATE USER
. Per istruzioni, consulta Fase 5: creazione di login MySQL di autenticazione Kerberos.
Per evitare errori, utilizzare il client mysql
MariaDB. È possibile scaricare il software MariaDB all'indirizzo https://downloads.mariadb.org/
Al prompt dei comandi, connettersi a uno degli endpoint associati all'istanza database MySQL. Seguire le procedure generali descritte in Connessione alla tua istanza DB MySQL. Quando viene richiesta la password, immettere la password Kerberos associata al nome utente.
Ripristino di un'istanza database MySQL e aggiunta a un dominio
È possibile ripristinare uno snapshot DB o completare un point-in-time ripristino per un'istanza DB MySQL e quindi aggiungerla a un dominio. Dopo aver ripristinato l'istanza database, modificarla utilizzando il processo illustrato in Fase 4: creazione o modifica di un'istanza database MySQL per aggiungere l'istanza database a un dominio.
Limitazioni MySQL per l'autenticazione Kerberos
Le seguenti limitazioni si applicano all'autenticazione Kerberos per MySQL:
-
È supportato solo un AWS Managed Microsoft AD . Tuttavia, puoi aggiungere le istanze database RDS per MySQL a domini Managed Microsoft AD condivisi di proprietà di account diversi nella stessa Regione AWS.
-
È necessario riavviare l'istanza database dopo aver abilitato la caratteristica.
-
La lunghezza del nome di dominio non può essere superiore a 61 caratteri.
-
Non è possibile abilitare contemporaneamente l'autenticazione Kerberos e l'autenticazione IAM. Scegli un metodo di autenticazione o l'altro per l'istanza database MySQL.
-
Non modificare la porta dell'istanza database dopo aver abilitato la caratteristica.
-
Non utilizzare l'autenticazione Kerberos con le repliche di lettura.
-
Se è attivato l'aggiornamento automatico della versione secondaria per un'istanza database MySQL che utilizza l'autenticazione Kerberos, è necessario disattivare l'autenticazione Kerberos e riattivarla dopo un aggiornamento automatico. Per maggiori informazioni sull’aggiornamento automatico di una versione minore, consulta Aggiornamenti automatici delle versioni secondarie per RDS for My SQL.
-
Per eliminare un'istanza database con questa caratteristica abilitata, disabilitare prima la caratteristica. A tale scopo, esegui il comando
modify-db-instance
CLI per l'istanza DB e specifica ilnone
--domain
parametro.Se si utilizza l'interfaccia a riga di comando (CLI) o l'API RDS per eliminare un'istanza database con questa caratteristica attivata, prevedere un ritardo.
-
RDS for MySQL non supporta l'autenticazione Kerberos attraverso un trust di foresta tra il tuo AD locale o ospitato autonomamente e il. AWS Managed Microsoft AD