Bevilja behörigheter i Azure SQL Database for PostgreSQL

Slutförd

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

  1. I Azure Data Studio (eller önskat klientverktyg) ansluter du till din Azure Database for PostgreSQL-server med autentiseringsuppgifterna för administratörsinloggning.

  2. Med relevant databas som aktuell databas använder du CREATE ROLE med relevanta alternativ för att skapa en ny roll (användare).

  3. Till exempel följande fråga:

    1. Skapar en ny databas med namnet testdb.
    2. Skapar en ny användare med ett starkt lösenord.
    3. 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.

  4. 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.