Oracle 學習筆記6 許可權管理1

2021-06-14 10:00:35 字數 1612 閱讀 5338

1、許可權分類

oracle的許可權可以分為系統許可權和物件許可權。

系統許可權是指執行特定型別sql的許可權。用於控制使用者可以執行的資料庫操作。當使用者具有create any table許可權時,可以在任何模式中建立表。系統許可權是針對使用者而設定的,使用者必須被授予相應的系統許可權,才可以連線到資料庫並進行相應的操作。

物件許可權是指在物件級控制資料庫的操作的許可權,即訪問其他使用者模式物件的許可權。

oracle資料庫允許許可權傳遞,也就是已經具有許可權的使用者將其許可權授予其他使用者。oracle提供了200多種系統許可權,可以通過資料字典檢視 system_privilege_map查詢。

dba可以將系統許可權授予使用者、角色、public公共使用者組。一般情況下,系統許可權只能授予信任的使用者。

public 公共使用者組是在建立資料庫時自動建立的使用者組。該使用者組有什麼許可權,資料庫中所有的使用者就具有什麼許可權。可以利用這個特點,將公共許可權授予資料庫中所有的使用者。

2、系統許可權的授權

一般情況下,授予系統許可權是有dba完成的;如果要以其他使用者身份授予系統許可權,則要求改使用者必須具有grant any privilege 系統許可權,或在相應系統許可權上具有 with admin option選項。給使用者授予許可權的語句如下:

grant system_priv [, system_priv, ...]

to [, ]...

[with admin option]

其中system_priv 用於指定系統許可權,如果指定多個系統許可權,需要用逗號分隔; user 用於指定被授權的使用者; role 用於指定被授權的角色,如果有指定多角色,需要用逗號分隔。另外,在授予系統許可權時可以附加 with admin option選項,使用該選項後,被授權的使用者,角色可以將對應的系統許可權授予其他使用者,角色。

grant create session, create table to [user_name]

with admin option;

grant create view to [user_name];

3、檢視系統許可權

oracle提供了一些資料字典,以記錄資料庫中各種許可權資訊。

dba_sys_privs包含了資料庫管理員所有使用者有的系統許可權資訊

session_privs包含了當前使用者可以使用的許可權資訊

system_privilege_map包含了系統中所有的系統許可權資訊

4、收回系統許可權

與授予許可權相似,一般收回系統許可權的操作也是由dba完成,如果要以其他使用者收回系統許可權,要有該使用者必須具有相應的系統許可權以及轉授系統許可權(with admin option)。收回系統許可權關鍵字為revoke。

revoke system_priv[,system_priv]...

from [, ]...

revoke create session, create table from user_name;

使用者許可權被收回後,經過傳遞獲得許可權的使用者不會被收回。這個和linux的許可權不同。

學習筆記6 許可權管理

一 檢視檔案許可權 linux中所有東西皆檔案,而每個檔案都有不同的許可權,此時我們可以通過ll或ls a來檢視檔案的許可權,ll 檔名 ls l 檔名 1 檔案型別,其中 代表檔案,d 代表目錄,c 代表字元型檔案,b 代表裝置 2 檔案許可權,其中r 讀,代表可讀,w 寫,代表可寫,x 執行,代...

Oracle學習筆記 二 許可權管理

這些天把oracle許可權管理這一塊看了好多遍,發現oracle果然是個龐大的系統,許可權管理這一塊就涉及到很多東西,就這一篇部落格也是改了又改,重構了好幾遍,準備一直寫到把許可權管理搞通了.哇 一 系統的預設使用者 二 登陸 三 管理使用者 四,授予許可權 1 預設的普通使用者scott預設未解鎖...

oracle學習筆記三 許可權管理

通過將近1年對oracle資料庫的接觸,從陌生到現在的略微熟悉,感覺到這一段路走的還是蠻崎嶇的。如果沒有通過系統的學習,想要比較全面的掌握oracle是比較困難的,所以我現在也花比較大的精力去寫一些關於oracle的管理心得,希望對朋友們有著確切的幫助。但是限於個人的能力有限,所以當中難免出現一些錯...