Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation des rôles de base de données et de l’authentification IAM
Aurora DSQL prend en charge l’authentification à l’aide des rôles IAM et des utilisateurs IAM. Vous pouvez utiliser l’une ou l’autre de ces méthodes pour authentifier les bases de données Aurora DSQL.
Rôles IAM
Un rôle IAM est une identité au sein de vous Compte AWS qui possède des autorisations spécifiques mais qui n'est pas associée à une personne spécifique. L’utilisation des rôles IAM fournit des informations d’identification de sécurité temporaires. Vous pouvez temporairement endosser un rôle IAM selon plusieurs manières :
En changeant de rôle dans le AWS Management Console
En appelant une opération d' AWS API AWS CLI or
En utilisant une URL personnalisée
Après avoir endossé un rôle, vous pouvez accéder à Aurora DSQL à l’aide des informations d’identification temporaires du rôle. Pour plus d’informations sur les méthodes d’utilisation des rôles, consultez Identités IAM dans le Guide de l’utilisateur IAM.
Utilisateurs IAM
Un utilisateur IAM est une identité au sein de vous Compte AWS qui possède des autorisations spécifiques et qui est associée à une seule personne ou à une seule application. Les utilisateurs IAM disposent d’informations d’identification à long terme telles que des mots de passe et des clés d’accès qui peuvent être utilisés pour accéder à Aurora DSQL.
Note
Pour exécuter des commandes SQL avec l'authentification IAM, vous pouvez utiliser le rôle IAM ARNs ou l'utilisateur IAM ARNs dans les exemples ci-dessous.
Autoriser les rôles de base de données à se connecter à votre cluster
Créez un rôle IAM et accordez l’autorisation de connexion avec l’action de politique IAM : dsql:DbConnect.
La politique IAM doit également accorder l’autorisation d’accéder aux ressources du cluster. Utilisez un caractère générique (*) ou suivez les instructions dans Utilisation des clés de condition IAM avec Amazon Aurora DSQL.
Autoriser les rôles de la base de données à utiliser SQL dans votre base de données
Vous devez utiliser un rôle IAM autorisé pour vous connecter à votre cluster.
-
Connectez-vous à votre cluster Aurora DSQL à l’aide d’un utilitaire SQL.
Utilisez le rôle de base de données
adminavec une identité IAM autorisée pour l’action IAMdsql:DbConnectAdminpour vous connecter à votre cluster. -
Créez un nouveau rôle de base de données, en veillant à spécifier l’option
WITH LOGIN.CREATE ROLE example WITH LOGIN; -
Associez le rôle de base de données à l’ARN du rôle IAM.
AWS IAM GRANT example TO 'arn:aws:iam::012345678912:role/example'; -
Accordez des autorisations au niveau de la base de données au rôle de base de données
Les exemples suivants utilisent la commande
GRANTpour fournir une autorisation au sein de la base de données.GRANT USAGE ON SCHEMA myschema TO example; GRANT SELECT, INSERT, UPDATE ON ALL TABLES IN SCHEMA myschema TO example;
Pour plus d’informations, consultez PostgreSQL GRANT
Affichage des mappages de rôles entre IAM et la base de données
Pour afficher les mappages entre les rôles IAM et les rôles de base de données, interrogez la table système sys.iam_pg_role_mappings.
SELECT * FROM sys.iam_pg_role_mappings;
Exemple de sortie :
iam_oid | arn | pg_role_oid | pg_role_name | grantor_pg_role_oid | grantor_pg_role_name ---------+----------------------------------------+-------------+--------------+---------------------+----------------------26398| arn:aws:iam::012345678912:role/example|26396|example|15579| admin (1 row)
Ce tableau présente tous les mappages entre les rôles IAM (identifiés par leur ARN) et les rôles de base de données PostgreSQL.
Révocation de l’autorisation d’une base de données à partir d’un rôle IAM
Pour révoquer l’autorisation de base de données, utilisez l’opération AWS IAM REVOKE.
AWS IAM REVOKE example FROM 'arn:aws:iam::012345678912:role/example';
Pour plus d’informations sur la révocation de l’autorisation, consultez Révocation d’une autorisation à l’aide d’IAM et de PostgreSQL.