PostgreSQL
Préparer un compte PostgreSQL de lecture et sélectionner les tables accessibles aux membres.
La connexion utilise un hôte, un port, un nom de base, un utilisateur et un mot de passe. Le responsable de la base prépare le compte ; un administrateur Persyst enregistre la connexion et attribue les tables.
Préparer le compte de lecture
Demandez au responsable PostgreSQL un utilisateur dédié, sans droits d’administration ni d’écriture, limité aux tables ou vues utiles. Préférez des vues dédiées si certaines colonnes ou certaines lignes doivent rester hors du périmètre partagé.
Exemple à adapter et à exécuter par le responsable de la base. reporting et weekly_sales désignent ici un schéma et une table ou vue déjà existants ; remplacez aussi business_db et le mot de passe.
CREATE ROLE persyst_reader LOGIN PASSWORD '<MOT_DE_PASSE_UNIQUE>';
GRANT CONNECT ON DATABASE business_db TO persyst_reader;
GRANT USAGE ON SCHEMA reporting TO persyst_reader;
GRANT SELECT ON reporting.weekly_sales TO persyst_reader;Ces instructions s’appliquent à la table ou vue nommée. Toute autre ressource doit être autorisée séparément par le responsable PostgreSQL.
Préparer la connexion réseau
L’hôte doit être joignable depuis le serveur Persyst. Une adresse localhost désigne ce serveur, pas votre ordinateur. Faites valider le réseau et les exigences de transport par le responsable de votre base avant de saisir les identifiants.
Connecter la base dans Persyst
- Dans Sources de données → Ajouter une source, choisissez PostgreSQL.
- Donnez un nom à la connexion et renseignez l’hôte, le port fourni par votre hébergeur (
5432par défaut), la base, l’utilisateur et son mot de passe. - Testez la connexion, puis créez-la pour passer à la sélection des tables.
- Cochez uniquement les tables ou vues à rendre disponibles et enregistrez la sélection.
- Dans Gestion des accès, attribuez les tables et les outils de lecture aux bénéficiaires.
Les droits PostgreSQL et la sélection dans Persyst se complètent. Sélectionner une table entière ne masque pas certaines de ses colonnes ou de ses lignes.
Vérifier et maintenir l’accès
Depuis l’assistant d’un membre autorisé, demandez le schéma d’une table sélectionnée, puis un décompte sur cette table. Les requêtes sont limitées à la lecture et aux tables autorisées.
Pour remplacer le mot de passe, utilisez Modifier les identifiants dans la fiche de la source. Lors d’une modification, laisser le mot de passe vide conserve le secret existant. Après tout changement des droits PostgreSQL, actualisez la liste des tables et revérifiez les attributions.
Prompt pour préparer l’accès en lecture seule
Copiez ce prompt dans l’assistant utilisé par votre responsable de base. Il reprend les consignes du guide d’installation : classement des tables, vues filtrées et compte dédié. Faites relire le SQL proposé sur votre schéma réel avant de l’exécuter. Les identifiants restent hors de la conversation.
You are helping prepare a PostgreSQL database for Persyst.
Inspect schema metadata first; do not read production rows unnecessarily.
Goal: a dedicated SELECT-only account limited to useful approved data.
Classify every relevant table as safe, sensitive, or excluded.
Grant safe tables directly. For sensitive tables, expose explicit-column
views containing only approved columns and rows; never use SELECT *.
Do not grant the underlying sensitive tables to the reader.
Exclude credentials, password hashes, API keys, tokens, private keys,
OTP/MFA secrets and webhook secrets. Exclude personal data by default:
names, emails, phone numbers, addresses, national and financial identifiers,
IP/device identifiers, precise location and unredacted free text.
Opaque IDs may still be personal data; do not assume they are anonymous.
Do not join approved views back to excluded personal data.
Provide reviewed SQL to create a dedicated LOGIN role with no superuser,
role-creation, database-creation, write, ownership or privileged memberships.
Grant CONNECT on the required database, USAGE on the required schemas,
and SELECT only on approved tables/views. Review inherited/PUBLIC grants,
function execution and view security under this PostgreSQL version.
Do not grant access automatically to future tables.
Output: classification and exclusions; explicit-column view definitions;
role and minimal GRANT statements; verification queries as the reader;
and the non-secret host, port, database and username for the Persyst form.
Confirm allowed reads and rejection of writes without modifying real data.
Have the database owner validate network and transport compatibility.
Use password placeholders. Generate/store the real password locally and
enter it directly in Persyst; never print it or paste it into this chat.
Prepare the SQL for review before applying account or permission changes.Référence : permissions PostgreSQL avec GRANT.