sql >> Databáze >  >> RDS >> PostgreSQL

Jaký je rozdíl mezi uživatelem a rolí?

Předchozí verze Postgresu a některé další DB systémy mají samostatné koncepty „skupin“ (kterým je udělen přístup k databázovým objektům) a „uživatelů“ (kteří se mohou přihlásit a jsou členy jedné nebo více skupin).

V moderních verzích Postgresu byly tyto dva koncepty sloučeny:„role“ může mít možnost přihlášení, možnost „dědit“ z jiných rolí (např. uživatel je členem skupiny nebo skupina je členem jiné skupiny) a přístup k databázovým objektům.

Pro pohodlí mnoho nástrojů a příruček označuje každého uživatele s oprávněním k přihlášení jako „uživatel“ nebo „přihlašovací role“ a každého bez „skupiny“ nebo „skupinové role“, protože je užitečné a běžnou praxí dodržovat ta struktura. Toto je zcela konvence terminologie a abyste porozuměli oprávněním, musíte rozumět pouze dostupným možnostem, když vytváření rolí a udělení přístupu .

Opět čistě pro pohodlí Postgres stále přijímá příkazy používající starou terminologii, jako je CREATE USER a CREATE GROUP což jsou oba aliasy pro CREATE ROLE . Pokud napíšete CREATE USER , LOGIN k nové roli bude ve výchozím nastavení přidáno oprávnění, aby bylo možné emulovat staré chování, když šlo o samostatný příkaz.



  1. MySQL SELECT DISTINCT by měla rozlišovat malá a velká písmena?

  2. MySQL - vložení dat z jiné tabulky sloučené s konstantami

  3. JDBC/Connectorj:Pochopení sdružování připojení

  4. Extrahování z velkého xml dotazu selhává s příliš dlouhým řetězcovým literálem