Dela via


Skapa användare i Azure Database for PostgreSQL – flexibel server

GÄLLER FÖR: Azure Database for PostgreSQL – flexibel server

Den här artikeln beskriver hur du kan skapa användare i en flexibel Azure Database for PostgreSQL-serverinstans.

Anta att du vill lära dig hur du skapar och hanterar Azure-prenumerationsanvändare och deras behörigheter. I så fall kan du gå till artikeln om rollbaserad åtkomstkontroll i Azure (Azure RBAC) eller läsa hur du anpassar roller.

Serveradministratörskontot

När du först skapade azure database for PostgreSQL– flexibel serverinstans angav du ett användarnamn och lösenord för serveradministratören. Mer information finns i snabbstarten för att se den stegvisa metoden. Eftersom serveradministratörens användarnamn är ett anpassat namn kan du hitta det valda serveradministratörsanvändarnamnet från Azure-portalen.

Azure Database for PostgreSQL– flexibel serverinstans skapas med de tre standardrollerna definierade. Du kan se dessa roller genom att köra kommandot: SELECT rolname FROM pg_roles;

  • azure_pg_admin
  • azuresu
  • din serveradministratörsanvändare

Serveradministratörsanvändaren är medlem i den azure_pg_admin rollen. Serveradministratörskontot ingår dock inte i azuresu-rollen. Eftersom den här tjänsten är en hanterad PaaS-tjänst är endast Microsoft en del av superanvändarrollen.

PostgreSQL-motorn använder behörigheter för att styra åtkomsten till databasobjekt, enligt beskrivningen i PostgreSQL-produktdokumentationen. I Azure Database for PostgreSQL – flexibel server beviljas serveradministratörsanvändaren följande behörigheter:

  • Logga in, NOSUPERUSER, INHERIT, CREATEDB, CREATEROLE

Serveradministratörsanvändarkontot kan användas för att skapa fler användare och ge dessa användare rollen azure_pg_admin. Dessutom kan serveradministratörskontot användas för att skapa mindre privilegierade användare och roller som har åtkomst till enskilda databaser och scheman.

Så här skapar du fler administratörsanvändare i Azure Database for PostgreSQL – flexibel server

  1. Hämta anslutningsinformationen och administratörens användarnamn. Du behöver det fullständiga servernamnet och autentiseringsuppgifterna för administratörsinloggning för att ansluta till din flexibla Azure Database for PostgreSQL-serverinstans. Du hittar enkelt servernamnet och inloggningsinformationen från sidan Serveröversikt eller sidan Egenskaper i Azure-portalen.

  2. Använd administratörskontot och lösenordet för att ansluta till din flexibla serverinstans i Azure Database for PostgreSQL. Använd önskat klientverktyg, till exempel pgAdmin eller psql. Om du är osäker på hur du ansluter kan du läsa snabbstarten

  3. Redigera och kör följande SQL-kod. Ersätt ditt nya användarnamn med platshållarvärdet <new_user> och ersätt platshållarlösenordet med ditt eget starka lösenord.

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

Så här skapar du databasanvändare i Azure Database for PostgreSQL – flexibel server

  1. Hämta anslutningsinformationen och administratörens användarnamn. Du behöver det fullständiga servernamnet och autentiseringsuppgifterna för administratörsinloggning för att ansluta till din flexibla Azure Database for PostgreSQL-serverinstans. Du hittar enkelt servernamnet och inloggningsinformationen från sidan Serveröversikt eller sidan Egenskaper i Azure-portalen.

  2. Använd administratörskontot och lösenordet för att ansluta till din flexibla serverinstans i Azure Database for PostgreSQL. Använd önskat klientverktyg, till exempel pgAdmin eller psql.

  3. Redigera och kör följande SQL-kod. Ersätt platshållarvärdet <db_user> med ditt avsedda nya användarnamn och platshållarvärde <newdb> med ditt eget databasnamn. Ersätt platshållarlösenordet med ditt eget starka lösenord.

    Den här SQL-koden nedan skapar en ny databas och skapar sedan en ny användare i Azure Database for PostgreSQL– flexibel serverinstans och ger den användaren behörighet att ansluta till den nya databasen.

    CREATE DATABASE <newdb>;
    
    CREATE USER <db_user> PASSWORD '<StrongPassword!>';
    
    GRANT CONNECT ON DATABASE <newdb> TO <db_user>;
    
  4. Med hjälp av ett administratörskonto kan du behöva bevilja andra behörigheter för att skydda objekten i databasen. Mer information om databasroller och behörigheter finns i PostgreSQL-dokumentationen . Till exempel:

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

    Om en användare skapar en tabell "roll" tillhör tabellen den användaren. Om en annan användare behöver åtkomst till tabellen måste du ge den andra användaren behörighet på tabellnivå.

    Till exempel:

    GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <db_user>;
    
  5. Logga in på servern och ange den avsedda databasen med det nya användarnamnet och lösenordet. Det här exemplet visar psql-kommandoraden. Med det här kommandot uppmanas du att ange lösenordet för användarnamnet. Ersätt ditt eget servernamn, databasnamn och användarnamn.

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

Nästa steg

Öppna brandväggen för IP-adresserna för de nya användarnas datorer så att de kan ansluta: