Ingebouwde Azure Database for PostgreSQL-serverfuncties beschrijven

Voltooid

PostgreSQL beheert databasetoegang met behulp van rollen. Een rol kan een databasegebruiker of een groep gebruikers zijn. Rollen kunnen:

  • Eigen databaseobjecten, zoals tabellen of functies.
  • Wijs bevoegdheden voor deze objecten toe aan andere rollen.
  • Verdeel lidmaatschap aan een andere rol, zodat de lidrol zijn bevoegdheden heeft.

Uw Azure Database for PostgreSQL-server wordt gemaakt met drie standaardrollen:

  • azure_pg_admin
  • azuresu
  • de gebruiker van de serverbeheerder - onderdeel van de azure_pg_admin-rol

Bekijk alle serverfuncties door de volgende query uit te voeren:

SELECT * FROM pg_roles;

Notitie

Azure Database for PostgreSQL is een beheerde PaaS-service en alleen Microsoft-gebruikers hebben de rol azuresu (supergebruiker).

Toen u de server hebt gemaakt, is er ook een serverbeheerder gemaakt. Deze gebruiker is automatisch lid geworden van de rol azure_pg_admin . De beheerder van de Azure Database for PostgreSQL-server heeft de volgende bevoegdheden: LOGIN, NOSUPERUSER, INHERIT, CREATEDB, CREATEROLE, REPLICATION

Nu kan het gebruikersaccount van de serverbeheerder dat u hebt gemaakt toen de server werd gemaakt, het volgende doen:

  • Maak meer gebruikers en verdeel deze gebruikers aan de rol azure_pg_admin .
  • Maak minder bevoorrechte gebruikers en rollen die toegang hebben tot afzonderlijke databases en schema's.

PostgreSQL bevat enkele standaardrollen die kunnen worden toegewezen aan gebruikers. Deze omvatten vaak benodigde bevoegdheden voor toegang:

  • pg_read_all_settings
  • pg_signal_backend
  • pg_read_server_files
  • pg_write_server_files
  • pg_execute_server_program

Er zijn ook meer gespecialiseerde rollen:

  • pg_monitor
  • pg_read_all_stats
  • pg_stat_scan_tables
  • replicatie

Beheerdersgebruikers maken in Azure Database for PostgreSQL

  1. 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.
  2. Bewerk de volgende SQL-code door de tijdelijke aanduidingen te vervangen door uw gebruikersnaam en wachtwoord:
CREATE ROLE <new_user> WITH LOGIN NOSUPERUSER INHERIT CREATEDB CREATEROLE NOREPLICATION PASSWORD '<StrongPassword!>';
GRANT azure_pg_admin TO <new_user>;