Bevilja behörigheter i Azure SQL Database for PostgreSQL
Om du vill ge användare åtkomst till databaser som finns på din Azure Database for PostgreSQL-server måste du skapa roller (användare) och bevilja eller neka behörigheter till databasobjekt.
Skapa databasanvändare i Azure Database for PostgreSQL
I Azure Data Studio (eller önskat klientverktyg) ansluter du till din Azure Database for PostgreSQL-server med autentiseringsuppgifterna för administratörsinloggning.
Med relevant databas som aktuell databas använder du
CREATE ROLE
med relevanta alternativ för att skapa en ny roll (användare).Till exempel följande fråga:
- Skapar en ny databas med namnet testdb.
- Skapar en ny användare med ett starkt lösenord.
- Ger behörighet att ansluta till testdb-databasen.
CREATE DATABASE testdb; CREATE ROLE <db_user> WITH LOGIN NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION PASSWORD '<StrongPassword!>'; GRANT CONNECT ON DATABASE testdb TO <db_user>;
Om du vill prova frågan kan du ersätta platshållarna med din användarinformation.
Du kan sedan ge fler behörigheter till objekt i databasen. Till exempel:
GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <db_user>;
Syntaxen för CREATE ROLE är:
CREATE ROLE name [ [ WITH ] option [ ... ] ]
WHERE-alternativet kan vara:
SUPERUSER | NOSUPERUSER
| CREATEDB | NOCREATEDB
| CREATEROLE | NOCREATEROLE
| INHERIT | NOINHERIT
| LOGIN | NOLOGIN
| REPLICATION | NOREPLICATION
| BYPASSRLS | NOBYPASSRLS
| CONNECTION LIMIT connlimit
| [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
| VALID UNTIL 'timestamp'
| IN ROLE role_name [, ...]
| ROLE role_name [, ...]
| ADMIN role_name [, ...]
Valfria parametrar är:
- SUPERUSER | NOSUPERUSER – Du kan inte tilldela SUPERUSER-privilegier i Azure Database for PostgreSQL. Om inget anges är NOSUPERUSER standardvärdet.
- CREATEDB | NOCREATEDB – om rollen kan skapa databaser. Standardvärdet är NOCREATEDB.
- CREATEROLE | NOCREATEROLE – om rollen kan skapa nya roller, d.v.s. köra CREATE ROLE. Om CREATEROLE-behörighet beviljas kan rollen också ändra och släppa andra roller. NOCREATEROLE är standardvärdet.
- ÄRV | NOINHERIT – om rollen ärver behörigheter för roller som den är en direkt eller indirekt medlem i. INHERIT är standardvärdet.
- INLOGGNING | NOLOGIN – om en roll tillåts logga in. En roll med attributet LOGIN är en databasanvändare. Roller utan attributet LOGIN kan användas för att hantera databasprivilegier. NOLOGIN är standardvärdet.
- REPLIKERING | NOREPLICATION – om en roll är en replikeringsroll. En roll måste ha det här attributet för att ansluta till servern i replikeringsläge och för att skapa eller släppa replikeringsplatser. Attributet REPLICATION är en privilegierad roll som endast ska användas för replikering. NOREPLICATION är standardvärdet. Du måste vara medlem i azure_pg_admin för att kunna skapa den här rollen.
- BYPASSRLS | NOBYPASSRLS – om en roll kringgår varje säkerhetsprincip på radnivå (RLS).
- ANSLUTNINGSGRÄNS - anger hur många samtidiga anslutningar en roll som kan logga in kan göra. -1 är standardvärdet. Den här parametern begränsar inte samtidiga anslutningar.
- [ KRYPTERAD ] LÖSENORD 'lösenord'| LÖSENORD NULL – anger rollens lösenord. Ett lösenord används endast av roller med attributet LOGIN. Om inget lösenord anges är lösenordet NULL och lösenordsautentiseringen misslyckas. Alternativt kan du uttryckligen ange NULL FÖR LÖSENORD.
- GILTIGT TILL "tidsstämpel" – datum och tid efter vilken rollens lösenord inte längre är giltigt. Om det utelämnas finns det ingen tidsgräns för lösenordet.
- I ROLL role_name – en eller flera roller som den nya rollen läggs till som ny medlem. Det finns inget alternativ för att lägga till en ny roll som administratör. använd kommandot GRANT.
- I GRUPP role_name ett föråldrat alternativ till IN ROLE.
- ROLL role_name – en eller flera roller läggs till som medlemmar i den nya rollen. (Den här ändringen i praktiken gör den nya rollen till en grupp.)
- ADMIN role_name – ADMIN-satsen är som ROLL, men de namngivna rollerna läggs till i den nya rollen MED ADMINISTRATÖRSALTERNATIVet, vilket ger dem rätt att bevilja medlemskap i den här rollen till andra.
Kommentar
Du kan ändra attribut för en roll med ALTER ROLE och ta bort en roll med DROP ROLE.