Hierarchické řízení přístupu

Tvorba PostgreSQL databází

Darryl Reeves

Industry Assistant Professor, New York University

Řízení přístupu pomocí schémat

  • Schéma – pojmenovaný kontejner pro objekty databáze
  • Schémata lze použít pro řízení přístupu
Tvorba PostgreSQL databází

Příklad: použití schémat v databázi financí

  • Přístup manžela/manželky k databázi finances
  • Ve výchozím nastavení se použije schéma public
  • Dvě nová schémata: me a spouse
CREATE SCHEMA me;
CREATE SCHEMA spouse;
CREATE TABLE me.account (...);
CREATE TABLE spouse.account (...);
Tvorba PostgreSQL databází

Udělování oprávnění ke schématům

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;

Řízení přístupu na základě schémat je implementováno

Tvorba PostgreSQL databází

Používání skupin

  • Skupina – typ role identifikující jednoho nebo více uživatelů
  • Řízení přístupu lze uplatnit na úrovni skupiny
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;
Tvorba PostgreSQL databází

Sdílený a individuální přístup k datům

  • Sdílený přístup ke schématu public je povolen
  • Individuální schémata řídí přístup k datům
Tvorba PostgreSQL databází

Pojďme procvičovat!

Tvorba PostgreSQL databází

Preparing Video For Download...