Delen via


Gebruikers maken in Azure Database for PostgreSQL - Enkele server

VAN TOEPASSING OP: Azure Database for PostgreSQL - enkele server

Belangrijk

Azure Database for PostgreSQL - Enkele server bevindt zich op het buitengebruikstellingspad. We raden u ten zeerste aan om een upgrade uit te voeren naar Azure Database for PostgreSQL - Flexible Server. Zie Wat gebeurt er met Azure Database for PostgreSQL Enkele server voor meer informatie over migreren naar Azure Database for PostgreSQL - Flexible Server.

In dit artikel wordt beschreven hoe u gebruikers kunt maken binnen een Azure Database for PostgreSQL-server.

Als u meer wilt weten over het maken en beheren van gebruikers van Azure-abonnementen en hun bevoegdheden, gaat u naar het artikel op basis van op rollen gebaseerd toegangsbeheer (Azure RBAC) van Azure of bekijkt u hoe u rollen aanpast.

Het beheerdersaccount voor de server

Toen u uw Azure Database for PostgreSQL voor het eerst maakte, hebt u de gebruikersnaam en het wachtwoord van de serverbeheerder opgegeven. Voor meer informatie kunt u de quickstart volgen om de stapsgewijze benadering te bekijken. Omdat de gebruikersnaam van de serverbeheerder een aangepaste naam is, kunt u de door u gekozen gebruikersnaam van de serverbeheerder vinden in Azure Portal.

De Azure Database for PostgreSQL-server wordt gemaakt met de drie standaardrollen die zijn gedefinieerd. U kunt deze rollen zien door de opdracht uit te voeren: SELECT rolname FROM pg_roles;

  • azure_pg_admin
  • azure_superuser
  • uw serverbeheerder

De gebruiker van de serverbeheerder is lid van de azure_pg_admin-rol. Het beheerdersaccount van de server maakt echter geen deel uit van de rol azure_superuser. Omdat deze service een beheerde PaaS-service is, maakt alleen Microsoft deel uit van de rol van supergebruiker.

De PostgreSQL-engine gebruikt bevoegdheden om de toegang tot databaseobjecten te beheren, zoals wordt beschreven in de PostgreSQL-productdocumentatie. In Azure Database for PostgreSQL krijgt de gebruiker van de serverbeheerder deze bevoegdheden: LOGIN, NOSUPERUSER, INHERIT, CREATEDB, CREATEROLE, REPLICATION

Het gebruikersaccount van de serverbeheerder kan worden gebruikt om extra gebruikers te maken en deze gebruikers toe te kennen aan de azure_pg_admin rol. Het beheerdersaccount van de server kan ook worden gebruikt om gebruikers en rollen met minder bevoegdheden te maken die toegang hebben tot afzonderlijke databases en schema's.

Aanvullende beheerdersgebruikers maken in Azure Database for PostgreSQL

  1. Haal de verbindingsgegevens en de gebruikersnaam van de beheerder op. Voor verbinding met uw databaseserver moet u beschikken over de volledige servernaam en aanmeldingsreferenties van de beheerder. U kunt de servernaam en aanmeldingsgegevens eenvoudig vinden op de pagina Overzicht van de server of op de pagina Eigenschappen in Azure Portal.

  2. Gebruik het beheerdersaccount en wachtwoord om verbinding te maken met uw databaseserver. Gebruik het clienthulpprogramma van uw voorkeur, zoals pg Beheer of psql. Als u niet zeker weet hoe u verbinding maakt, raadpleegt u de quickstart

  3. Bewerk en voer de volgende SQL-code uit. Vervang uw nieuwe gebruikersnaam voor de waarde van de tijdelijke aanduiding <new_user> en vervang het tijdelijke aanduidingswachtwoord door uw eigen sterke wachtwoord.

    CREATE USER <new_user> CREATEDB CREATEROLE PASSWORD '<StrongPassword!>';
    
    GRANT azure_pg_admin TO <new_user>;
    

Databasegebruikers maken in Azure Database for PostgreSQL

  1. Haal de verbindingsgegevens en de gebruikersnaam van de beheerder op. Voor verbinding met uw databaseserver moet u beschikken over de volledige servernaam en aanmeldingsreferenties van de beheerder. U kunt de servernaam en aanmeldingsgegevens eenvoudig vinden op de pagina Overzicht van de server of op de pagina Eigenschappen in Azure Portal.

  2. Gebruik het beheerdersaccount en wachtwoord om verbinding te maken met uw databaseserver. Gebruik het clienthulpprogramma van uw voorkeur, zoals pg Beheer of psql.

  3. Bewerk en voer de volgende SQL-code uit. Vervang de waarde van de tijdelijke aanduiding <db_user> door de beoogde nieuwe gebruikersnaam en tijdelijke aanduiding door <newdb> uw eigen databasenaam. Vervang het tijdelijke aanduidingswachtwoord door uw eigen sterke wachtwoord.

    Met deze sql-codesyntaxis maakt u bijvoorbeeld een nieuwe database met de naam testdb. Vervolgens wordt er een nieuwe gebruiker gemaakt in de PostgreSQL-service en worden er verbindingsbevoegdheden verleend aan de nieuwe database voor die gebruiker.

    CREATE DATABASE <newdb>;
    
    CREATE USER <db_user> PASSWORD '<StrongPassword!>';
    
    GRANT CONNECT ON DATABASE <newdb> TO <db_user>;
    
  4. Met behulp van een beheerdersaccount moet u mogelijk extra bevoegdheden verlenen om de objecten in de database te beveiligen. Raadpleeg de PostgreSQL-documentatie voor meer informatie over databaserollen en -bevoegdheden. Voorbeeld:

    GRANT ALL PRIVILEGES ON DATABASE <newdb> TO <db_user>;
    

    Als een gebruiker een tabel 'rol' maakt, behoort de tabel tot die gebruiker. Als een andere gebruiker toegang nodig heeft tot de tabel, moet u bevoegdheden verlenen aan de andere gebruiker op tabelniveau.

    Voorbeeld:

    GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <db_user>;
    
  5. Meld u aan bij uw server, waarbij u de aangewezen database opgeeft met behulp van de nieuwe gebruikersnaam en het nieuwe wachtwoord. In dit voorbeeld ziet u de psql-opdrachtregel. Met deze opdracht wordt u gevraagd om het wachtwoord voor de gebruikersnaam. Vervang uw eigen servernaam, databasenaam en gebruikersnaam.

    psql --host=mydemoserver.postgres.database.azure.com --port=5432 --username=db_user@mydemoserver --dbname=newdb
    

Volgende stappen

Open de firewall voor de IP-adressen van de machines van de nieuwe gebruikers om ze in staat te stellen verbinding te maken: Firewallregels voor Azure Database for PostgreSQL maken en beheren met behulp van Azure Portal of Azure CLI.

Zie de PostgreSQL-productdocumentatie voor databaserollen en -bevoegdheden, GRANT-syntaxis en bevoegdheden voor meer informatie over het beheer van gebruikersaccounts.