Passer au contenu principal

Prérequis

  • Si votre base de données Postgres est protégée par des groupes de sécurité ou d’autres paramètres de pare-feu, vous devrez disposer de l’adresse IP statique du service de synchronisation des données pour effectuer l’étape 1.

Étape 1 : autoriser l’accès

Autorisez l’accès en écriture à une partie de votre base de données RDS ou Aurora PostgreSQL.

Configurer le groupe de sécurité

  1. Dans votre liste Amazon RDS > Databases, cliquez sur l’instance PostgreSQL vers laquelle vous souhaitez envoyer les données.
  2. Sur la page de la base de données, dans l’onglet Connectivity & security, notez l’Endpoint et le numéro de Port.
  1. Dans la section Security, assurez-vous que le paramètre Publicly accessible est défini sur Yes afin que la destination soit accessible depuis l’extérieur de votre VPC. Notez que l’accès reste limité aux IP autorisées à ce stade.
  1. Cliquez sur l’un des groupes de sécurité du VPC (généralement default). Remarque : les groupes VPC sont permissifs (vs. restrictifs) et pour les instances avec plusieurs groupes de sécurité VPC, un seul doit être configuré avec la nouvelle règle entrante.
  1. Dans la section Security Groups, sélectionnez l’onglet Inbound rules.
  2. Cliquez sur Edit inbound rules puis cliquez sur Add rule.
  3. Modifiez la règle nouvellement créée en lui attribuant le type Custom TCP, la Port range notée à la première étape (généralement 5432) et une valeur Source Custom qui inclut toutes les IP du service. Remarque : vous devrez ajouter /32 à la fin de chaque IP (notation CIDR).
  4. Cliquez sur Save rules.

Configurer les ACL réseau (listes de contrôle d’accès)

Pour les instances de base de données dans un VPC
  1. Dans votre tableau de bord RDS, sélectionnez l’instance PostgreSQL.
  2. Cliquez sur le lien vers le VPC de l’instance.
  3. Cliquez sur le VPC ID.
  1. Dans la section Details, cliquez sur le lien sous Main network ACL.
  1. Cliquez sur l’ID de la liste de contrôle d’accès réseau.

Modifier les règles entrantes

  1. Cliquez sur l’onglet Inbound rules, et vérifiez s’il existe une règle existante avec une Source de 0.0.0.0/0 définie sur Allow. (Il s’agit d’une règle par défaut créée par AWS. Si cette règle existe déjà, passez à Modifier les règles sortantes.)
  1. Créez la règle entrante (si elle n’existe pas). Cliquez sur Edit inbound rules et soit Add new rule soit modifiez une règle existante pour autoriser l’accès au numéro de port de votre instance de base de données (généralement 5432) depuis l’IP statique de Prequel. Cliquez sur Save changes.

Modifier les règles sortantes

  1. Dans le menu ACL, sélectionnez l’onglet Outbound rules, et vérifiez s’il existe une règle existante avec une Destination de 0.0.0.0/0 définie sur Allow. (Il s’agit d’une règle par défaut créée par AWS. Si cette règle existe déjà, passez à l’étape suivante.)
  1. Créez la règle sortante (si elle n’existe pas). Cliquez sur Edit outbound rules et modifiez les règles pour autoriser le trafic sortant vers les ports 1024-65535 pour la Destination 0.0.0.0/0.

Étape 2 : créer un utilisateur en écriture

Créez un utilisateur de base de données qui se chargera de l’écriture des données source.
  1. Ouvrez une connexion à votre base de données Amazon RDS PostgreSQL.
  2. Créez un utilisateur pour le transfert de données en exécutant la commande SQL suivante.
CREATE USER <username> PASSWORD '<some-password>';
  1. Accordez à l’utilisateur les privilèges create et temporary sur la base de données. create permet au service de créer de nouveaux schémas et temporary lui permet de créer des tables temporaires.
GRANT CREATE, TEMPORARY ON DATABASE <database> TO <username>;
🚧 Si le schema existe déjà : Par défaut, le service crée un nouveau schéma à partir de la configuration de la destination (à l’étape suivante). Si vous préférez créer le schéma vous-même avant de connecter la destination, vous devez vous assurer que l’utilisateur en écriture dispose des autorisations adéquates sur le schéma, en utilisant GRANT ALL ON schema <schema> TO <username>;

Étape 3 : ajouter votre destination

Partagez de manière sécurisée votre nom d’hôte, le nom de la base de données, le port, le nom du schéma choisi, le nom d’utilisateur et le mot de passe avec nous pour finaliser la connexion.