Będziemy publikować informacje o dostępie i bezpieczeństwie użytkownika w bazie danych Oracle. Ten post zawiera dobre informacje na temat Utwórz użytkownika w Oracle, Uprawnieniach systemowych i Uprawnieniach obiektów Oracle, Jak przyznać uprawnienia użytkownikom, Jak wyświetlić wszystkie uprawnienia użytkownika w Oracle
Oświadczenie CREATE USER
Służy do tworzenia użytkownika (schematu).
Domyślnym uwierzytelnianiem dla nowego użytkownika jest baza danych. Użytkownik otrzymuje hasło, które jest przechowywane w bazie danych w postaci zaszyfrowanej. Możliwe są dwa inne typy uwierzytelniania, pierwszym z nich jest uwierzytelnianie zewnętrzne z poziomu systemu operacyjnego. Uwierzytelnianie zewnętrzne sprawdza hasło na poziomie systemu operacyjnego.
Drugim jest uwierzytelnianie globalne, które sprawdza hasło użytkownika w usłudze bezpieczeństwa Oracle lub innej usłudze katalogowej innej firmy.
Przypisywanie atrybutów –
Możemy zmienić atrybuty użytkownika za pomocą ALTER USER. Możemy je zmienić lub przypisać
Utwórz oświadczenie użytkownika z niektórymi zestawami atrybutów będzie
CREATE USER SCOTT IDENTIFIED BY TTOC DEFAULT TABLESPACE USERS QUOTA 10M ON USERS TEMPORARY TABLESPACE temp QUOTA 5M ON system PROFILE application_user PASSWORD EXPIRE
Uprawnienia systemu Oracle
Pozwala grantobiorcy tworzyć, zmieniać, usuwać i zarządzać obiektami bazy danych. Na przykład uprawnienia do tworzenia obszarów tabel i usuwania wierszy z dowolnej tabeli w bazie danych są uprawnieniami systemowymi.
Oracle ma ponad 100 uprawnień systemowych (znajdujących się w tabeli SYSTEM_PRIVILEGE_MAP).
W bazie danych Oracle istnieją 2 specjalne uprawnienia o nazwie SYSDBA i SYSOPER. Oba uprawnienia umożliwiają wykonywanie operacji na bazie danych, takich jak STARTUP, SHUTDOWN, OPEN, MOUNT, BACKUP, ARCHIVELOG i RECOVER. SYSDBA umożliwia polecenie CREATE DATABASE i opcje CHANGE CHARACTER SET.
Uprawnienia systemowe są nadawane przez administratora bazy danych użytkownikom za pomocą polecenia grant i cofane za pomocą polecenia revoke
Jeśli administrator DBA musi nadać komuś uprawnienia systemowe, aby inna osoba mogła je również przyznać, należy to nadać z opcją administratora
GRANT create session TO user; GRANT create session TO user with admin option; Revoke create session from user;
Uprawnienia systemu użytkownika
Po utworzeniu użytkownika zazwyczaj przyznajemy poniższe uprawnienia systemowe
- UTWÓRZ SESJĘ
- UTWÓRZ TABELĘ
- UTWÓRZ WIDOK
- UTWÓRZ SEKWENCJĘ
- UTWÓRZ PROCEDURĘ
Dzięki temu użytkownik może rozpocząć tworzenie tabeli i innych obiektów.
Sample
CREATE USER "TEST" IDENTIFIED BY TEST
DEFAULT TABLESPACE "TOOLS"
TEMPORARY TABLESPACE "TEMP";
grant CREATE TRIGGER to TEST;
grant CREATE PROCEDURE to TEST;
grant CREATE SESSION to TEST;
grant CREATE TYPE to TEST;
grant CREATE TABLE to TEST;
grant CREATE VIEW to TEST;
grant ALTER SESSION to TEST;
grant CREATE SEQUENCE to TEST;
grant CREATE SYNONYM to TEST;
grant CREATE ANY SYNONYM to TEST;
grant UNLIMITED TABLESPACE to TEST;
Uprawnienia do obiektów Oracle
Są one przyznawane obiektom bazy danych (takim jak tabela, widok, procedura itp.)
Właściciel ma wszystkie uprawnienia, a właściciel może nadać obiektom określone uprawnienia
Właściciel może nadać uprawnienia za pomocą poniższego polecenia
GRANT privileges ON object TO user;
Uprawnienia mogą być wybierane, wstawiane, aktualizowane, usuwane lub WSZYSTKIE
Jeśli właściciel chce nadać uprawnienia wszystkim użytkownikom
GRANT privileges ON object TO public;
Jeśli właściciel chce nadać uprawnienia użytkownikowi z opcją przyznania. Zasadniczo oznacza to, że stypendysta może dalej przypisywać to uprawnienie innym
GRANT privileges ON object TO user with grant option;
Podobnie mamy polecenie cofnij, aby usunąć uprawnienia z obiektów
Co to jest rola wyroczni?
Rola to obiekt bazy danych używany do wymuszania uprawnień. Użytkownikowi można przypisać rolę w celu ustawienia uprawnień do obiektów bazy danych:
GRANT EBS_ADMIN TO SCOTT;
Przyzna rolę EBS_ADMIN ze wszystkimi uprawnieniami użytkownikowi SCOTT.
Tworzenie i używanie ról
Polecenie CREATE ROLE [IDENTIFIED BY
Jaka jest różnica między uprawnieniami systemowymi i obiektowymi?
Tabele i widoki słownika danych
Firma Oracle udostępniła widoki słownika danych, aby uzyskać informacje o uprawnieniach
Istnieją trzy kategorie widoków
Sprawdzanie widoków uprawnień
Przydatne zapytania o uprawnienia
jak sprawdzić uprawnienia użytkownika w Oracle
col role for a16 col pv for a75 hea 'PRIVILEGE OR ROLE' break on role on type skip 1 define usercheck = 'SH' select grantee, 'ROL' type, granted_role pv from dba_role_privs where grantee = '&usercheck' union select grantee, 'PRV' type, privilege pv from dba_sys_privs where grantee = '&usercheck' union select grantee, 'OBJ' type, max(decode(privilege,'WRITE','WRITE,'))||max(decode(privilege,'READ','READ'))|| max(decode(privilege,'EXECUTE','EXECUTE'))||max(decode (privilege,'SELECT','SELECT'))|| max(decode(privilege,'DELETE',',DELETE'))||max(decode (privilege,'UPDATE',',UPDATE'))|| max(decode(privilege,'INSERT',',INSERT'))||' ON '||object_type||' "'||a.owner||'.'||table_name||'"' pv from dba_tab_privs a, dba_objects b where a.owner=b.owner and a.table_name = b.object_name and a.grantee='&usercheck' group by a.owner,table_name,object_type,grantee union select username grantee, '---' type, 'empty user ---' pv from dba_users where not username in (select distinct grantee from dba_role_privs) and not username in (select distinct grantee from dba_sys_privs) and not username in (select distinct grantee from dba_tab_privs) and username like '%&usercheck%' group by username order by grantee, type, pv;
Określ uprawnienia systemowe nadane użytkownikowi
SELECT GRANTEE, PRIVILEGE FROM DBA_SYS_PRIVS WHERE GRANTEE = 'USER';
Sprawdzanie, które uprawnienia do tabeli są przyznawane przez Ciebie innym użytkownikom.
SELECT * FROM USER_TAB_PRIVS_MADE
Sprawdzanie, które uprawnienia do tabeli są Ci przyznawane przez innych użytkowników
SELECT * FROM USER_TAB_PRIVS_RECD;
Sprawdzanie, które uprawnienia na poziomie kolumny są przyznawane przez Ciebie innym użytkownikom.
SELECT * FROM USER_COL_PRIVS_MADE;
Sprawdzanie, które uprawnienia na poziomie kolumny zostały Ci przyznane przez innych użytkowników
SELECT * FROM USER_COL_PRIVS_RECD;
Sprawdzanie, jakie uprawnienia są przyznawane rolom
SELECT * FROM USER_ROLE_PRIVS;
Jak przyznawać i cofać uprawnienia w Oracle
Objects grant/revoke from user grant select on dept to public; revoke select on dept from public; Objects grant/revoke from Role grant delete on dept to dept_role; revoke update on dept from dept_role;
Powiązane linki
Zarządzanie uprawnieniami i rolami użytkowników :Dokumentacja Oracle w celu uzyskania dalszych informacji
Widoki Oracle :Kompletny przewodnik po tym, jak utworzyć widok Oracle, upuścić widoki Oracle, zmienić widoki Oracle, Jak określić zapytanie do już utworzonego widoku
utworzyć table in oracle :Tabele są podstawową jednostką przechowywania danych w bazie danych Oracle. omawiamy, jak używać polecenia Oracle create table do tworzenia tabeli z kluczem obcym /klucz podstawowy
Sekwencje w Oracle :Co to jest Sequence w Oracle, Opis wszystkich opcji, Jak je utworzyć , Nowa funkcja sekwencji Oracle 12c , Jak je usunąć i zmienić
utwórz użytkownika w Oracle 12c :Dowiedz się, jak utworzyć wspólnego użytkownika w Oracle 12c, utworzyć wspólnych i lokalnych użytkowników, utworzyć wspólną rolę i rolę lokalną oraz jak nimi zarządzać
Mam nadzieję, że podoba Ci się ten post.Prześlij opinię
Polecane kursy
Oto fajny kurs Udemy dotyczący Oracle SQL
Oracle-Sql-Step-by-step :Ten kurs obejmuje podstawowy SQL, złączenia, tworzenie tabel i modyfikowanie ich struktury, tworzenie widoków, łączenie, łączenie i wiele innych rzeczy . Świetny kurs i obowiązkowy kurs dla początkujących SQL
Pełny kurs certyfikacji Oracle SQL :To dobry kurs dla każdego, kto chce być gotowym do pracy w zakresie umiejętności programistycznych SQL. Fajnie objaśniony kurs
Oracle SQL Developer:Essentials, Tips and Tricks :Narzędzie programistyczne Oracle SQL jest używane przez wielu programistów. Ten kurs zawiera sztuczki i lekcje, jak skutecznie z niego korzystać i zostać produktywnym programistą sql
Oracle SQL Performance Tuning Masterclass 2020 :Dostrajanie wydajności jest jedną z najważniejszych i najbardziej poszukiwanych umiejętności. To dobry kurs, aby się o tym dowiedzieć i zacząć dostrajać wydajność sql