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é
- Dans votre liste Amazon RDS > Databases, cliquez sur l’instance PostgreSQL vers laquelle vous souhaitez envoyer les données.
- Sur la page de la base de données, dans l’onglet Connectivity & security, notez l’Endpoint et le numéro de Port.
- 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.
- 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.
- Dans la section Security Groups, sélectionnez l’onglet Inbound rules.
- Cliquez sur Edit inbound rules puis cliquez sur Add rule.
- 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 SourceCustomqui inclut toutes les IP du service. Remarque : vous devrez ajouter/32à la fin de chaque IP (notation CIDR). - 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- Dans votre tableau de bord RDS, sélectionnez l’instance PostgreSQL.
- Cliquez sur le lien vers le VPC de l’instance.
- Cliquez sur le VPC ID.
- Dans la section Details, cliquez sur le lien sous Main network ACL.
- Cliquez sur l’ID de la liste de contrôle d’accès réseau.
Modifier les règles entrantes
- Cliquez sur l’onglet Inbound rules, et vérifiez s’il existe une règle existante avec une Source de
0.0.0.0/0définie surAllow. (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.)
- 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
- 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/0définie surAllow. (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.)
- 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.- Ouvrez une connexion à votre base de données Amazon RDS PostgreSQL.
- Créez un utilisateur pour le transfert de données en exécutant la commande SQL suivante.
- Accordez à l’utilisateur les privilèges
createettemporarysur la base de données.createpermet au service de créer de nouveaux schémas ettemporarylui permet de créer des tables temporaires.
🚧 Si leschemaexiste 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 utilisantGRANT ALL ON schema <schema> TO <username>;