Warum setzt du NOINHERIT?
Bzw. solltest du bei den einzelnen Personen-Rollen INHERIT setzen.
Die Dokumentation erzählt mehr dazu:
PostgreSQL: Documentation: Manuals: PostgreSQL 9.0: CREATE ROLE
Ich möchte für unsere Gruppe von 9 Benutzern für PostgreSQL 9 Login- und Gruppenrollen vergeben.
Da ich bei den letzten Installationen Die Rechtsvergabe nur über die Login-Rollen geregelt habe, möchte ich es jetzt richtig machen, was die Sache ja auch deutlich vereinfacht.
Folgende Schritte habe ich mit pg-Admin vorgenommen:
- Anlegen der Login-Rollen (z.B. CREATE ROLE umn_user...)
- Anlegen der Gruppenrollen (kann nicht einloggen) (z.B. CREATE ROLE read_only NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE)
- Zuweisung der Login-Rollen zu den Gruppen (z.B. ALTER GROUP read_only ADD USER umn_user)
- Vergabe der Rechte mit GRANT an den einzelnen Tabellen für die Gruppen (z.B. GRANT SELECT ON TABLE xyz TO GROUP read_only)
Wenn ich jetzt versuche, mit einer Login-Rolle auf bestimmte Tabellen zuzugreifen, die für die Gruppe freigegeben sind, wird mir der Zugriff verweigert.
Ist mein Verständnis für die Rechtevergabe richtig?
In pg-admin und den Tabellen pg_user und pg_group lassen sicht die Eintragungen auch nachvollziehen.
Danke im Voraus für eure Antworten
Thomas
Warum setzt du NOINHERIT?
Bzw. solltest du bei den einzelnen Personen-Rollen INHERIT setzen.
Die Dokumentation erzählt mehr dazu:
PostgreSQL: Documentation: Manuals: PostgreSQL 9.0: CREATE ROLE
Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören
Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler
PostgreSQL Service & Support
Hallo,
der Haken war die Lösung.
Danke und schönes Fest
Thomas
Links: Tobias Bauer - IT- und Funkdienstleistungen - Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen - Funkforum
Lesezeichen