[Gfoss] Postgresql e permessi - un po' di confusione..

Buon giorno

Ho ancora un po’ di confusione sui grant di Postrgesql…

Ho un gruppo admin – chiamiamolo mioadmin

Un gruppo editor – chiamiamolo mioeditor

Un gruppo readers – mioreaders

Ogni uno di questi gruppi ha almeno un utente (mioadmin molto pochi, mioeditor alcuni, mioreaders quasi tutti)

Con un utente appartenente a mioadmin creo uno schema, mioschema, e voglio che solo mioeditors possano modificarne i contenuti e che di default tutti i readers e naturalmente mioadmin possano leggere le tabelle via via create.

Quindi:

CREATE SCHEMA mioschema AUTHORIZATION mioadmin;

GRANT ALL ON SCHEMA mioschema TO mioadmin;

GRANT ALL ON SCHEMA mioschema TO mioeditor;

GRANT USAGE ON SCHEMA delfi TO mioreaders;

ALTER DEFAULT PRIVILEGES IN SCHEMA mioschema GRANT SELECT ON TABLES TO mioreaders;

Giusto?

Se ora da pgadmin come utente appartenente a mioeditor creo una tabella:

CREATE TABLE mioschema.prova

(pippo bit(1))

WITH (OIDS=FALSE);

ALTER TABLE mioschema.prova OWNER TO utente_mioeditor;

Funziona, la tabella viene correttamente creata

Non mi dà però i permessi di lettura ai mioreaders e neppure a mioadmin…

Questo ultimo gruppo può solamente eliminare la tabella ma non leggerne il contenuto…

Dove sbaglio??

Grazie

Io uso i comandi così da psql (server debian 8.2, postgres 9.4.5)

Tabella:

GRANT SELECT, INSERT, UPDATE, DELETE ON schema.tabella TO gruppo;

GRANT USAGE, SELECT, UPDATE ON schema.tabella_id_seq TO gruppo; (id sequenze contatori indici, sennò ti lascia modificare e cancellare ma non inserire nuove tuple)

Schema:

GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA schema TO gruppo;

GRANT USAGE, SELECT, UPDATE ON ALL SEQUENCES IN SCHEMA schema TO gruppo;

Per il gruppo in sola lettura solo SELECT

ciao


From: pietro.rossin@arpa.fvg.it
To: gfoss@lists.gfoss.it
Date: Wed, 4 Nov 2015 13:54:39 +0000
Subject: [Gfoss] Postgresql e permessi - un po’ di confusione…

Buon giorno

Ho ancora un po’ di confusione sui grant di Postrgesql…

Grazie Umberto

Ho risolto così

···

CREATE SCHEMA mioschema

AUTHORIZATION admin;

GRANT ALL ON SCHEMA mioschema TO admin;

GRANT USAGE ON SCHEMA mioschema TO readers;

GRANT USAGE ON SCHEMA mioschema TO editors;

ALTER DEFAULT PRIVILEGES IN SCHEMA mioschema

GRANT INSERT, SELECT, UPDATE, DELETE ON TABLES

TO editors;

ALTER DEFAULT PRIVILEGES IN SCHEMA mioschema

GRANT SELECT ON TABLES

TO readers;

ALTER DEFAULT PRIVILEGES IN SCHEMA mioschema

GRANT SELECT, UPDATE, USAGE ON SEQUENCES

TO editors;

ALTER DEFAULT PRIVILEGES IN SCHEMA mioschema

GRANT SELECT ON SEQUENCES

TO readers;


In questo modo solo admin può creare tabelle e modificarle

Readers ed editor possono usare lo schema

Editors può modificare i dati ed aggiungere record, potendo anche incrementare le sequenze

Readers può solo leggere i dati

Sembra funzionare…

Pietro

Da: Umberto Zulian [mailto:uzulian@hotmail.com]
Inviato: giovedì 5 novembre 2015 08:25
A: Rossin Pietro pietro.rossin@arpa.fvg.it; gfoss@lists.gfoss.it
Oggetto: RE: [Gfoss] Postgresql e permessi - un po’ di confusione…

Io uso i comandi così da psql (server debian 8.2, postgres 9.4.5)

Tabella:

GRANT SELECT, INSERT, UPDATE, DELETE ON schema.tabella TO gruppo;

GRANT USAGE, SELECT, UPDATE ON schema.tabella_id_seq TO gruppo; (id sequenze contatori indici, sennò ti lascia modificare e cancellare ma non inserire nuove tuple)

Schema:

GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA schema TO gruppo;

GRANT USAGE, SELECT, UPDATE ON ALL SEQUENCES IN SCHEMA schema TO gruppo;

Per il gruppo in sola lettura solo SELECT

ciao


From: pietro.rossin@arpa.fvg.it
To: gfoss@lists.gfoss.it
Date: Wed, 4 Nov 2015 13:54:39 +0000
Subject: [Gfoss] Postgresql e permessi - un po’ di confusione…

Buon giorno

Ho ancora un po’ di confusione sui grant di Postrgesql…