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 del database IAM
Puoi autenticarti nel tuo cluster di DB utilizzando l'autenticazione del database AWS Identity and Access Management (IAM). L'autenticazione del database IAM funziona con Aurora MySQL e Aurora PostgreSQL. Con questo metodo di autenticazione, non devi utilizzare una password quando esegui la connessione al cluster database. Utilizzi invece un token di autenticazione.
Un token di autenticazione è una stringa univoca di caratteri generata da Amazon Aurora su richiesta. I token di autenticazione vengono generati utilizzando AWS Signature Version 4. Ciascun token ha un ciclo di vita di 15 minuti. Non devi archiviare le credenziali dell'utente nel database, perché l'autenticazione è gestita esternamente utilizzando IAM. Puoi anche utilizzare ancora l'autenticazione standard del database. Il token viene utilizzato solo per l'autenticazione e non influisce sulla sessione dopo che è stato stabilito.
L'autenticazione del database IAM fornisce i seguenti vantaggi:
-
Il traffico di rete da e verso il database viene crittografato utilizzando Secure Socket Layer (SSL) o Transport Layer Security (TLS). Per ulteriori informazioni sull'uso di SSL/TLS con Amazon Aurora, consulta
-
Puoi usare IAM per gestire in modo centralizzato l'accesso alle risorse del database invece di gestire l'accesso singolarmente in ogni cluster database.
-
Per le applicazioni in esecuzione su Amazon EC2, puoi utilizzare credenziali di profilo specifiche per la tua EC2 istanza per accedere al database anziché una password, per una maggiore sicurezza.
In generale, prendi in considerazione l'utilizzo dell'autenticazione del database IAM quando le applicazioni creano meno di 200 connessioni al secondo e non desideri gestire nomi utente e password direttamente nel codice dell'applicazione.
Il driver JDBC di Amazon Web Services (AWS) supporta l'autenticazione del database IAM. Per ulteriori informazioni, consulta AWS IAM Authentication Plugin
Il driver Python di Amazon Web Services (AWS) supporta l'autenticazione del database IAM. Per ulteriori informazioni, consulta AWS IAM Authentication Plugin
Esplora i seguenti argomenti per apprendere il processo di impostazione di IAM per l'autenticazione DB:
Disponibilità di regioni e versioni
La disponibilità e il supporto della funzionalità varia a seconda delle versioni specifiche di ciascun motore di database Aurora e in tutte le Regioni AWS. Per ulteriori informazioni sulla disponibilità di versioni e Regioni per l'autenticazione del database Aurora e IAM, consulta Regioni supportate e motori Aurora DB per IAM l'autenticazione del database.
Per Aurora MySQL, tutte le classi di istanza database supportate supportano l'autenticazione del database IAM, ad eccezione di db.t2.small e db.t3.small. Per informazioni sulle classi di istanza database supportate, consulta Motori DB supportati per classi di istanza database.
Supporto per CLI e SDK
L'autenticazione del database IAM è disponibile per AWS CLIe per le seguenti lingue AWS SDKs:
Limitazioni per l'autenticazione database IAM
Quando utilizzi l'autenticazione database IAM, tieni presenti le seguenti limitazioni:
-
L'autenticazione del database IAM limita le connessioni a 200 connessioni al secondo.
Le connessioni che utilizzano lo stesso token di autenticazione non vengono limitate. Ti consigliamo di riutilizzare i token di autenticazione quando possibile.
-
Attualmente, l'autenticazione database IAM non supporta nessuna delle chiavi di contesto delle condizioni globali.
Per ulteriori informazioni sulle chiavi di contesto delle condizioni globali, consulta Chiavi di contesto delle condizioni globali AWS nella Guida per l'utente di IAM.
-
Per PostgreSQL, se il ruolo IAM (
rds_iam
) viene aggiunto a un utente (incluso l'utente principale RDS), l'autenticazione IAM ha la precedenza sull'autenticazione tramite password, quindi l'utente deve accedere come un utente IAM. -
Per Aurora PostgreSQL, non è possibile utilizzare l'autenticazione IAM per stabilire una connessione di replica.
-
Non è possibile utilizzare un record DNS Route 53 personalizzato anziché l'endpoint del cluster di databaseper generare il token di autenticazione.
-
CloudWatch e CloudTrail non registrate l'autenticazione IAM. Questi servizi non tengono traccia delle chiamate
generate-db-auth-token
API che autorizzano il ruolo IAM a abilitare la connessione al database. -
L'autorizzazione IAM DB richiede risorse di calcolo sul cluster di del database. È necessario disporre di una memoria aggiuntiva compresa tra 300 e 1000 MiB nel database per una connettività affidabile. Per visualizzare la memoria necessaria per il carico di lavoro, confronta la colonna RES per i processi RDS nell'elenco dei processi di Enhanced Monitoring prima e dopo aver abilitato l'autenticazione IAM DB. Consultare Visualizzazione delle metriche del sistema operativo nella console RDS.
Se utilizzi un'istanza di classe burstable, evita di esaurire la memoria riducendo la memoria utilizzata da altri parametri come i buffer e la cache della stessa quantità.
-
Per , non è possibile utilizzare l'autenticazione basata su password per un utente del database configurato con l'autenticazione IAM.
Consigli per l'autenticazione del database IAM
Quando si utilizza l'autenticazione del database IAM, è consigliabile procedere come segue:
-
Utilizzare l'autenticazione del database IAM quando l'applicazione richiede meno di 200 nuove connessioni di autenticazione del database IAM al secondo.
I motori di database che funzionano con Amazon Aurora non prevedono limitazioni per i tentativi di autenticazione al secondo. Tuttavia, quando utilizzi un'autenticazione database IAM, l'applicazione deve generare un token di autenticazione. L'applicazione usa quindi il token per connettersi al cluster database. Se eccedi il limite massimo di nuove connessioni al secondo, la gestione extra dell'autenticazione database IAM può causare throttling della connessione.
Valuta la possibilità di utilizzare il pool di connessioni nelle applicazioni per mitigare la creazione continua di connessioni. Questo può ridurre il sovraccarico derivante dall'autenticazione DB IAM e consentire alle applicazioni di riutilizzare le connessioni esistenti. In alternativa, per questi casi d'uso considera l'utilizzo di Server proxy per RDS. Per Server proxy per RDS sono previsti costi aggiuntivi. Consulta i prezzi per Server proxy per RDS
. La dimensione di un token di autenticazione del database IAM dipende da molti fattori, tra cui il numero di tag IAM, le policy di servizio IAM, la lunghezza del nome della risorsa Amazon (ARN) e altre proprietà IAM e del database. La dimensione minima del token è generalmente di circa 1 KB, ma può essere maggiore. Poiché questo token viene utilizzato come password nella stringa di connessione al database tramite l'autenticazione IAM, è necessario assicurarsi che il driver del database (ad esempio ODBC) e/o qualsiasi strumento non limitino o altrimenti tronchino questo token a causa delle sue dimensioni. Un token troncato causa l'esito negativo della convalida dell'autenticazione effettuata dal database e da IAM.
-
Se si utilizzano credenziali temporanee durante la creazione di un token di autenticazione del database IAM, le credenziali temporanee devono essere ancora valide quando si utilizza il token di autenticazione del database IAM per effettuare una richiesta di connessione.
AWS Chiavi contestuali di condizione globale non supportate
L'autenticazione del database IAM non supporta il seguente sottoinsieme di chiavi di contesto delle condizioni AWS globali.
-
aws:Referer
-
aws:SourceIp
-
aws:SourceVpc
-
aws:SourceVpce
-
aws:UserAgent
-
aws:VpcSourceIp
Per ulteriori informazioni, consultare Chiavi di contesto delle condizioni globali AWS nella Guida per l'utente IAM.