sql >> Databáze >  >> RDS >> Oracle

Jak vytvořit uživatele a udělit oprávnění v Oracle

Jako vždy začněte připojením k serveru, kde je hostován Oracle, a poté se připojte k samotnému Oracle jako SYSTEM účet.

SYSTEM account je jedním z mála předdefinovaných administrativních účtů generovaných automaticky při instalaci Oracle. SYSTEM dokáže většinu administrativních úkolů, ale úkol, který nás zvláště zajímá, je správa účtu.

Vytvoření uživatele

Po připojení jako SYSTEM , jednoduše zadejte CREATE USER příkaz k vygenerování nového účtu.

CREATE USER books_admin IDENTIFIED BY MyPassword;

Zde jednoduše vytváříme books_admin účet, který je IDENTIFIED nebo ověřeno zadaným password .

Prohlášení o udělení grantu

S naším novým books_admin vytvořen, můžeme nyní začít přidávat oprávnění k účtu pomocí GRANT prohlášení. GRANT je velmi výkonný příkaz s mnoha možnými možnostmi, ale hlavní funkcí je správa oprávnění obou users a roles v celé databázi.

Poskytování rolí

Obvykle budete nejprve chtít uživateli přidělit oprávnění připojením účtu k různým rolím, počínaje CONNECT role:

GRANT CONNECT TO books_admin;

V některých případech pro vytvoření výkonnějšího uživatele můžete také zvážit přidání RESOURCE role (což uživateli umožňuje vytvářet pojmenované typy pro vlastní schémata) nebo dokonce DBA role, která uživateli umožňuje nejen vytvářet vlastní pojmenované typy, ale také je měnit a ničit.

GRANT CONNECT, RESOURCE, DBA TO books_admin;

Přidělování oprávnění

Dále se budete chtít ujistit, že uživatel má oprávnění skutečně se připojit k databázi a vytvořit relaci pomocí GRANT CREATE SESSION . Také to zkombinujeme se všemi oprávněními pomocí GRANT ANY PRIVILEGE .

GRANT CREATE SESSION GRANT ANY PRIVILEGE TO books_admin;

Musíme také zajistit, aby náš nový uživatel měl v systému přidělený diskový prostor, aby mohl skutečně vytvářet nebo upravovat tabulky a data, takže GRANT TABLESPACE takhle:

GRANT UNLIMITED TABLESPACE TO books_admin;

Oprávnění tabulek

I když to v novějších verzích Oracle není obvykle nutné, některé starší instalace mohou vyžadovat, abyste ručně specifikovali přístupová práva nového uživatele ke konkrétnímu schématu a databázovým tabulkám.

Například pokud chceme našeho books_admin mít možnost provést SELECT , UPDATE , INSERT a DELETE schopnosti v books tabulky, můžeme provést následující GRANT prohlášení:

GRANT
  SELECT,
  INSERT,
  UPDATE,
  DELETE
ON
  schema.books
TO
  books_admin;

Tím zajistíte, že books_admin může provádět čtyři základní příkazy pro books tabulka, která je součástí schema schéma.


  1. Jak monitorovat PostgreSQL běžící uvnitř kontejneru Docker:Část druhá

  2. Top 7 databází

  3. Nejlepší způsoby, jak opravit poškozenou tabulku InnoDB v MySQL

  4. Postgresql -bash:psql:příkaz nenalezen