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à.
Creazione e utilizzo di una policy IAM per l'accesso al database IAM
Per permettere a un utente o un ruolo di connettersi al cluster database, devi creare una policy IAM. Dopo questa operazione, collega la policy a un set di autorizzazioni o un ruolo.
Nota
Per ulteriori informazioni sulle policy IAM, consulta Gestione delle identità e degli accessi per Amazon Aurora.
La policy nell'esempio seguente permette a un utente di connettersi a un cluster database tramite l'autenticazione database IAM.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:1234567890:dbuser:cluster-ABCDEFGHIJKL01234/db_user" ] } ] }
Importante
Un utente con le autorizzazioni di amministratore può accedere ai cluster database senza una policy IAM esplicita. Se vuoi limitare l'accesso come amministratore a cluster di , puoi creare un ruolo IAM con le autorizzazioni appropriate, con privilegi minori e assegnarlo all'amministratore.
Nota
Non confondere il prefisso rds-db:
con altri prefissi di operazione API RDS che iniziano con rds:
. Utilizzi il prefisso rds-db:
e l'operazione rds-db:connect
solo per l'autenticazione database IAM. Non sono validi in altri contesti.
La policy di esempio include una singola istruzione con i seguenti elementi:
-
Effect
– SpecificaAllow
per concedere l'accesso al cluster database. Se non si concede esplicitamente l'accesso, questo viene rifiutato per impostazione predefinita. -
Action
– Specificards-db:connect
per consentire le connessioni al cluster database. -
Resource
– Specifica un Amazon Resource Name (ARN) che descrive un account database in un cluster database. Di seguito è riportato il formato ARN.arn:aws:rds-db:
region
:account-id
:dbuser:DbClusterResourceId
/db-user-name
In questo formato, sostituisci quanto segue:
-
è la AWS regione per il cluster di DB. Nella politica di esempio, la AWS regione èregion
us-east-2
. -
è il numero di AWS account per il cluster di DB. Nella policy di esempio, il numero di account èaccount-id
1234567890
. L'utente deve essere nello stesso account dell'account del cluster di database.Per eseguire l'accesso multi-account, crea un ruolo IAM con la policy mostrata in precedenza nell'account per il cluster di database e consenti all'altro account di assumere il ruolo.
-
è l'identificatore del cluster database. Questo identificatore è unico per una AWS regione e non cambia mai. Nella policy di esempio, l'identificatore èDbClusterResourceId
cluster-ABCDEFGHIJKL01234
.Per trovare un ID di risorsa del AWS Management Console cluster di DB in Amazon Aurora, scegli il cluster di istanze per visualizzarne i dettagli. Quindi seleziona la scheda Configuration (Configurazione). Resource ID (ID risorsa) è visualizzato nella sezione Configuration (Configurazione).
In alternativa, puoi utilizzare il AWS CLI comando per elencare gli identificatori e le risorse IDs per tutto il cluster di DB nella AWS regione corrente, come illustrato di seguito.
aws rds describe-db-clusters --query "DBClusters[*].[DBClusterIdentifier,DbClusterResourceId]"
Nota
Se si sta effettuando la connessione a un database tramite proxy RDS, specificare l'ID risorsa proxy, ad esempio
prx-ABCDEFGHIJKL01234
. Per informazioni sull'utilizzo dell'autenticazione del database IAM con proxy RDS, vedere Connessione a un proxy mediante autenticazione IAM. -
è il nome dell'account database da associare all'autenticazione IAM. Nella policy di esempio, l'account database èdb-user-name
db_user
.
-
È possibile crearne altri ARNs per supportare vari modelli di accesso. La policy seguente permette l'accesso a due diversi account database in un cluster database.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:123456789012:dbuser:cluster-ABCDEFGHIJKL01234/jane_doe", "arn:aws:rds-db:us-east-2:123456789012:dbuser:cluster-ABCDEFGHIJKL01234/mary_roe" ] } ] }
La seguente politica utilizza il carattere «*» per abbinare tutte le DB, i cluster e gli account di database per un account e una regione particolari AWS . AWS
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:1234567890:dbuser:*/*" ] } ] }
La seguente politica corrisponde a tutti i cluster di DB per un account e una regione particolari AWS . AWS Tuttavia, la policy concede l'accesso solo a cluster database che hanno un account database jane_doe
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:us-east-2:123456789012:dbuser:*/jane_doe" ] } ] }
L'utente o il ruolo ha accesso solo a quei database ai quali l'utente ha accesso. Supponiamo, ad esempio, che il cluster database abbia un database denominato dev e un altro database denominato test. Se l'utente del database jane_doe
ha accesso solo a dev, anche qualsiasi utente o ruolo che accede al cluster database con l'utente jane_doe
ha accesso solo a dev. Questa restrizione dell'accesso è anche valida per altri oggetti database, come tabelle, visualizzazioni e così via.
Un amministratore deve creare policy IAM che concedono alle entità l'autorizzazione per eseguire operazioni API specifiche sulle risorse specificate di cui hanno bisogno. L'amministratore deve quindi collegare queste policy ai set di autorizzazioni o ai ruoli che richiedono tali autorizzazioni. Per esempi di policy, consulta .
Collegamento di una policy IAM a un set di autorizzazioni o un ruolo
Dopo aver creato una policy IAM per consentire l'autenticazione del database, devi collegare la policy a un set di autorizzazioni o un ruolo. Per un tutorial su questo argomento, consulta Creare e collegare la tua prima policy gestita dal cliente nella Guida per l'utente IAM.
Durante il tutorial, puoi utilizzare uno degli esempi di policy indicati in questa sezione come punto di partenza e personalizzarli in base alle tue esigenze. Al termine del tutorial, avrai un set di autorizzazioni con una policy collegata che può utilizzare l'operazione rds-db:connect
.
Nota
Puoi mappare più set di autorizzazioni o ruoli allo stesso account utente del database. Ad esempio, supponiamo che la policy IAM abbia specificato la seguente risorsa ARN.
arn:aws:rds-db:us-east-2:123456789012:dbuser:cluster-12ABC34DEFG5HIJ6KLMNOP78QR/jane_doe
Se colleghi la policy agli utenti Jane, Bob e Diego, ciascuno di quegli utenti potrà connettersi al cluster di database specificato utilizzando l'account di database jane_doe
.