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.
Configuration de l’authentification IAM pour RDS Proxy
Pour configurer l'authentification AWS Identity and Access Management (IAM) pour le proxy RDS dans Amazon RDS, créez et configurez une politique IAM qui accorde les autorisations nécessaires.
Cette rubrique décrit les étapes de configuration de l’authentification IAM pour RDS Proxy, notamment la création de la politique IAM requise et son association à un rôle IAM.
Astuce
Cette procédure n’est nécessaire que si vous souhaitez créer votre propre rôle IAM. Dans le cas contraire, RDS peut créer automatiquement le rôle requis lorsque vous configurez le proxy. Vous pouvez donc ignorer ces étapes.
Prérequis
Avant de configurer l’authentification IAM pour RDS Proxy, assurez-vous de disposer des éléments suivants :
-
AWS Secrets Manager : au moins un secret stocké contenant les informations d’identification de la base de données. Pour obtenir des instructions sur la création des secrets, consultez Configuration des informations d'identification de base de données pour le proxy RDS.
Cela n'est pas obligatoire si vous utilisez l'authentification end-to-end IAM.
-
Autorisations IAM : rôle ou utilisateur IAM autorisé à créer et à gérer des politiques, des rôles et des secrets IAM dans AWS Secrets Manager.
Création d'une politique IAM pour l'authentification end-to-end IAM
Lorsque vous utilisez l'authentification end-to-end IAM, le proxy RDS se connecte à votre base de données à l'aide de l'authentification IAM au lieu de récupérer les informations d'identification auprès de Secrets Manager. Cela nécessite de configurer votre rôle IAM avec des rds-db:connect autorisations pour les comptes de base de données que vous souhaitez utiliser avec le proxy.
Pour authentifier votre proxy RDS auprès de la base de données à l'aide d'IAM, créez un rôle IAM avec une politique qui accorde les autorisations de connexion à la base de données nécessaires.
Pour créer un rôle pour l'authentification end-to-end IAM avec votre proxy
Connectez-vous à la console IAM AWS Management Console et ouvrez-la à https://console.aws.amazon.com/iam/
l'adresse. -
Créez une stratégie d’autorisation pour le rôle. Pour connaître les étapes générales, consultez Créer des politiques IAM (console).
Collez cette politique dans l’éditeur JSON et effectuez les modifications suivantes :
-
Indiquez votre propre ID de compte.
-
Remplacez
us-east-2par le lieu où le mandataire doit résider. -
Remplacez les noms d'utilisateur IDs et de ressource de base de données par ceux que vous souhaitez utiliser. Le format de l'ID de ressource diffère entre les instances RDS etAurora clusters.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rds-db:connect", "Resource": [ "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_1", "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_2" ] } ] } -
-
Créez le rôle et associez-le à une stratégie d’autorisations. Pour les étapes générales, voir Créer un rôle pour déléguer des autorisations à un AWS service.
Choisissez Service AWS pour Type d’entité de confiance. Sous Cas d’utilisation, sélectionnez RDS et choisissez RDS : ajouter un rôle à la base de données pour le cas d’utilisation.
-
Sous Stratégies d’autorisation, choisissez la stratégie que vous avez créée.
-
Pour Sélectionner les entités de confiance, entrez la stratégie d’approbation suivante pour le rôle :
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Pour créer le rôle à l'aide du AWS CLI, envoyez la demande suivante :
aws iam create-role \ --role-namemy_e2e_iam_role_name\ --assume-role-policy-document '{"Version":"2012-10-17", "Statement":[{"Effect":"Allow","Principal":{"Service":["rds.amazonaws.com"]},"Action":"sts:AssumeRole"}]}'
Associez ensuite cette stratégie au rôle :
aws iam put-role-policy \ --role-namemy_e2e_iam_role_name\ --policy-namee2e_iam_db_connect_policy\ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rds-db:connect", "Resource": [ "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_1", "arn:aws:rds-db:us-east-2:account_id:dbuser:db_instance_resource_id/db_user_name_2" ] } ] }'
Le rôle et les autorisations IAM étant configurés pour l'authentification end-to-end IAM, vous pouvez désormais créer un proxy DefaultAuthScheme défini sur. IAM_AUTH Ce proxy s'authentifie directement auprès de la base de données à l'aide d'IAM sans avoir besoin des secrets de Secrets Manager. Pour obtenir des instructions, veuillez consulter Création d’un proxy pour Amazon Aurora.
Lorsque vous utilisez l'authentification end-to-end IAM, assurez-vous que les utilisateurs de votre base de données sont configurés pour l'authentification IAM, comme décrit dans. Création d’un compte de base de données à l’aide de l’authentification IAM
Création d’une Politique IAM pour accéder à Secrets Manager
Pour permettre à RDS Proxy de récupérer les informations d’identification de la base de données de Secrets Manager, créez un rôle IAM avec une politique qui accorde les autorisations nécessaires.
Pour créer un rôle permettant d’accéder aux secrets qui seront utilisés avec votre proxy
Connectez-vous à la console IAM AWS Management Console et ouvrez-la à https://console.aws.amazon.com/iam/
l'adresse. -
Créez une stratégie d’autorisation pour le rôle. Pour connaître les étapes générales, consultez Créer des politiques IAM (console).
Collez cette politique dans l’éditeur JSON et effectuez les modifications suivantes :
-
Indiquez votre propre ID de compte.
-
Remplacez
us-east-2par la région où résidera le proxy. -
Remplacez les noms secrets par ceux que vous avez créés. Pour plus d’informations, consultez Spécification de clés KMS dans les instructions de politique IAM.
-
Remplacez l’ID de clé KMS par celui que vous avez utilisé pour chiffrer les secrets de Secrets Manager, qu’il s’agisse de la clé par défaut ou de votre propre clé.
-
-
Créez le rôle et associez-le à une stratégie d’autorisations. Pour les étapes générales, voir Créer un rôle pour déléguer des autorisations à un AWS service.
Choisissez Service AWS pour Type d’entité de confiance. Sous Cas d’utilisation, sélectionnez RDS et choisissez RDS : ajouter un rôle à la base de données pour le cas d’utilisation.
-
Sous Stratégies d’autorisation, choisissez la stratégie que vous avez créée.
-
Pour Sélectionner les entités de confiance, entrez la stratégie d’approbation suivante pour le rôle :
Pour créer le rôle à l'aide du AWS CLI, envoyez la demande suivante :
aws iam create-role \ --role-namemy_role_name\ --assume-role-policy-document '{"Version": "2012-10-17", "Statement":[{"Effect":"Allow","Principal":{"Service":["rds.amazonaws.com"]},"Action":"sts:AssumeRole"}]}'
Associez ensuite cette stratégie au rôle :
aws iam put-role-policy \ --role-namemy_role_name\ --policy-namesecret_reader_policy\ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": [ "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_1", "arn:aws:secretsmanager:us-east-2:account_id:secret:secret_name_2" ] }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:us-east-2:account_id:key/key_id", "Condition": { "StringEquals": { "kms:ViaService": "secretsmanager.us-east-2.amazonaws.com" } } } ] }'
Une fois le rôle et les autorisations IAM configurés, vous pouvez créer un proxy et l’associer à ce rôle. Cela permet au proxy de récupérer les informations d'identification de la base de données en toute sécurité AWS Secrets Manager et d'activer l'authentification IAM pour vos applications. Pour obtenir des instructions, veuillez consulter Création d’un proxy pour Amazon Aurora.