Skip to content

Archives

  • ianuarie 2022
  • decembrie 2021
  • noiembrie 2021
  • octombrie 2021
  • septembrie 2021

Categories

  • Nicio categorie
Trend RepositoryArticles and guides
Articles

Capitolul 18. Roluri și privilegii ale bazei de date

On octombrie 25, 2021 by admin

Rolurile bazei de date sunt, din punct de vedere conceptual, complet separate de utilizatorii sistemului de operare. În practică, ar putea fi convenabil să se mențină o corespondență, dar acest lucru nu este necesar. Rolurile bazelor de date sunt globale în întreaga instalare a unui cluster de baze de date (și nu pentru fiecare bază de date în parte). Pentru a crea un rol, utilizați comanda CREATE ROLE SQL:

CREATE ROLE name;

numele respectă regulile pentru identificatorii SQL: fie neornamentat, fără caractere speciale, fie între ghilimele duble. (În practică, veți dori, de obicei, să adăugați la comandă opțiuni suplimentare, cum ar fi LOGIN. Mai multe detalii apar mai jos). Pentru a elimina un rol existent, utilizați comanda analogă DROP ROLE:

DROP ROLE name;

Pentru comoditate, programele createuser și dropuser sunt furnizate ca învelișuri în jurul acestor comenzi SQL care pot fi apelate din linia de comandă shell:

createuser namedropuser name

Pentru a determina setul de roluri existente, examinați catalogul de sistem pg_roles, de exemplu

SELECT rolname FROM pg_roles;

Metacomanda \du a programului psql este, de asemenea, utilă pentru a lista rolurile existente.

Pentru a boota sistemul de baze de date, un sistem proaspăt inițializat conține întotdeauna un rol predefinit. Acest rol este întotdeauna un „superutilizator” și, în mod implicit (dacă nu este modificat la rularea initdb), va avea același nume ca și utilizatorul sistemului de operare care a inițializat clusterul de baze de date. În mod obișnuit, acest rol se va numi postgres. Pentru a crea mai multe roluri, trebuie mai întâi să vă conectați ca acest rol inițial.

Care conexiune la serverul de baze de date se face în numele unui anumit rol, iar acest rol determină privilegiile inițiale de acces pentru comenzile emise pe acea conexiune. Numele rolului care trebuie utilizat pentru o anumită conexiune la baza de date este indicat de clientul care inițiază cererea de conexiune într-un mod specific aplicației. De exemplu, programul psql utilizează opțiunea de linie de comandă -U pentru a indica rolul cu care trebuie să se conecteze. Multe aplicații presupun în mod implicit numele utilizatorului curent al sistemului de operare (inclusiv createuser și psql). Prin urmare, este adesea convenabil să se mențină o corespondență de denumire între roluri și utilizatorii sistemului de operare.

Setul de roluri ale bazei de date cu care se poate conecta o anumită conexiune client este determinat de configurația de autentificare a clientului, așa cum se explică în capitolul 20. (Astfel, un client nu este neapărat limitat să se conecteze ca rol cu același nume ca și utilizatorul său din sistemul de operare, la fel cum numele de logare al unei persoane nu trebuie să corespundă neapărat cu numele său real). Deoarece identitatea rolului determină setul de privilegii disponibile pentru un client conectat, este important să configurați cu atenție acest lucru atunci când configurați un mediu multiutilizator.

.

Lasă un răspuns Anulează răspunsul

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Arhive

  • ianuarie 2022
  • decembrie 2021
  • noiembrie 2021
  • octombrie 2021
  • septembrie 2021

Meta

  • Autentificare
  • Flux intrări
  • Flux comentarii
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress