Hierarkisk åtkomstkontroll

Skapa PostgreSQL-databaser

Darryl Reeves

Industry Assistant Professor, New York University

Åtkomstkontroll med scheman

  • Schema – namngiven behållare för databasobjekt
  • Scheman kan användas för åtkomstkontroll
Skapa PostgreSQL-databaser

Exempel: schemaanvändning i finances-databasen

  • Makens/makans åtkomst till databasen finances
  • public-schemat används som standard
  • Två nya scheman: me och spouse
CREATE SCHEMA me;
CREATE SCHEMA spouse;
CREATE TABLE me.account (...);
CREATE TABLE spouse.account (...);
Skapa PostgreSQL-databaser

Tilldela schemabehörigheter

CREATE USER better_half WITH PASSWORD 'changeme';
GRANT USAGE ON SCHEMA spouse TO better_half;
GRANT USAGE ON SCHEMA public TO better_half;
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA spouse;

TO better_half;
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA public

TO better_half;

Schemabaserad åtkomstkontroll implementerad

Skapa PostgreSQL-databaser

Använda grupper

  • Grupp – en rolltyp som identifierar en eller flera användare
  • Åtkomstkontroll kan tillämpas på gruppnivå
CREATE GROUP family;
GRANT USAGE ON SCHEMA public TO family;
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA

public TO family;
ALTER GROUP family ADD USER fin
ALTER GROUP family ADD USER better_half;
Skapa PostgreSQL-databaser

Delad och individuell dataåtkomst

  • Delad åtkomst aktiverad för public-schemat
  • Individuella scheman styr dataåtkomsten
Skapa PostgreSQL-databaser

Nu kör vi en övning!

Skapa PostgreSQL-databaser

Preparing Video For Download...