Cum se creează un utilizator în PostgreSQL Utilizarea PgAdmin

⚡ Rezumat inteligent

Crearea unui utilizator în PostgreSQL se poate face vizual în pgAdmin sau cu comanda CREATE USER din SQL Shell. Apoi puteți acorda privilegii cu GRANT, modifica roluri cu ALTER USER și elimina conturi cu DROP USER.

  • 🖱️ Creați în pgAdmin: Faceți clic dreapta pe Roluri de conectare/grup, introduceți un nume, setați o parolă și privilegii, apoi salvați pentru a crea utilizatorul.
  • 💻 Comandă CREATE USER: În shell-ul SQL, opțiunile CREATE USER name WITH setează datele de utilizator, superutilizatorul și parola într-o singură comandă.
  • 🔑 Acordați acces: ACORDĂ TOATE PRIVILEGIILE ASUPRA BAZEI DE DATE db utilizatorului oferă unui utilizator existent acces la o bază de date.
  • 🔧 ALTER UTILIZATOR: ALTER USER ajustează permisiunile unui rol, adăugând sau revocând privilegii precum SUPERUSER.
  • 🗑️ LIMITAȚI UTILIZATOR: Funcția DROP USER elimină un cont, dar numai după ce acesta nu mai deține niciun obiect din baza de date.
  • 🧾 Rol vs. Utilizator: CREATE USER are implicit valoarea LOGIN, în timp ce CREATE ROLE are implicit valoarea NOLOGIN; în rest, sunt la fel.

Cum se creează un utilizator în PostgreSQL Utilizarea PgAdmin

Cum se creează PostgreSQL Utilizator în PgAdmin

Următorul este un proces pas cu pas despre cum să creați un utilizator în PostgreSQL PgAdmin:

Pas 1) Faceți clic dreapta pe Logare

În primul pas, faceți clic dreapta pe Rol de grup de autentificare -> Creare -> Faceți clic pe Rol de grup de autentificare...

Crează PostgreSQL Utilizator în PgAdmin

Pas 2) Creați autentificare/rol de grup

Acum, introduceți numele pentru autentificare

Crează PostgreSQL Utilizator în PgAdmin

Pas 3) Faceți clic pe Definiție și introduceți detalii

  1. Introdu parola
  2. O dată de expirare a contului

Crează PostgreSQL Utilizator în PgAdmin

Pas 4) Secțiunea Privilegi

  1. Toggle Butonul se poate autentifica la YES
  2. Toggle Superutilizator la DA

Crează PostgreSQL Utilizator în PgAdmin

Pas 5) SQL secțiune

  1. Veți vedea interogarea SQL pentru a crea un utilizator conform selecțiilor făcute în pașii anteriori
  2. Faceți clic pe butonul Salvare

Crează PostgreSQL Utilizator în PgAdmin

Pas 6) Rolul este creat

Acum, Rolul este reflectat în arborele de obiecte.

Crează PostgreSQL Utilizator în PgAdmin

Pas 7) Crearea unei Baza de date

Acum, atribuiți proprietarul myguru, așa cum se arată în exemplul de creare a utilizatorului Postgres de mai jos.

Crează PostgreSQL Utilizator în PgAdmin

Pas 8) Linia de comandă

Acum, puteți vedea că proprietarul este myguru.

Crează PostgreSQL Utilizator în PgAdmin

PostgreSQL Creați un utilizator SQLShell (linie de comandă)

Puteți crea un utilizator utilizând comanda din linia de comandă

CREAZA UTILIZATOR

Această metodă de creare a utilizatorului cu parolă Postgres este mai convenabilă pentru programatori și administratori, deoarece au acces la consola PostgreSQL Server. Mai mult, au nevoie pentru crearea de utilizatori Postgres și executarea cu o singură comandă în loc de autentificare și utilizarea interfeței PostgreSQL de client.

Sintaxă:

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

Exemplu:

CREATE USER tom;

va crea un utilizator tom

CREATE USER tom WITH SUPERUSER;

Va crea un utilizator tom cu privilegii de superutilizator. Să vedem următorul exemplu.

Pas 1) Creăm un superutilizator valabil până la 3rd Aprilie 2025, ora 11:50:38 IST. Introduceți următoarea comandă

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

Creați un utilizator SQLShell

Pas 2) Introdu comanda \du în lista de verificare a utilizatorilor

Creați un utilizator SQLShell

NOTĂ: Comanda CREATE USER este identică cu comanda CREATE ROLE. Diferența dintre cele două comenzi constă în faptul că atunci când comanda CREATE user din Postgres este scrisă, aceasta este implicit în starea LOGIN, în timp ce NOLOGIN este presupus atunci când este utilizată opțiunea CREATE ROLE.

Adăugați un utilizator existent la o bază de date

Puteți acorda unui utilizator privilegii pentru a accesa o bază de date.

De exemplu, acordăm utilizatorului „mytest” toate privilegiile utilizatorului guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Adăugați un utilizator existent la o bază de date

După executarea PostgreSQL add user command, utilizatorul va putea accesa baza de date cu permisiunile date.

Comanda GRANT este foarte puternică. Puteți acorda privilegii granulare precum Selectare, Inserare, Actualizare unui utilizator.

PostgreSQL Se actualizează USER

Modificarea permisiunilor de utilizator existente

Acum că noul nostru utilizator „testul meu” există, puteți folosi ALTER USER pentru a modifica permisiunile acordate bibliotecarului.

Formatul ALTER USER Postgres include numele utilizatorului urmat de câteva opțiuni de spus PostgreSQL ce modificări permisive trebuie făcute:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Revpermisiuni ok

Trebuie să utilizați această comandă atunci când faceți o greșeală și atribuiți greșit permisiunea pe care poate doriți să o revocați. Puteți utiliza comanda ALTER USER fără prefix înainte de opțiunile permisive.

De exemplu, putem elimina starea SUPERUSER din mytest, cum ar fi:

ALTER USER mytest WITH NOSUPERUSER;

Folosind \du, veți observa că privilegiul de Superutilizator este eliminat.

Revpermisiuni ok

Atribuirea permisiunii

Puteți utiliza permisiunea utilizatorului SUPERUSER înapoi „testul meu” folosind următoarea comandă

ALTER USER mytest WITH SUPERUSER;

Folosind \du, veți observa că este adăugat privilegiul de Superutilizator.

Atribuirea permisiunii

PostgreSQL Ștergerea utilizatorului

Puteți folosi ștergeți orice utilizator dacă sunteți sigur că utilizatorul respectiv nu mai este pentru baza de date. Rețineți că ștergerea utilizatorilor nu va afecta niciodată baza de date reală.

Syntax: DROP USER [user]

Pentru a șterge orice utilizator, trebuie să vă asigurați că utilizatorul este proprietarul bazei de date. În caz contrar, este posibil să primiți un mesaj de eroare.

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

Exemplu:

  1. Contul „myguru” este proprietarul bazei de date „demoDB”.
  2. Introdu comanda DROP USER myguru
  3. Este afișată eroarea

PostgreSQL Ștergerea utilizatorului

Odată ce schimbăm proprietarul bazei de date, utilizatorul poate fi șters

PostgreSQL Ștergerea utilizatorului

Cheat Sheet

Iată comenzi importante

Comenzi Descriere
CREATE USER [user]
Comanda pentru a crea un utilizator
ALTER USER role_specification
Modificarea permisiunilor de utilizator existente
ALTER USER [user]
Revpermisiuni ok
ALTER USER [user name] WITH SUPERUSER
Atribuirea permisiunii
DROP USER [user]
Comandă pentru ștergerea unui utilizator

Întrebări frecvente

În shell-ul psql, executați comanda \du pentru a lista toate rolurile și atributele acestora. De asemenea, puteți interoga catalogul de sistem cu SELECT rolname FROM pg_roles pentru a obține aceleași informații programatic.

Folosește ALTER USER, de exemplu ALTER USER mytest WITH PASSWORD 'newpassword'. Modificarea are efect imediat. Parolele sunt stocate criptate și numai superutilizatorii sau utilizatorul însuși le pot schimba.

In PostgreSQL, utilizatorii și rolurile sunt același obiect. CREATE USER creează un rol care se poate conecta în mod implicit, în timp ce CREATE ROLE creează unul care nu se poate conecta decât dacă adăugați atributul LOGIN.

Inteligența artificială poate genera instrucțiuni CREATE USER, GRANT și ALTER USER dintr-o descriere simplă a accesului de care aveți nevoie și poate explica fiecare privilegiu. Acest lucru vă ajută să aplicați securitatea cu privilegii minime fără a memora sintaxa.

Da. Inteligența artificială poate sugera comenzi GRANT granulare care oferă doar privilegiile necesare, avertizează împotriva acordării accesului extins de superutilizator și recomandă utilizarea rolurilor pentru a grupa permisiunile, pentru o gestionare mai ușoară și mai sigură.

Rezumați această postare cu: