postgresql:szerepkorok
Összehasonlítás
A kiválasztott és az jelenlegi változat között az alábbi különbségek fordulnak elő:
| Előző változat mindkét oldalonElőző változatKövetkező változat | Előző változat | ||
| postgresql:szerepkorok [2026/04/20 23:38] – riba.zoltan | postgresql:szerepkorok [2026/04/21 01:02] (aktuális) – riba.zoltan | ||
|---|---|---|---|
| Sor 70: | Sor 70: | ||
| A '' | A '' | ||
| + | |||
| + | < | ||
| + | [postgres@gepnev ~]$ psql -c " | ||
| + | CREATE ROLE | ||
| + | [postgres@gepnev ~]$ psql -c ' | ||
| + | List of roles | ||
| + | Role name | | ||
| + | -----------+------------------------------------------------------------ | ||
| + | | ||
| + | | ||
| + | |||
| + | [postgres@gepnev ~]$ psql -c " | ||
| + | | ||
| + | ---------+----------+------------+---------------+-------------+-------------+----------------+--------------+-------------+---------------+--------------+-----------+------- | ||
| + | | ||
| + | (1 row) | ||
| + | |||
| + | [postgres@gepnev data]$ cat ${PGDATA}/ | ||
| + | # TYPE DATABASE USER ADDRESS METHOD | ||
| + | local all all trust | ||
| + | host all all 127.0.0.1/ | ||
| + | host all all ::1/128 trust | ||
| + | |||
| + | local replication all peer | ||
| + | host replication all 127.0.0.1/ | ||
| + | host replication all ::1/128 ident | ||
| + | |||
| + | |||
| + | [postgres@gepnev ~]$ psql -U test -d postgres -c " | ||
| + | ? | ||
| + | ---------- | ||
| + | f | ||
| + | (1 row) | ||
| + | |||
| + | [postgres@gepnev data]$ cat ${PGDATA}/ | ||
| + | # TYPE DATABASE USER ADDRESS METHOD | ||
| + | local all test md5 | ||
| + | local all all trust | ||
| + | host all all 127.0.0.1/ | ||
| + | host all all ::1/128 trust | ||
| + | |||
| + | local replication all peer | ||
| + | host replication all 127.0.0.1/ | ||
| + | host replication all ::1/128 ident | ||
| + | |||
| + | [postgres@gepnev data]$ pg_ctl reload | ||
| + | server signaled | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U test -d postgres -c " | ||
| + | Password for user test: xxx | ||
| + | psql: error: connection to server on socket "/ | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U test -d postgres -c " | ||
| + | Password for user test: | ||
| + | ? | ||
| + | ---------- | ||
| + | f | ||
| + | (1 row) | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c 'DROP ROLE test' | ||
| + | DROP ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c ' | ||
| + | List of roles | ||
| + | Role name | | ||
| + | -----------+------------------------------------------------------------ | ||
| + | | ||
| + | </ | ||
| + | |||
| + | ===== Szerepkör hierarchia ===== | ||
| + | |||
| + | ==== Szerepkörök létrehozása ==== | ||
| + | |||
| + | < | ||
| + | [postgres@gepnev data]$ psql -c ' | ||
| + | List of roles | ||
| + | Role name | | ||
| + | -----------+------------------------------------------------------------ | ||
| + | | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c ' | ||
| + | CREATE ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c ' | ||
| + | CREATE ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c ' | ||
| + | CREATE ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c ' | ||
| + | List of roles | ||
| + | Role name | | ||
| + | -----------+------------------------------------------------------------ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | ==== Jogosultságok hozzáadása ==== | ||
| + | |||
| + | < | ||
| + | [postgres@gepnev data]$ psql -c "GRANT SELECT ON ALL TABLES IN SCHEMA public TO db_read" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA public TO db_write" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT USAGE, CREATE ON SCHEMA public TO db_admin" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO db_admin" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT USAGE, SELECT ON ALL SEQUENCES IN SCHEMA public TO db_read" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT USAGE, SELECT, UPDATE ON ALL SEQUENCES IN SCHEMA public TO db_write" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO db_admin" | ||
| + | GRANT | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO db_read" | ||
| + | ALTER DEFAULT PRIVILEGES | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT INSERT, UPDATE, DELETE ON TABLES TO db_write" | ||
| + | ALTER DEFAULT PRIVILEGES | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON TABLES TO db_admin" | ||
| + | ALTER DEFAULT PRIVILEGES | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT USAGE, SELECT ON SEQUENCES TO db_read" | ||
| + | ALTER DEFAULT PRIVILEGES | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT USAGE, SELECT, UPDATE ON SEQUENCES TO db_write" | ||
| + | ALTER DEFAULT PRIVILEGES | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON SEQUENCES TO db_admin" | ||
| + | ALTER DEFAULT PRIVILEGES | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Szerepkörök egymásba ágyazása ==== | ||
| + | |||
| + | < | ||
| + | [postgres@gepnev data]$ psql -c "GRANT db_read TO db_write" | ||
| + | GRANT ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT db_write TO db_admin" | ||
| + | GRANT ROLE | ||
| + | </ | ||
| + | |||
| + | ==== Felhasználók szerepkörei ==== | ||
| + | |||
| + | < | ||
| + | [postgres@gepnev data]$ psql -c "GRANT db_read TO db_write" | ||
| + | GRANT ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT db_write TO db_admin" | ||
| + | GRANT ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c " | ||
| + | CREATE ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT db_admin TO admin" | ||
| + | GRANT ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c " | ||
| + | CREATE ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT db_write TO developer" | ||
| + | GRANT ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c " | ||
| + | CREATE ROLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -c "GRANT db_read TO monitor" | ||
| + | GRANT ROLE | ||
| + | |||
| + | [postgres@note02 data]$ psql -c " | ||
| + | List of roles | ||
| + | Role name | | ||
| + | -----------+------------------------------------------------------------ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | ==== Teszteles ==== | ||
| + | |||
| + | < | ||
| + | [postgres@gepnev data]$ psql -U admin -d postgres -c " | ||
| + | Did not find any tables. | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U admin -d postgres -c " | ||
| + | CREATE TABLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U admin -d postgres -c " | ||
| + | List of tables | ||
| + | | ||
| + | --------+-------+-------+------- | ||
| + | | ||
| + | (1 row) | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U admin -d postgres -c "DROP TABLE users" | ||
| + | DROP TABLE | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U admin -d postgres -c " | ||
| + | Did not find any tables. | ||
| + | |||
| + | [postgres@gepnev data]$ psql -U developer -d postgres -c " | ||
| + | ERROR: | ||
| + | LINE 1: CREATE TABLE users (id SERIAL PRIMARY KEY, name TEXT) | ||
| + | ^ | ||
| + | [postgres@gepnev data]$ psql -U monitor -d postgres -c " | ||
| + | ERROR: | ||
| + | LINE 1: CREATE TABLE users (id SERIAL PRIMARY KEY, name TEXT) | ||
| + | ^ | ||
| + | </ | ||
| + | |||
postgresql/szerepkorok.1776728281.txt.gz · legutóbbi módosítás: – Szerkesztő: riba.zoltan
