Hur man skapar användare i PostgreSQL Använda PgAdmin

⚡ Smart sammanfattning

Skapa en användare i PostgreSQL kan göras visuellt i pgAdmin eller med kommandot CREATE USER i SQL-skalet. Du kan sedan ge behörigheter med GRANT, ändra roller med ALTER USER och ta bort konton med DROP USER.

  • 🖱️ Skapa i pgAdmin: Högerklicka på Inloggning/Grupproller, ange ett namn, ange ett lösenord och behörigheter och spara sedan för att skapa användaren.
  • 💻 CREATE USER-kommando: I SQL-skalet anger CREATE USER name WITH-alternativen inloggning, superanvändare och lösenord i ett och samma kommando.
  • 🔑 Bevilja åtkomst: BEVILJA ALLA PRIVILEGIER PÅ DATABASEN db TILL användaren ger en befintlig användare åtkomst till en databas.
  • 🔧 ÄNDRA ANVÄNDARE: ÄNDRING ANVÄNDARE justerar en rolls behörigheter, lägger till eller återkallar behörigheter som SUPERANVÄNDARE.
  • 🗑️ SLUTA ANVÄNDARE: DROP USER tar bort ett konto, men först efter att det inte längre äger några databasobjekt.
  • 🧾 Roll kontra användare: CREATE USER har standardvärdet LOGIN, medan CREATE ROLE har standardvärdet NOLOGIN; annars är de desamma.

Hur man skapar användare i PostgreSQL Använda PgAdmin

Hur man skapar PostgreSQL Användare i PgAdmin

Följande är en steg-för-steg-process om hur man skapar användare i PostgreSQL PgAdmin:

Steg 1) Högerklicka på Logga in

I det första steget, högerklicka på Logga in grupproll -> Skapa -> Klicka på Logga in grupproll...

Skapa PostgreSQL Användare i PgAdmin

Steg 2) Skapa inloggnings-/grupproll

Ange nu namnet för inloggningen

Skapa PostgreSQL Användare i PgAdmin

Steg 3) Klicka på Definition & Ange detaljer

  1. Skriv in lösenord
  2. Ett utgångsdatum för kontot

Skapa PostgreSQL Användare i PgAdmin

Steg 4) Privilegiumsektionen

  1. Toggle Kan logga in-knappen till YES
  2. Toggle Superanvändare till JA

Skapa PostgreSQL Användare i PgAdmin

Steg 5) Ocuco-landskapet SQL avsnitt

  1. Du kommer att se SQL-frågan för att skapa en användare enligt de val som gjorts i tidigare steg
  2. Klicka på knappen Spara

Skapa PostgreSQL Användare i PgAdmin

Steg 6) Roll skapas

Nu återspeglas Roll i objektträdet.

Skapa PostgreSQL Användare i PgAdmin

Steg 7) Skapa en Databas

Tilldela nu ägare myguru till det som visas i nedan skapa användar Postgres exempel.

Skapa PostgreSQL Användare i PgAdmin

Steg 8) Kommandoraden

Nu kan du se att ägaren är myguru.

Skapa PostgreSQL Användare i PgAdmin

PostgreSQL Skapa en användare SQLShell (kommandorad)

Du kan skapa en användare genom att använda kommandoradskommandot

SKAPA ANVÄNDARE

Denna Postgres skapa användare med lösenord metod är mer bekväm för programmerare och administratörer eftersom de har tillgång till konsolen för PostgreSQL server. Dessutom behöver de Postgres-användare skapande och exekvera med ett enda kommando istället för att logga in och använda gränssnittet för PostgreSQL kunden.

Syntax:

CREATE USER name [ WITH ] option [ ... ]

where option can be:

      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 [, ...]
    | IN GROUP role_name [, ...]
    | ROLE role_name [, ...]
    | ADMIN role_name [, ...]
    | USER role_name [, ...]
    | SYSID uid

Exempel:

CREATE USER tom;

kommer att skapa en användare tom

CREATE USER tom WITH SUPERUSER;

Skapar en användar-tom med superanvändarbehörighet. Låt oss se följande exempel.

Steg 1) Vi skapar en superanvändare som är giltig till 3rd April 2025 11:50:38 IST. Ange följande kommando

CREATE USER mytest WITH
	LOGIN
	SUPERUSER
	CREATEDB
	CREATEROLE
	INHERIT
	NOREPLICATION
	CONNECTION LIMIT -1
	VALID UNTIL '2025-04-03T11:50:38+05:30'
	PASSWORD '123456';

Skapa ett SQLShell för användare

Steg 2) Ange kommandot \du i checklistan över användare

Skapa ett SQLShell för användare

OBS: CREATE USER är samma som CREATE ROLE-kommandot. Skillnaden mellan de två kommandona är att när Postgres CREATE user-kommandot skrivs är det som standard i LOGIN-tillstånd medan NOLOGIN antas när CREATE ROLE-alternativet används.

Lägg till en befintlig användare till en databas

Du kan ge en användare behörighet att komma åt en databas.

Exempelvis ger vi användaren "mytest" alla privilegier på user guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Lägg till en befintlig användare till en databas

Efter utförandet av PostgreSQL lägga till användarkommando, kommer användaren att kunna komma åt databasen med de givna behörigheterna.

Kommandot GRANT är mycket kraftfullt. Du kan ge granulära privilegier som Välj, Infoga, Uppdatera till en användare.

PostgreSQL Uppdaterar USER

Ändra befintliga användarbehörigheter

Nu när vår nya användare "mytest" finns kan du använda ALTER USER för att ändra behörigheterna som beviljas bibliotekarien.

Formatet för ALTER USER Postgres inkluderar namnet på användaren följt av några alternativ att berätta PostgreSQL vilka tillåtande ändringar att göra:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Revoking Behörigheter

Du måste använda detta kommando när du gör ett misstag och felaktigt tilldelar behörighet som du kanske vill återkalla. Du kan använda kommandot ALTER USER utan prefix före de tillåtande alternativen.

Till exempel kan vi ta bort SUPERANVÄNDARE-statusen från mytest som:

ALTER USER mytest WITH NOSUPERUSER;

Genom att använda \du kommer du att se att Superuser-privilegiet tas bort.

Revoking Behörigheter

Tilldela behörighet

Du kan använda användarens SUPERUSER-behörighet tillbaka "mytest" med följande kommando

ALTER USER mytest WITH SUPERUSER;

Genom att använda \du kommer du att se att Superuser-privilegiet läggs till.

Tilldela behörighet

PostgreSQL Tar bort användare

Du kan använda radera vilken användare som helst om du är säker på att den specifika användaren inte längre är för din databas. Observera att radering av användarna aldrig kommer att påverka den faktiska databasen.

Syntax: DROP USER [user]

För att ta bort en användare måste du se till att användaren är ägare till databasen. Annars kan du få ett felmeddelande.

ERROR:  role "username" cannot be dropped because some objects depend on it

Exempel:

  1. Kontot "myguru" är ägare till databasen "demoDB."
  2. Ange kommandot DROP USER myguru
  3. Fel visas

PostgreSQL Tar bort användare

När vi byter databasägare kan användaren tas bort

PostgreSQL Tar bort användare

Fusklapp

Här är viktiga kommandon

Kommandon BESKRIVNING
CREATE USER [user]
Kommando för att skapa en användare
ALTER USER role_specification
Ändra befintliga användarbehörigheter
ALTER USER [user]
Revoking Behörigheter
ALTER USER [user name] WITH SUPERUSER
Tilldela behörighet
DROP USER [user]
Kommando för att ta bort en användare

Vanliga frågor

I psql-skalet kör du kommandot \du för att lista alla roller och deras attribut. Du kan också fråga systemkatalogen med SELECT rolname FROM pg_roles för att få samma information programmatiskt.

Använd ALTER USER, till exempel ALTER USER mytest WITH PASSWORD 'nyttlösenord'. Ändringen träder i kraft omedelbart. Lösenord lagras krypterade, och endast superanvändare eller användaren själv kan ändra dem.

In PostgreSQL, användare och roller är samma objekt. CREATE USER skapar en roll som kan logga in som standard, medan CREATE ROLE skapar en som inte kan logga in om du inte lägger till attributet LOGIN.

AI kan generera CREATE USER-, GRANT- och ALTER USER-satser från en enkel beskrivning av den åtkomst du behöver, och förklara varje privilegium. Detta hjälper dig att tillämpa säkerhet med lägsta privilegium utan att memorera syntax.

Ja. AI kan föreslå detaljerade GRANT-kommandon som endast ger de nödvändiga behörigheterna, varna för att bevilja bred superanvändaråtkomst och rekommendera att använda roller för att gruppera behörigheter för enklare och säkrare hantering.

Sammanfatta detta inlägg med: