jak znaleźć użytkowników posiadających rolę dba w Oracle
domyślna rola dba jest automatycznie tworzona podczas instalacji bazy danych Oracle. Ta rola zawiera większość uprawnień systemu bazodanowego. W związku z tym rola DBA powinna być przyznawana jedynie faktycznym administratorom baz danych. Jeśli chcesz wiedzieć, którzy użytkownicy otrzymali rolę dba, musisz zapytać dba_role_privs w schemacie SYS.
rola DBA nie obejmuje uprawnień systemu SYSDBA ani sysoper. Są to specjalne uprawnienia administracyjne, które umożliwiają administratorowi wykonywanie podstawowych zadań administracyjnych, takich jak tworzenie bazy danych oraz uruchamianie i zamykanie instancji.
ta rola mówi beneficjentowi, granted_role, czy ma przyznaną opcję administratora i czy rola jest ich domyślną rolą:
USER_ROLE_PRIVS opisuje role przyznane aktualnemu użytkownikowi.
SQL> desc dba_role_privs
Nazwa Null? Typ
—- — —-
GRANTEE VARCHAR2 (30)
GRANTED_ROLE NOT NULL VARCHAR2 (30)
ADMIN_OPTION VARCHAR2 (3)
DEFAULT_ROLE VARCHAR2(3)
beneficjent: nazwa użytkownika lub roli otrzymującej dotację
——
GRANTED_ROLE: Nazwa przydzielonej roli
———
ADMIN_OPTION: wskazuje, czy dotacja była z opcją ADMIN (tak), czy Nie (Nie)
———
DEFAULT_ROLE: Wskazuje, czy rola jest wyznaczona jako domyślna rola dla użytkownika (tak), czy nie (nie)
za pomocą poniższego zapytania można znaleźć użytkowników posiadających uprawnienia DBA
SQL> select * from dba_role_privs where granted_role='DBA';
GRANTEE GRANTED_ROLE ADM DEF
--------- ------------ --- ---
SYS DBA YES YES
SYSTEM DBA YES YES
istnieje wiele sytuacji, w których chcesz odwołać role dba przyznane użytkownikowi ze względów bezpieczeństwa. Powyższe zapytanie pomoże Ci znaleźć użytkowników posiadających uprawnienia DBA.