Machtigingen verlenen in Azure SQL Database for PostgreSQL
Als u gebruikers toegang wilt geven tot databases die worden gehost op uw Azure Database for PostgreSQL-server, moet u rollen (gebruikers) maken en bevoegdheden verlenen of weigeren voor databaseobjecten.
Databasegebruikers maken in Azure Database for PostgreSQL
Maak in Azure Data Studio (of het clienthulpprogramma van uw voorkeur) verbinding met uw Azure Database for PostgreSQL-server met de aanmeldingsreferenties van de beheerder.
Gebruik de relevante database als de huidige database
CREATE ROLE
met de relevante opties om een nieuwe rol (gebruiker) te maken.Als voorbeeld: de volgende query:
- Hiermee maakt u een nieuwe database met de naam testdb.
- Hiermee maakt u een nieuwe gebruiker met een sterk wachtwoord.
- Verleent verbindingsbevoegdheden aan de testdb-database.
CREATE DATABASE testdb; CREATE ROLE <db_user> WITH LOGIN NOSUPERUSER INHERIT CREATEDB NOCREATEROLE NOREPLICATION PASSWORD '<StrongPassword!>'; GRANT CONNECT ON DATABASE testdb TO <db_user>;
Als u de query wilt proberen, kunt u de tijdelijke aanduidingen vervangen door uw gebruikersgegevens.
U kunt vervolgens meer bevoegdheden verlenen aan objecten in de database. Voorbeeld:
GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <db_user>;
De syntaxis voor CREATE ROLE is:
CREATE ROLE name [ [ WITH ] option [ ... ] ]
DE OPTIE WHERE kan zijn:
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 [, ...]
De optionele parameters zijn:
- SUPERUSER | NOSUPERUSER - U kunt geen SUPERUSER-bevoegdheden toewijzen in Azure Database for PostgreSQL. Als dit niet is opgegeven, is NOSUPERUSER de standaardwaarde.
- CREATEDB | NOCREATEDB : of de rol databases kan maken. De standaardwaarde is NOCREATEDB.
- CREATEROLE | NOCREATEROLE : of de rol nieuwe rollen kan maken, dat wil gezegd, CREATE ROLE uitvoeren. Als CREATEROLE-bevoegdheid indien verleend, kan de rol ook andere rollen wijzigen en verwijderen. NOCREATEROLE is de standaardwaarde.
- OVERNEMEN | NOINHERIT : of de rol bevoegdheden over neemt van rollen die het direct of indirect lid is. INHERIT is de standaardinstelling.
- AANMELDEN | NOLOGIN : of een rol zich mag aanmelden. Een rol met het kenmerk LOGIN is een databasegebruiker. Rollen zonder het kenmerk LOGIN kunnen worden gebruikt voor het beheren van databasebevoegdheden. NOLOGIN is de standaardwaarde.
- REPLICATIE | NOREPLICATION : of een rol een replicatierol is. Een rol moet dit kenmerk hebben om verbinding te maken met de server in de replicatiemodus en om replicatiesites te maken of te verwijderen. Het kenmerk REPLICATION is een bevoorrechte rol die alleen moet worden gebruikt voor replicatie. NOREPLICATION is de standaardwaarde. U moet lid zijn van azure_pg_admin om deze rol te maken.
- BYPASSRLS | NOBYPASSRLS: of een rol elk RLS-beleid (beveiliging op rijniveau) omzeilt.
- CONNECTION LIMIT connlimit - geeft aan hoeveel gelijktijdige verbindingen een rol kan maken die kan worden aangemeld. -1 is de standaardwaarde. Met deze parameter wordt geen limiet ingesteld voor gelijktijdige verbindingen.
- [ VERSLEUTELD ] WACHTWOORD 'wachtwoord' | PASSWORD NULL : stelt het wachtwoord van de rol in. Een wachtwoord wordt alleen gebruikt door rollen met het kenmerk LOGIN. Als er geen wachtwoord is opgegeven, is het wachtwoord NULL en mislukt de wachtwoordverificatie. U kunt ook expliciet WACHTWOORD NULL opgeven.
- GELDIG TOT 'tijdstempel': de datum en tijd waarna het wachtwoord van de rol niet meer geldig is. Als u dit weglaat, is er geen tijdslimiet voor het wachtwoord.
- IN ROLE role_name - een of meer rollen waaraan de nieuwe rol wordt toegevoegd als een nieuw lid. Er is geen optie om als beheerder een nieuwe rol toe te voegen; gebruik de opdracht GRANT.
- IN GROUP role_name een verouderd alternatief voor IN ROLE.
- ROLE role_name : een of meer rollen worden toegevoegd als leden van de nieuwe rol. (Door deze wijziging wordt de nieuwe rol een groep.)
- ADMIN role_name - de ADMIN-component is vergelijkbaar met ROLE, maar de benoemde rollen worden toegevoegd aan de nieuwe rol WITH ADMIN OPTION, waardoor ze het recht hebben om lidmaatschap van deze rol aan anderen toe te kennen.
Notitie
U kunt kenmerken van een rol wijzigen met ALTER ROLE en een rol verwijderen met DROP ROLE.