Kako stvoriti korisnika u PostgreSQL Korištenje PgAdmina

⚡ Pametni sažetak

Stvaranje korisnika u PostgreSQL može se vizualno napraviti u pgAdminu ili naredbom CREATE USER u SQL Shellu. Zatim možete dodijeliti privilegije s naredbom GRANT, mijenjati uloge s naredbom ALTER USER i uklanjati račune s naredbom DROP USER.

  • 🖱️ Kreiraj u pgAdminu: Desnom tipkom miša kliknite Prijava/Grupne uloge, unesite ime, postavite lozinku i privilegije, a zatim spremite da biste stvorili korisnika.
  • 💻 Naredba CREATE USER: U SQL Shellu, opcije CREATE USER name WITH postavljaju prijavu, superkorisnika i lozinku u jednoj naredbi.
  • 🔑 Odobrenje pristupa: DODJELI SVE PRIVILEGIJE NA BAZU PODATAKA korisniku daje postojećem korisniku pristup bazi podataka.
  • 🔧 PROMIJENI KORISNIKA: Naredba ALTER USER prilagođava dopuštenja uloge, dodajući ili oduzimajući privilegije poput SUPERUSER.
  • 🗑️ ISPUSTI KORISNIKA: DROP USER uklanja račun, ali tek nakon što više ne posjeduje nijedan objekt baze podataka.
  • 🧾 Uloga u odnosu na korisnika: CREATE USER (STVORI KORISNIKA) ima zadane postavke PRIJAVA, dok CREATE ROLE ima zadane postavke NOLOGIN (BEZ PRIJAVE); inače su isti.

Kako stvoriti korisnika u PostgreSQL Korištenje PgAdmina

Kako stvoriti PostgreSQL Korisnik u PgAdmin-u

Slijedi korak po korak postupak stvaranja korisnika PostgreSQL PGAdmin:

Korak 1) Desni klik na Prijava

U prvom koraku desnom tipkom miša kliknite Uloga grupe za prijavu -> Stvori -> Kliknite Uloga grupe za prijavu…

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 2) Stvorite prijavu/grupnu ulogu

Sada unesite ime za prijavu

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 3) Kliknite na Definicija i unesite pojedinosti

  1. Upišite lozinku
  2. Datum isteka za račun

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 4) Odjeljak Privilege

  1. Toggle Mogu se prijaviti gumb na DA
  2. Toggle Superkorisnik na DA

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 5) The SQL odjeljak

  1. Vidjet ćete SQL upit za stvaranje korisnika prema odabirima u prethodnim koracima
  2. Pritisnite gumb Spremi

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 6) Uloga je stvorena

Sada se uloga odražava u stablu objekata.

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 7) Napravite Baza podataka

Sada mu dodijelite vlasnika myguru kao što je prikazano u donjem primjeru stvaranja korisnika Postgres.

stvoriti PostgreSQL Korisnik u PgAdmin-u

Korak 8) Naredbeni redak

Sada možete vidjeti da je vlasnik myguru.

stvoriti PostgreSQL Korisnik u PgAdmin-u

PostgreSQL Stvorite korisnički SQLShell (naredbeni redak)

Možete stvoriti korisnika pomoću naredbe naredbenog retka

STVORI KORISNIKA

Ova Postgresova metoda stvaranja korisnika s lozinkom prikladnija je za programere i administratore jer imaju pristup konzoli PostgreSQL poslužitelj. Štoviše, potrebno im je kreiranje korisnika u Postgresu i izvršavanje s jednom naredbom umjesto prijave i korištenja sučelja PostgreSQL kupac.

Sintaksa:

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

Primjer:

CREATE USER tom;

stvorit će korisnika tom

CREATE USER tom WITH SUPERUSER;

Kreirat ćemo korisnika tom s privilegijama superkorisnika. Pogledajmo sljedeći primjer.

Korak 1) Stvaramo superkorisnika koji vrijedi do 3rd Travanj 2025. 11:50:38 IST. Unesite sljedeću naredbu

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

Stvorite korisnički SQLShell

Korak 2) Unesite naredbu \du u popis korisnika

Stvorite korisnički SQLShell

NAPOMENA: Naredba CREATE USER je ista kao i naredba CREATE ROLE. Razlika između dvije naredbe je u tome što je, kada se naredba Postgres CREATE user zapiše, prema zadanim postavkama u stanju LOGIN, dok se kada se koristi opcija CREATE ROLE, pretpostavlja stanje NOLOGIN.

Dodajte postojećeg korisnika u bazu podataka

Korisniku možete dodijeliti privilegije za pristup bazi podataka.

Na primjer, korisniku “mytest” dodjeljujemo sve privilegije za korisnika guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Dodajte postojećeg korisnika u bazu podataka

Nakon izvršenja PostgreSQL add user naredba, korisnik će moći pristupiti bazi podataka s danim dopuštenjima.

Naredba GRANT je vrlo moćna. Korisniku možete dati detaljne privilegije kao što su odabir, umetanje, ažuriranje.

PostgreSQL Ažuriranje USER

Promjena postojećih korisničkih dopuštenja

Sada kada postoji naš novi korisnik “mytest” možete koristiti ALTER USER za promjenu dopuštenja dodijeljenih knjižničaru.

Format ALTER USER Postgres uključuje ime korisnika praćeno nekim opcijama koje treba reći PostgreSQL koje dopuštene izmjene napraviti:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Revoking Dozvole

Morate upotrijebiti ovu naredbu kada pogriješite i pogrešno dodijelite dozvolu koju možda želite opozvati. Možete koristiti naredbu ALTER USER bez prefiksa prije permisivnih opcija.

Na primjer, možemo ukloniti status SUPERUSER iz mytesta kao što je:

ALTER USER mytest WITH NOSUPERUSER;

Korištenjem \du primijetit ćete da je privilegija superkorisnika uklonjena.

Revoking Dozvole

Dodjeljivanje dopuštenja

Možete koristiti dopuštenje korisnika SUPERUSER natrag na “mytest” pomoću sljedeće naredbe

ALTER USER mytest WITH SUPERUSER;

Koristeći \du, primijetit ćete da je privilegija superkorisnika dodana.

Dodjeljivanje dopuštenja

PostgreSQL Brisanje korisnika

Možete upotrijebiti brisanje bilo kojeg korisnika ako ste sigurni da određeni korisnik više nije za vašu bazu podataka. Imajte na umu da brisanje korisnika nikada neće utjecati na stvarnu bazu podataka.

Syntax: DROP USER [user]

Da biste izbrisali bilo kojeg korisnika, morate biti sigurni da je korisnik vlasnik baze podataka. U suprotnom možete primiti poruku o pogrešci.

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

Primjer:

  1. Račun “myguru” je vlasnik baze podataka “demoDB.”
  2. Unesite naredbu DROP USER myguru
  3. Prikazuje se pogreška

PostgreSQL Brisanje korisnika

Nakon što promijenimo vlasnika baze podataka, korisnik se može izbrisati

PostgreSQL Brisanje korisnika

Cheat Sheet

Ovdje su važne naredbe

Naredbe Description
CREATE USER [user]
Naredba za stvaranje korisnika
ALTER USER role_specification
Promjena postojećih korisničkih dopuštenja
ALTER USER [user]
Revoking Dozvole
ALTER USER [user name] WITH SUPERUSER
Dodjeljivanje dopuštenja
DROP USER [user]
Naredba za brisanje korisnika

Pitanja i odgovori

U psql ljusci pokrenite naredbu \du za popis svih uloga i njihovih atributa. Također možete upitati sistemski katalog s SELECT rolname FROM pg_roles za dobivanje istih informacija programski.

Koristite ALTER USER, na primjer ALTER USER mytest WITH PASSWORD 'newpassword'. Promjena stupa na snagu odmah. Lozinke se pohranjuju šifrirane i mogu ih mijenjati samo superkorisnici ili sam korisnik.

In PostgreSQL, korisnici i uloge su isti objekt. CREATE USER stvara ulogu koja se može prijaviti prema zadanim postavkama, dok CREATE ROLE stvara onu koja se ne može prijaviti osim ako ne dodate atribut LOGIN.

Umjetna inteligencija može generirati naredbe CREATE USER, GRANT i ALTER USER iz jednostavnog opisa pristupa koji vam je potreban i objasniti svaku privilegiju. To vam pomaže primijeniti sigurnost s najmanjim privilegijama bez pamćenja sintakse.

Da. Umjetna inteligencija može predložiti detaljne GRANT naredbe koje daju samo potrebne privilegije, upozoriti na dodjeljivanje širokog pristupa superkorisniku i preporučiti korištenje uloga za grupiranje dozvola radi lakšeg i sigurnijeg upravljanja.

Sažmite ovu objavu uz: