Gebruikers beheren in Azure HorizonDB (preview)

In dit artikel wordt beschreven hoe u gebruikers maakt in een Azure HorizonDB-cluster.

Raadpleeg het artikel Op rollen gebaseerd toegangsbeheer in Azure (Azure RBAC) of bekijk hoe u rollen kunt aanpassen om te lezen hoe u gebruikers van Azure-abonnementen en hun machtigingen kunt maken en beheren.

Het beheerdersaccount van de server

Wanneer u uw Azure HorizonDB-cluster voor het eerst maakt, geeft u een verificatienaam en wachtwoord voor de clusterbeheerder op. Zie Een Azure HorizonDB-cluster maken voor meer informatie en een stapsgewijze aanpak. Omdat de verificatienaam van de clusterbeheerder een aangepaste naam is, kunt u de gebruikersnaam van de gekozen serverbeheerder vinden in de Azure-portal.

Het Azure HorizonDB-cluster wordt gemaakt met drie standaardrollen. U kunt deze rollen zien door de opdracht uit te voeren: SELECT rolname FROM pg_roles;

  • azure_pg_admin
  • azuresu
  • uw serverbeheerder

Uw beheerdersverificatie is lid van de azure_pg_admin rol. Het beheerdersaccount maakt echter geen deel uit van de azuresu rol. 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 HorizonDB krijgt de gebruiker van de serverbeheerder deze bevoegdheden: LOGIN, NOSUPERUSER, INHERIT, CREATEDB en CREATEROLE.

De authenticatie van de clusterbeheerder kan meer gebruikers aanmaken en deze gebruikers de azure_pg_admin-rol toekennen. Daarnaast kan de verificatie van de clusterbeheerder minder bevoorrechte gebruikers en rollen maken die toegang hebben tot afzonderlijke databases en schema's.

Meer beheerdergebruikers aanmaken in Azure HorizonDB

  1. Haal de verbindingsgegevens en de gebruikersnaam van de beheerder op. U hebt de volledige servernaam en aanmeldingsreferenties van de beheerder nodig om verbinding te maken met uw Azure HorizonDB-cluster. 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 Azure HorizonDB-cluster. Gebruik het clienthulpprogramma van uw voorkeur, zoals pgAdmin of psql. Als u niet zeker weet hoe u verbinding maakt, raadpleegt u Maak een Azure HorizonDB-cluster.

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

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

Databasegebruikers maken in Azure HorizonDB

Note

Voeg geen persoonlijke, gevoelige of vertrouwelijke informatie toe aan resourcenamen (bijvoorbeeld tabelnaam, databasenaam) en resource tags. De gegevens die je in deze velden invoert worden niet als klantgegevens beschouwd.

  1. Haal de verbindingsgegevens en de gebruikersnaam van de beheerder op. U hebt de volledige servernaam en aanmeldingsreferenties van de beheerder nodig om verbinding te maken met uw Azure HorizonDB-cluster. 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 Azure HorizonDB-cluster. Gebruik het clienthulpprogramma van uw voorkeur, zoals PostgreSQL voor Visual Studio Code, pgAdmin of psql.

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

    Met deze SQL-code maakt u een nieuwe database en maakt u vervolgens een nieuwe gebruiker in het Azure HorizonDB-cluster en verleent u verbindingsrechten met 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 andere 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="{clustername}.{clusteridentifier}.{region}.horizondb.azure.com" --port=5432 --username=db_user --dbname=newdb