Create User in PostgreSQL: How to Add, Alt & Smazat USER?

Obsah:

Anonim

V tomto výukovém programu se naučíte

  • PostgreSQL Vytvořit uživatele v PgAdmin
  • PostgreSQL Vytvořit uživatele SQLShell (příkazový řádek)
  • Přidejte existujícího uživatele do databáze
  • Aktualizace PostgreSQL UŽIVATELE
  • Uživatel PostgreSQL mazání
  • Tahák

PostgreSQL Vytvořit uživatele v PgAdmin

Následuje postup krok za krokem, jak vytvořit uživatele v PostgreSQL PgAdmin:

Krok 1) Klikněte pravým tlačítkem na Role přihlášení / skupiny -> Vytvořit -> Klikněte na Role přihlášení / skupiny

Krok 2) Zadejte název pro přihlášení

Krok 3) V podokně definice

  1. Zadejte heslo
  2. Datum vypršení platnosti účtu

Krok 4) V sekci oprávnění,

  1. Přepněte tlačítko Může se přihlásit na ANO
  2. Přepnout superuživatele na ANO

Krok 5) V sekci SQL

  1. Zobrazí se dotaz SQL k vytvoření uživatele podle výběru provedeného v předchozích krocích
  2. Klikněte na tlačítko Uložit

Krok 6) Role je vytvořena a promítnuta do stromu objektů

Krok 7) Vytvořte databázi a přiřaďte jí vlastníka myguru, jak je uvedeno níže, vytvořte příklad uživatele Postgres

Krok 8) V příkazovém řádku můžete vidět, že majitel je „myguru“

PostgreSQL Vytvořit uživatele SQLShell (příkazový řádek)

Uživatele můžete vytvořit pomocí příkazu z příkazového řádku

VYTVOŘIT UŽIVATELE

V PostgreSQL je vytvoření uživatelské metody PostgreSQL pohodlnější pro programátory a administrátory, protože mají přístup ke konzole serveru PostgreSQL. Kromě toho potřebují vytvoření uživatele Postgres a spuštění pomocí jediného příkazu namísto přihlášení a používání rozhraní klienta PostgreSQL.

Syntax:CREATE USER name WITH optionwhere the option can be:|SUPERUSER | NOSUPERUSER| CREATEROLE | NOCREATEROLE| CREATEDB | NOCREATEDB| INHERIT | NOINHERIT| LOGIN | NOLOGIN| REPLICATION | NOREPLICATION| BYPASSRLS | NOBYPASSRLS| CONNECTION LIMIT| ( ENCRYPTED ] PASSWORD 'password.'| VALID UNTIL 'timestamp1| IN ROLE role_name [,… J| IN GROUP role_name [,… ]| ROLE role_name [,… ]| ADMIN role_name [,… )| USER role_name [,… ]| SYSID uid

Příklad:

CREATE USER tom;

vytvoří uživatele tom

CREATE USER tom WITH SUPERUSER;

Vytvoří uživatele s oprávněním superuživatele. Podívejme se na následující příklad.

Krok 1) Vytváříme superuživatele platný do 3 rd Apri 2025 11:50:38 IST. Zadejte následující příkaz

CREATE USER mytest WITHLOGINSUPERUSERCREATEDBCREATEROLEINHERITNOREPLICATIONCONNECTION LIMIT -1VALID UNTIL '2025-04-03T11:50:38+05:30'PASSWORD '123456';

Krok 2) Zadejte příkaz \ du do kontrolního seznamu uživatelů

POZNÁMKA: CREATE USER je stejný jako příkaz CREATE ROLE. Rozdíl mezi těmito dvěma příkazy spočívá v tom, že když je napsán uživatelský příkaz Postgres CREATE, je ve výchozím nastavení ve stavu PŘIHLÁŠENÍ, zatímco NOLOGIN se předpokládá, když se použije možnost KRETE ROLE.

Přidejte existujícího uživatele do databáze

Uživateli můžete udělit oprávnění pro přístup k databázi.

Příklad, udělujeme uživateli „mytest“ všechna oprávnění pro uživatele guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Po provedení příkazu PostgreSQL add user bude mít uživatel přístup k databázi s danými oprávněními.

Příkaz GRANT je velmi silný. Uživateli můžete udělit podrobná oprávnění jako Vybrat, Vložit, Aktualizovat.

Aktualizace PostgreSQL UŽIVATELE

Změna stávajících uživatelských oprávnění

Nyní, když existuje náš nový uživatel „mytest“, můžete použít ALTER USER ke změně oprávnění udělených knihovníkovi.

Formát ALTER USER Postgres zahrnuje jméno uživatele, po kterém následují některé možnosti, jak sdělit PostgreSQL, jaké přípustné změny mají provést:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Odvolání oprávnění

Tento příkaz musíte použít, když uděláte chybu a nesprávně přiřadíte oprávnění, které možná budete chtít odvolat. Před povolenými možnostmi můžete použít příkaz ALTER USER bez předpony.

Například můžeme z mytestu odebrat status SUPERUSER jako:

ALTER USER mytest WITH NOSUPERUSER;

Pomocí \ du zjistíte, že oprávnění Superuser bylo odebráno.

Přiřazení oprávnění

Oprávnění uživatele SUPERUSER můžete použít zpět „mytest“ pomocí následujícího příkazu

ALTER USER mytest WITH SUPERUSER;

Pomocí \ du zjistíte, že je přidáno oprávnění superuživatele.

Uživatel PostgreSQL mazání

Pokud jste si jisti, že konkrétní uživatel již pro vaši databázi není, můžete použít odstranění libovolného uživatele. Upozorňujeme, že odstranění uživatelů nikdy neovlivní skutečnou databázi.

Syntax: DROP USER [user]

Chcete-li odstranit libovolného uživatele, musíte se ujistit, že je vlastníkem databáze. Jinak se může zobrazit chybová zpráva.

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

Příklad:

  1. Účet „myguru“ je vlastníkem databáze „demoDB“.
  2. Zadejte příkaz DROP USER myguru
  3. Chyba je zobrazena

Jakmile změníme vlastníka databáze, může být uživatel smazán

Tahák

Zde jsou důležité příkazy

Příkazy Popis
CREATE USER [user]

Příkaz k vytvoření uživatele

ALTER USER role_specification

Změna stávajících uživatelských oprávnění

ALTER USER [user]

Odvolání oprávnění

ALTER USER [user name] WITH SUPERUSER

Přiřazení oprávnění

DROP USER [user]

Příkaz k odstranění uživatele