Connexion à une instance de base de données Amazon RDS - Amazon Relational Database Service

Connexion à une instance de base de données Amazon RDS

Avant de pouvoir vous connecter à une instance de base de données, vous devez créer l'instance de base de données. Pour plus d'informations, consultez Création d'une instance de base de données Amazon RDS. Une fois qu'Amazon RDS a provisionné votre instance de base de données, vous pouvez utiliser n'importe quelle application client standard ou utilitaire pour votre moteur de base de données pour vous connecter à l'instance de base de données. Dans la chaîne de connexion, vous spécifiez l'adresse DNS du point de terminaison de l'instance de base de données comme paramètre de l'hôte, et le numéro de port du point de terminaison de l'instance de base de données comme paramètre du port.

Recherche des informations de connexion pour une instance de base de données Amazon RDS

Les informations de connexion d'une instance de base de données incluent son point de terminaison, son port et un utilisateur de base de données valide, tel que l'utilisateur principal. Par exemple, pour une instance de base de données MySQL, supposons que la valeur du point de terminaison est mydb.123456789012.us-east-1.rds.amazonaws.com. Dans ce cas, la valeur du port est 3306, et l'utilisateur de base de données est admin. Compte tenu de ces informations, vous spécifiez les valeurs suivantes dans une chaîne de connexion :

  • Pour un hôte, un nom d'hôte ou un nom DNS, spécifiez mydb.123456789012.us-east-1.rds.amazonaws.com.

  • Pour un port, spécifiez 3306.

  • Pour l'utilisateur, spécifiez admin.

Le point de terminaison est unique pour chaque instance de base de données, et les valeurs du port et de l'utilisateur peuvent varier. La liste suivante présente le port le plus courant pour chaque moteur de base de données :

  • MariaDB – 3306

  • Microsoft SQL Server – 1433

  • MySQL – 3306

  • Oracle – 1521

  • PostgreSQL – 5432

Pour vous connecter à une instance de base de données, utilisez n'importe quel client pour un moteur de base de données. Par exemple, vous pouvez utiliser l'utilitaire mysql pour vous connecter à une instance de base de données MariaDB ou MySQL. Vous pouvez utiliser Microsoft SQL Server Management Studio pour vous connecter à une instance de base de données SQL Server. Vous pouvez utiliser Oracle SQL Developer pour vous connecter à une instance de base de données Oracle ou l'utilitaire de ligne de commande psql pour vous connecter à une instance de base de données PostgreSQL.

Pour rechercher les informations de connexion d'une instance de base de données, vous pouvez utiliser la commande AWS Management Console, AWS Command Line Interface (AWS CLI) describe-db-instances ou l'opération Amazon RDS d'API DescribedBInstances pour répertorier ses détails.

Pour rechercher les informations de connexion d'une instance de base de données dans la AWS Management Console

  1. Connectez-vous au AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le volet de navigation, choisissez Databases (Bases de données) pour afficher la liste de vos instances de base de données.

  3. Choisissez le nom de l'instance de base de données pour afficher ses détails.

  4. Dans l'onglet Connectivity & security (Connectivité et sécurité), copiez le point de terminaison. Notez également le numéro du port. Vous avez besoin du point de terminaison et du numéro de port pour vous connecter à l'instance de base de données.

    
                            Point de terminaison et port d'une instance de base de données
  5. Si vous devez rechercher le nom d'utilisateur principal, choisissez l'onglet Configuration et affichez la valeur Master username (Identifiant principal.

Pour rechercher les informations de connexion d'une instance de base de données à l'aide de AWS CLI, appelez la commande describe-db-instances. Dans l'appel, recherchez l'ID d'instance de base de données, le point de terminaison, le port et l'identifiant principal.

Pour Linux, macOS ou Unix :

aws rds describe-db-instances \ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Pour Windows :

aws rds describe-db-instances ^ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Votre sortie doit ressembler à ce qui suit.

[ [ "mydb", "mydb.123456789012.us-east-1.rds.amazonaws.com", 3306, "admin" ], [ "myoracledb", "myoracledb.123456789012.us-east-1.rds.amazonaws.com", 1521, "dbadmin" ], [ "mypostgresqldb", "mypostgresqldb.123456789012.us-east-1.rds.amazonaws.com", 5432, "postgresadmin" ] ]

Pour rechercher les informations de connexion d'une instance de base de données à l'aide de l'API Amazon RDS, appelez l'opération DescribedBInstances. Dans la sortie, recherchez les valeurs de l'adresse du point de terminaison, du port du point de terminaison et du nom d'utilisateur principal.

Options d'authentification de base de données

Amazon RDS prend en charge les méthodes suivantes pour authentifier les utilisateurs de base de données :

  • Authentification par mot de passe, – Votre instance de base de données effectue toute l'administration des comptes d'utilisateurs. Vous créez des utilisateurs et spécifiez des mots de passe avec des instructions SQL. Les instructions SQL que vous pouvez utiliser dépendent de votre moteur de base de données.

  • Authentification de base de données AWS Identity and Access Management (IAM) – Vous n'avez plus besoin de mot de passe pour vous connecter à une instance de base de données. En revanche, un jeton d'authentification est nécessaire.

  • Authentification Kerberos – Vous utilisez l'authentification externe des utilisateurs de base 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.

L'authentification de base de données IAM et l'authentification Kerberos sont disponibles uniquement pour des moteurs de base de données et des versions spécifiques.

Pour en savoir plus, consultez Authentification de base de données avec Amazon RDS.

Connexions chiffrées

Vous pouvez utiliser SSL ou TLS à partir de votre application pour chiffrer une connexion à une instance de base de données. Chaque moteur DB possède son propre processus d'implémentation SSL/TLS. Pour en savoir plus, consultez Utilisation de SSL/TLS pour chiffrer une connexion à une instance de base de données.

Scénarios d'accès à une instance de base de données d'un VPC

Amazon Virtual Private Cloud (Amazon VPC) vous permet de lancer les ressources AWS, telles que les instances de base de données Amazon RDS dans un Virtual Private Cloud (VPC). Lorsque vous utilisez Amazon VPC, vous disposez d'un contrôle total sur l'environnement de réseau virtuel. Vous pouvez choisir votre propre plage d'adresses IP, créer des sous-réseaux et configurer le routage et les listes de contrôle d'accès.

Un groupe de sécurité du VPC contrôle l'accès aux instances de base de données dans un VPC. Chaque règle de groupe de sécurité VPC permet à une source spécifique d'accéder à une instance de base de données dans un VPC associée à ce groupe de sécurité VPC. Cette source peut être une plage d'adresses (par exemple, 203.0.113.0/24) ou un autre groupe de sécurité VPC. En spécifiant un groupe de sécurité VPC en tant que source, vous autorisez le trafic entrant provenant de toutes les instances (généralement les serveurs d'application) qui utilisent le groupe de sécurité VPC source.

Avant de tenter de vous connecter à votre instance de base de données, configurez votre VPC pour votre cas d'utilisation. Les scénarios suivants sont courants pour accéder à une instance de base de données dans un VPC :

  • Une instance de base de données dans un VPC accessible par une instance Amazon EC2 dans le même VPC – Une utilisation courante d'une instance de base de données d'un VPC consiste à partager les données avec un serveur d'application qui s'exécute dans une instance EC2 du même VPC. L'instance EC2 peut exécuter un serveur web avec une application qui interagit avec l'instance de base de données.

  • Une instance de base de données d'un VPC accédée par une instance EC2 d'un autre VPC – Quand votre instance de base de données se trouve dans un VPC différent de l'instance EC2 que vous utilisez pour y accéder, vous pouvez utiliser l'appairage de VPC pour accéder à l'instance de base de données.

  • Une instance de base de données d'un VPC accessible par une application cliente via Internet – Pour accéder à une instance de base de données d'un VPC à partir d'une application cliente via Internet, vous configurez un VPC avec un seul sous-réseau public et une passerelle Internet pour activer la communication sur Internet.

    Pour se connecter à une instance de base de données depuis l'extérieur de son VPC, l'instance de base de données doit être accessible publiquement. En outre, l'accès doit être accordé en utilisant les règles entrantes du groupe de sécurité de l'instance de base de données, et d'autres exigences doivent être satisfaites. Pour en savoir plus, consultez Impossible de se connecter à l'instance de base de données Amazon RDS.

  • Une instance de base de données dans un VPC accessible par un réseau privé – Si votre instance de base de données n'est pas accessible publiquement, vous pouvez utiliser une connexion VPN site à site AWS ou une connexion AWS Direct Connect pour y accéder à partir d'un réseau privé.

  • Une instance de base de données d'un VPC accédée par une instance EC2 ne figurant pas dans un VPC – Vous pouvez communiquer entre une instance de base de données qui se trouve dans un VPC et une instance EC2 qui ne figure pas dans un VPC à l'aide de ClassicLink.

Pour en savoir plus, consultez Scénarios d'accès à une instance de base de données d'un VPC.

Connexion à une instance de base de données qui exécute un moteur de base de données spécifique

Pour plus d'informations sur la connexion à une instance de base de données qui exécute un moteur de base de données spécifique, suivez les instructions relatives à votre moteur de base de données :

Gestion des connexions avec RDS Proxy

Vous pouvez également utiliser Amazon RDS Proxy pour gérer les connexions aux instances de base de données MySQL et PostgreSQL. RDS Proxy autorise les applications à grouper et partager les connexions de bases de données pour améliorer l'évolutivité.