[MEGOLDVA] postgresql letezo adatbazishoz uj user (tablajogok)

Adott egy adatbazis, van usere. Hozzaadtam egy uj usert. (uj_user). Adom a jogokat (mysql utan...)

GRANT ALL ON DATABASE db to uj-user; 

Szep, tud csatlakozni az uj_user az adatbazishoz, de egy SELECT-et sem tud lefuttatni. probalkozok mashogy:

GRANT SELECT ON DATABASE db to uj-user; 

Nem megy, SELECT jog nem adhato adatbazisra.

 GRANT SELECT ON  table1 to uj_user;   

Hopp, mukodik, de semmi humorom 30 tablan vegigmenni....

 GRANT SELECT ON  * to uj_user;   

Nem megy, * nem lehet a tabla (mysql eseten egyszeru, ott a filenevek a tablak, szoval bash scriptbol megoldhato lenne....)

Van ra valami lehetoseg, hoyg az uj user megkapja azokat a jogokat, ami a letrehozo felhasznaloe egyszeruen?
(Bocs, hogy most nem nezem at az egesz pgsql manualt, csak ram lett bizva, hoyg villamgyorsan oldjam meg...)

Hozzászólások

Listázd ki a táblákat, majd egyenként adj rá az új usernek megfelelő jogot. Az adatbázisra hiába adsz jogot.

Itt is simán megoldható bash-ból, fut is ilyenem. A psql -c parancsot/kapcsolót nézegesd

Utána már lehet egyenként:
GRANT SELECT ON tabla1 TO uj-user;
GRANT SELECT ON tabla2 TO uj-user;
vagy tetszőleges ciklussal.

Linuxscripting

Csak a doksi alapjan okoskodom, es most nem tudom kiprobalni:

A legegyszerubbnek az tunik, hogy a regi user-hez, mint csoporthoz, hozzaadod az uj usert. Igy pont ugyanazokkal a jogokkal fog rendelkezni.

Tisztabb megoldas talan ez:
- atnevez regiuser -> ujgroup
- ujgroup-tol elvesz LOGIN jog
- felvesz regiuser, hozzaad ujgroup-hoz
- felvesz ujuser, hozzaad ujgroup-hoz

Gyakorlatilag csoportta alakitod a regi usert es a ket usert hozzaadod a csoporthoz.