This commit is contained in:
2025-10-13 11:06:48 +02:00
parent 87564a61a4
commit 3eb75340a2
5 changed files with 40 additions and 13 deletions

View File

@@ -1,6 +1,23 @@
create role postgrest noinherit login password 'motdepasse';
grant role_web to postgrest;
create role postgrest nosuperuser nocreatedb nocreaterole noinherit noreplication nobypassrls
login password '9012';
-- Postgraphile
create role postgraphile inherit login password 'motdepasse';
grant role_web to postgraphile;
-- postgrest est le rôle utilisé par l'application pour se connecter à la base.
-- Il doit être configuré pour avoir un accès très limité.
-- Il s'agit d'un caméléon dont la tâche est de « devenir » un autre utilisateur pour servir des requêtes HTTP authentifiées.
-- Roles sans login. Il faut se connecter d'abord avec l'utilisateur postgrest.
-- Puis celui-ci usurpe une des identités suivantes suivant le role présent dans le JWT.
-- Lorsqu'une demande contient un JWT valide avec une revendication de rôle,
-- PostgREST passera au rôle de base de données avec ce nom pendant la durée de la demande HTTP avec la commande :
-- SET LOCAL ROLE adherent;
create role anonyme nologin;
create role adherent nologin;
-- L'utilisateur postgrest peut se connecter en tant que ...
grant anonyme to postgrest;
grant adherent to postgrest;
grant usage on schema public to anonyme;
alter default privileges in schema public
grant select on tables to anonyme;

View File

@@ -0,0 +1 @@
create role postgraphile inherit login password 'motdepasse';