Authentification de base de données avec Amazon Aurora - Amazon Aurora

Authentification de base de données avec Amazon Aurora

Amazon Aurora prend en charge plusieurs façons d’authentifier les utilisateurs de base de données.

L’authentification par mot de passe est disponible par défaut pour tous les clusters de bases de données. Pour Aurora MySQL et Aurora PostgreSQL, vous pouvez également ajouter l’authentification de base de données IAM ou Kerberos ou les deux pour le même cluster de bases de données.

L’authentification par mot de passe, Kerberos et IAM utilisent différentes méthodes d’authentification auprès de la base de données. Par conséquent, un utilisateur spécifique peut se connecter à une base de données en utilisant une seule méthode d’authentification.

Pour PostgreSQL, utilisez un seul des paramètres de rôle suivants pour un utilisateur d’une base de données spécifique :

  • Pour utiliser l’authentification de base de données IAM, affectez le rôle rds_iam à l’utilisateur.

  • Pour utiliser l’authentification Kerberos, affectez le rôle rds_ad à l’utilisateur.

  • Pour utiliser l’authentification par mot de passe, n’affectez pas les rôles rds_iam ou rds_ad à l’utilisateur.

N’affectez pas à la fois les rôles rds_iam et rds_ad à un utilisateur d’une base de données PostgreSQL, directement ou indirectement par l’intermédiaire d’un accès accordé imbriqué. Si le rôle rds_iam est ajouté à l’utilisateur principal, l’authentification IAM a priorité sur l’authentification par mot de passe, de sorte que l’utilisateur principal doit se connecter en tant qu’utilisateur IAM.

Important

Nous vous recommandons vivement de ne pas avoir recours au rôle d’utilisateur principal directement dans vos applications. Au lieu de cela, respectez la bonne pratique qui consiste à avoir recours à un utilisateur de base de données doté des privilèges minimum requis pour votre application.

Authentification par mot de passe

Avec l’authentification par mot de passe, votre base de données se charge de toute l’administration des comptes utilisateurs. Vous créez des utilisateurs avec des instructions SQL telles que CREATE USER, avec la clause appropriée requise par le moteur de base de données pour spécifier des mots de passe. Par exemple, dans MySQL, l’instruction est CREATE USER nom IDENTIFIED BY mot de passe, tandis que dans PostgreSQL, l’instruction est CREATE USER nom WITH PASSWORD mot de passe.

Avec l’authentification par mot de passe, votre base de données contrôle et authentifie les comptes d’utilisateurs. Si un moteur de base de données dispose de fonctionnalités de gestion de mot de passe solides, il peut améliorer la sécurité. L’authentification de base de données peut être plus facile à administrer en utilisant l’authentification par mot de passe lorsque vous avez de petites communautés d’utilisateurs. Étant donné que des mots de passe en texte clair sont générés dans ce cas, l’intégration avec AWS Secrets Manager peut améliorer la sécurité.

Pour plus d’informations sur l’utilisation de Secrets Manager avec Amazon Aurora, consultez Création d’un secret de base et Rotation de secrets pour les bases de données Amazon RDS prises en charge dans le Guide de l’utilisateur AWS Secrets Manager. Pour plus d’informations sur la récupération par programme de vos secrets dans vos applications personnalisées, consultez Récupération de la valeur de secret dans le Guide de l’utilisateur AWS Secrets Manager.

Authentification de base de données IAM

Vous pouvez vous authentifier auprès de votre cluster de bases de données à l’aide de l’authentification de base de données AWS Identity and Access Management (IAM). Grâce à cette méthode d’authentification, vous n’avez plus besoin de mot de passe pour vous connecter à un cluster de bases de données. En revanche, un jeton d’authentification est nécessaire.

Pour plus d’informations sur l’authentification de base de données IAM, y compris sur la disponibilité de moteurs de base de données spécifiques, consultez Authentification de base de données IAM.

Authentification Kerberos

Amazon Aurora prend en charge l’authentification externe des utilisateurs de bases de données avec Kerberos et Microsoft Active Directory. Kerberos est un protocole d’authentification réseau qui utilise les tickets et la cryptographie de clé symétrique pour vous éviter d’acheminer vos mots de passe via le réseau. Intégré dans Active Directory, Kerberos est conçu pour authentifier les utilisateurs sur les ressources réseau, par exemple les bases de données.

La prise en charge de Kerberos et Active Directory par Amazon Aurora procure les avantages d’une authentification unique et centralisée des utilisateurs de bases de données. Vous pouvez conserver vos informations d’identification utilisateur dans Active Directory. Active Directory vous offre un endroit centralisé de stockage et de gestion des informations d’identification pour plusieurs d’instances de base de données.

Pour utiliser les informations d’identification de votre Active Directory autogéré, vous devez configurer une relation de confiance avec l’AWS Directory Service de Microsoft Active Directory auquel le d’instance de base de données est joint.

Aurora PostgreSQL et Aurora MySQL prennent en charge les relations de confiance unidirectionnelles et bidirectionnelles avec une authentification à l’échelle de la forêt ou une authentification sélective.

Dans certains scénarios, vous pouvez configurer l’authentification Kerberos via une relation de confiance externe. Cela nécessite que votre Active Directory autogéré dispose de paramètres supplémentaires. Cela inclut, mais sans s’y limiter, l’ordre de recherche Kerberos Forest.

Aurora prend en charge l’authentification Kerberos pour les clusters de bases de données Aurora MySQL et Aurora PostgreSQL. Pour plus d’informations, consultez Utilisation de l'authentification Kerberos pour Aurora MySQL et Utilisation de l’authentification Kerberos avec Aurora PostgreSQL.