PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jaka jest różnica między użytkownikiem a rolą?

Poprzednie wersje Postgresa i niektóre inne systemy DB miały oddzielne koncepcje "grup" (które mają dostęp do obiektów bazy danych) i "użytkowników" (którzy mogą się logować i są członkami jednej lub więcej grup).

We współczesnych wersjach Postgresa te dwie koncepcje zostały połączone:„rola” może mieć możliwość logowania, możliwość „dziedziczenia” z innych ról (np. użytkownik będący członkiem grupy lub grupa będąca członkiem innej grupy) i dostęp do obiektów bazy danych.

Dla wygody wiele narzędzi i podręczników określa każdego użytkownika z uprawnieniami do logowania jako „użytkownika” lub „rolę logowania”, a każdego bez „grupy” lub „roli grupowej”, ponieważ przestrzeganie z grubsza tę strukturę. Jest to całkowicie konwencja terminologii i aby zrozumieć uprawnienia, musisz zrozumieć tylko opcje dostępne, gdy tworzenie ról i przyznanie im dostępu .

Ponownie, wyłącznie dla wygody, Postgres nadal akceptuje polecenia używając starej terminologii, takiej jak CREATE USER i CREATE GROUP które są obydwoma aliasami dla CREATE ROLE . Jeśli napiszesz CREATE USER , LOGIN uprawnienia zostaną domyślnie dodane do nowej roli, aby emulować stare zachowanie, gdy było to oddzielne polecenie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Co jest nie tak z tym zapytaniem postgreSQL?

  2. Czy można odpowiedzieć na pytania dotyczące widoku przed pełną materializacją widoku?

  3. Jak to możliwe, że zapytanie SQL i ActiveRecord.find_by_sql zwracają różne wyniki?

  4. Wykonaj surowe zapytanie podczas migracji - Sequelize 3.30

  5. Dynamiczne zapytanie przestawne przy użyciu PostgreSQL 9.3