Roller, Postgres: Difference between revisions
Linuxwiki>Wikiadmin |
Linuxwiki>Wikiadmin No edit summary |
||
| Line 7: | Line 7: | ||
Kommandot för att skapa en roll är | Kommandot för att skapa en roll är | ||
'''CREATE ROLE name [ [ WITH ] option [ ... ] ]''' | '''CREATE ROLE name [ [ WITH ] option [ ... ] ]''' | ||
Name är namnet på rollen. Option förklaras här | Name är namnet på rollen. Option förklaras här | ||
=== SUPERUSER / NOSUPERUSER === | ==== SUPERUSER / NOSUPERUSER ==== | ||
En superuser står över restriktioner i databasen. Använd enbart när det verkligen behövs. För att tilldela en superuserroll måste man själv vara superuser. Standard är NOSUPERUSER. | En superuser står över restriktioner i databasen. Använd enbart när det verkligen behövs. För att tilldela en superuserroll måste man själv vara superuser. Standard är NOSUPERUSER. | ||
=== CREATEDB / NOCREATEDB === | ==== CREATEDB / NOCREATEDB ==== | ||
Avgör om en roll kan skapa en databas. Standard är NOCREATEDB. | Avgör om en roll kan skapa en databas. Standard är NOCREATEDB. | ||
=== CREATEROLE / NOCREATEROLE === | ==== CREATEROLE / NOCREATEROLE ==== | ||
Bestämmer om en roll kan skapa, ändra, ta bort, kommentera och ändra "security label" för andra roller. Standard är NOCREATEROLE. | Bestämmer om en roll kan skapa, ändra, ta bort, kommentera och ändra "security label" för andra roller. Standard är NOCREATEROLE. | ||
=== INHERIT / NOINHERIT === | ==== INHERIT / NOINHERIT ==== | ||
Detta påverkar "arv" när en roll läggs till som en medlem av en annan roll. Standard är INHEIT. | Detta påverkar "arv" när en roll läggs till som en medlem av en annan roll. Standard är INHEIT. | ||
=== LOGIN / NOLOGIN === | ==== LOGIN / NOLOGIN ==== | ||
Styr ifall en roll har tillåtelse att logga in eller ej. En roll med detta attribut kan betraktas som en användare. Utan detta attribut kan en sådan roll vara lämpligt för att hantera databasrättigheter. Standard är NOLOGIN utom när CREATE ROLE används med sin alternativa stavning CREATE USER. | Styr ifall en roll har tillåtelse att logga in eller ej. En roll med detta attribut kan betraktas som en användare. Utan detta attribut kan en sådan roll vara lämpligt för att hantera databasrättigheter. Standard är NOLOGIN utom när CREATE ROLE används med sin alternativa stavning CREATE USER. | ||
==== REPLICATION / NOREPLICATION ==== | |||
Denna behövs för att en roll ska vara en "replication role" och kunna ansluta till en server i replication mode. och för att kunna skapa eller droppa replikering. Detta är ett högt privilegie som bara ska användas för roller som används för replikering. Standard är NOREPLICATION. | |||
Revision as of 13:01, 31 October 2024
Skapa roller i Postgres
En roll i Postgres kan äga sina egna databasobjekt och ha databasprivilegier. Man kan se en roll som en användare, en grupp eller båda beroende på hur det används. För att kunna skapa en roll måste man ha privilegiet CREATEROLE eller vara en superuser.
Roller definieras på klusternivå och gäller för alla databaser i klustret.
Kommandot för att skapa en roll är
CREATE ROLE name [ [ WITH ] option [ ... ] ]
Name är namnet på rollen. Option förklaras här
SUPERUSER / NOSUPERUSER
En superuser står över restriktioner i databasen. Använd enbart när det verkligen behövs. För att tilldela en superuserroll måste man själv vara superuser. Standard är NOSUPERUSER.
CREATEDB / NOCREATEDB
Avgör om en roll kan skapa en databas. Standard är NOCREATEDB.
CREATEROLE / NOCREATEROLE
Bestämmer om en roll kan skapa, ändra, ta bort, kommentera och ändra "security label" för andra roller. Standard är NOCREATEROLE.
INHERIT / NOINHERIT
Detta påverkar "arv" när en roll läggs till som en medlem av en annan roll. Standard är INHEIT.
LOGIN / NOLOGIN
Styr ifall en roll har tillåtelse att logga in eller ej. En roll med detta attribut kan betraktas som en användare. Utan detta attribut kan en sådan roll vara lämpligt för att hantera databasrättigheter. Standard är NOLOGIN utom när CREATE ROLE används med sin alternativa stavning CREATE USER.
REPLICATION / NOREPLICATION
Denna behövs för att en roll ska vara en "replication role" och kunna ansluta till en server i replication mode. och för att kunna skapa eller droppa replikering. Detta är ett högt privilegie som bara ska användas för roller som används för replikering. Standard är NOREPLICATION.