Oracle users / 許可權 / grant priv
--================================
--Oracle 角色、配置檔案
--================================
一、角色
1.角色
許可權的集合,可以分配給一個使用者或其他角色,但角色不能授予自己,也不能迴圈授予
角色的優點
可以先建立角色,向該角色賦予一系列許可權,然後再將該角色授予多個使用者或角色
增加或刪除角色中的某一許可權,被授予該角色的所有使用者或角色自動地獲得新增許可權或刪除舊的許可權
可以為角色設定密碼
2.建立修改角色
CREATE ROLE role_name
[NOT IDENTIFIED(預設) | IDENTIFIED BY password | EXTERNALLY |GLOBALLY];
注:同一個資料庫中角色名稱必須唯一,且不能使用已存在的使用者名稱稱
不支援with grant option 為角色授予物件許可權
支援with admin option 為角色授予系統許可權或另一個角色
使用Enterprise Manager建立某個使用者時,該使用者被自動授予了CONNECT角色,
即同時具有了該角色的所有許可權
IDENTIFIED BY EXTERNALLY
意味著了啟用一個角色,使用者必須是某個作業系統組的一個成員,該作業系統組的名稱應當與角色相對應。
當希望透過作業系統對角色進行身份認證,則需要設定OS_ROLE引數為TRUE
且當設定了使用IDENTIFIED BY EXTERNALLY身份驗證,必須在資料庫駐留的伺服器上按以下格式建立組
ora_<SID>_
d:指示
a:指示可以使用with admin option為使用者授予
關於外部身份驗證,請參考:Oracle 密碼檔案
常用的角色
角色 被授予的許可權
DBA 幾乎所有系統許可權
SELECT_CATALOG_ROLE 資料字典上的物件許可權,未被授予任何系統許可權
EXECUTE_CATALOG_ROLE 資料字典上的程式包、過程、函式的物件許可權
DELETE_CATALOG_ROLE DELETE ON SYS.AUD$
DELETE ON SYS.FGA_LOG$
EXP_FULL_DATABASE 從資料庫中匯出資料時查詢任何表或序列、執行任何過程或型別以及修改
資料字典物件的許可權
IMP_FULL_DATABASE 執行匯入時,在資料庫內除了sys模式之外的任何模式中建立物件的許可權
CONNECT ALTER SESSION
CREATE CLUSTER
CREATE DATABASE LINK
CREATE SEQUENCE
CREATE SESSION
CREATE SYNONYM
CREATE TABLE
CREATE VIEW
RESOURCE CREATE CLUSTER
CREATE INDEXTYPE
CREATE OPERATOR
CREATE PROCEDURE
CREATE SEQUENCE
CREATE TABLE
CREATE TRIGGER
CREATE TYPE
UNLIMITED TABLESPACE (when granted)
AQ_ADMINISTRATOR_ROLE Advanced Queuing 物件上的物件許可權
CREATE EVALUATION CONTEXT
CREATE RULE
CREATE RULE SET
DEQUEUE ANY QUEUE
ENQUEUE ANY QUEUE
MANAGE ANY QUEUE
AQ_USER_ROLE EXECUTE ON SYS.DBMS_AQ
EXECUTE ON SYS.DBMS_AQIN
EXECUTE ON SYS.DBMS_AQJMS_INTERNAL
EXECUTE ON SYS.DBMS_TRANSFORM
SCHEDULER_ADMIN CREATE ANY JOB
CREATE JOB
EXECUTE ANY CLASS
EXECUTE ANY PROGRAM
MANAGE SCHEDULE
(使用WITH ADMIN OPTION授予上述所有許可權)
PUBLIC 不具有特殊的許可權,不過為public角色授予許可權時,所有使用者都會繼承該許可權
--建立不要口令的角色clerk
SQL> CREATE ROLE clerk;
--建立要口令的角色sales
SQL> CREATE ROLE sales IDENTIFIED BY money;
--建立一個需要使用外部標識(如作業系統)的角色manager
SQL> CREATE ROLE manager IDENTIFIED EXTERNALLY;
--建立後檢視角色:
SQL> SELECT role,password_required FROM dba_roles;
ROLE PASSWORD
------------------------------ --------
CLERK NO
SALES YES
MANAGER EXTERNAL
角色修改:
ALTER ROLE rolename
[NOT IDENTIFIED | IDENTIFIED
BY password | EXTERNALLY | GLOBALLY];
一個角色在建立後可以修改,但只能修改它的驗證方法。
但只有角色是使用帶有with ADMIN option 選項的GRANT 語句授予的或者具
有ALTER ANY ROLE 系統許可權的使用者時,才可以修改這個角色
--將角色clerk 的驗證方法改為使用外部(如作業系統)標識
SQL> ALTER ROLE clerk IDENTIFIED EXTERNALLY;
--將角色sales 的驗證方法改為不使用任何標識方法
SQL> ALTER ROLE sales NOT IDENTIFIED;
--將角色manager 的驗證方法改為使用口令標識,口令為vampire
SQL> ALTER ROLE manager IDENTIFIED BY vampires;
--再查詢後即可看到變化
SELECT role,password_required FROM dba_roles
3.為角色授予和取消許可權
a.角色授權
為角色授予系統許可權語法
GRANT system_priv [, system_priv, ...]
TO role | PUBLIC [, role | PUBLIC, ...]
[WITH ADMIN OPTION];
為角色授予物件許可權語法
GRANT ALL [PRIVILEGES] | object_priv [(column, column, ...)]
[, object_priv [(column, column, ...(] , ...]
ON [schema_name.]object_name
TO role | PUBLIC [, role | PUBLIC, ...];
--為角色賦予許可權(GRANT):
SQL> show user;
USER is "SYSTEM"
SQL> CREATE ROLE manager;
Role created.
--賦予系統許可權
SQL> GRANT CREATE TABLE,CREATE VIEW,CREATE SESSION TO manager WITH ADMIN OPTION;
Grant succeeded.
--賦予物件許可權
SQL> GRANT SELECT ,INSERT ,UPDATE ON scott.emp TO manager;
Grant succeeded.
--檢視角色的系統許可權(role_sys_privs)
SQL> SELECT * FROM role_sys_privs WHERE role = 'MANAGER';
ROLE PRIVILEGE ADM
------------------------------ -------------------- ---
MANAGER CREATE SESSION YES
MANAGER CREATE TABLE YES
MANAGER CREATE VIEW YES
--檢視角色的物件許可權(role_tab_privs)
SQL> SELECT * FROM role_tab_privs WHERE role = 'MANAGER';
ROLE OWNER TABLE_NAME COLUMN_NAME PRIVILEGE GRA
------------------------- -------------------- -------------------- ----------- -------------------- ---
MANAGER SCOTT EMP UPDATE NO
MANAGER SCOTT EMP INSERT NO
MANAGER SCOTT EMP
b.取消角色所擁有的許可權
取消角色擁有的系統許可權語法
REVOKE system_priv | role_name [, system_priv | role_name, ...]
FROM role | PUBLIC [,role | PUBLIC, ...];
取消角色使用者的物件許可權語法
REVOKE ALL [PRIVILEGES] | object_priv [, object_priv, ...]
ON [schema_name.]object_name
FROM role | PUBLIC [,role | PUBLIC, ...]
[CASCADE CONSTRAINTS]
--取消角色的系統許可權
SQL> REVOKE CREATE VIEW FROM manager;
Revoked succeeded.
--取消角色的物件許可權
SQL> REVOKE INSERT ,UPDATE ON scott.emp FROM manager;
Revoked succeeded.
--檢視被取消許可權後所剩餘的許可權的集合
SQL> SELECT role,'System_privs' owner,privilege
2 FROM role_sys_privs
3 WHERE role = 'MANAGER'
4 UNION
5 SELECT role,owner,privilege
6 FROM role_tab_privs
7 WHERE role = 'MANAGER';
ROLE OWNER PRIVILEGE
------------------------------ -------------------- --------------------
MANAGER SCOTT SELECT
MANAGER System_privs CREATE SESSION
MANAGER System_privs CREATE TABLE
4.角色賦予與角色取消
a.將角色賦予使用者(grant):
語法:
GRANT role_name [, role_name, ...]
TO user_name | role | PUBLIC [, user_name | role | PUBLIC, ...]
[WITH ADMIN OPTION];
--將角色賦予robinson且使用了WITH ADMIN OPTION
SQL> GRANT manager TO robinson WITH ADMIN OPTION;
Grant succeeded.
--robinson有權將角色授予john,如下
SQL> CONN robinson/lion;
Connected.
SQL> GRANT manager TO john;
Grant succeeded.
--檢視角色授予了哪些使用者(dba_role_privs)
SQL> SELECT * FROM dba_role_privs WHERE granted_role = 'MANAGER';
GRANTEE GRANTED_ROLE ADM DEF
-------------------- ------------------------------ --- ---
SYSTEM MANAGER YES YES
JOHN MANAGER NO YES
ROBINSON MANAGER YES YES
--檢視使用者擁有哪些角色
SQL> CONN scott/tiger;
Connected.
SQL> SELECT * FROM user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
SCOTT CONNECT NO YES NO
SCOTT RESOURCE NO YES NO
--檢視使用者擁有哪些角色(使用session_roles)
SQL> SELECT * FROM session_roles;
ROLE
------------------------------
CONNECT
RESOURCE
b.取消使用者擁有的角色
語法:
REVOKE role_name [, role_name, ...]
FROM user_name | role | PUBLIC [, user_name | role | PUBLIC, ...];
--取消使用者角色
SQL> REVOKE resource FROM scott;
Revoke succeeded.
--檢視resource 角色已被取消
SQL> CONN scott/tiger;
Connected.
SQL> SELECT * FROM user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
SCOTT CONNECT NO YES NO
--對於使用WITH ADMIN OPTION引數,收回robinson角色,並不影響john的級聯角色,如下:
SQL> select * from dba_role_privs where grantee='JOHN';
GRANTEE GRANTED_ROLE ADM DEF
-------------------- ------------------------------ --- ---
JOHN MANAGER NO YES
SQL> revoke manager from robinson;
Revoke succeeded.
SQL> select * from dba_role_privs where grantee='JOHN';
GRANTEE GRANTED_ROLE ADM DEF
-------------------- ------------------------------ --- ---
JOHN MANAGER NO YES
SQL> select * from dba_role_privs where grantee='ROBINSON';
no rows selected
5.設定預設角色
可以將多個角色授予一個使用者。預設角色是這些角色的一個子集,預設角色在使用者登入系統時
自動啟用(開啟)。在預設情況下,所有賦予使用者的角色在使用者登入時不需要口令就被啟用。
可以使用ALTER USER語句來限制使用者有的預設角色。
語法:
ALTER USER username DEFAULT ROLE
role [, role, ...] | ALL [EXCEPT role [, role, ...]] | NONE;
ALTER USER語句中的DEFAULT ROLE子句只適用於那些使用GRANT語句直接授予使用者的角色。
DEFAULT ROLE子句在下列情況下是不能使用的:
透過其它角色授予的角色
沒有直接授予該使用者的角色
透過外部服務(如作業系統)管理的角色
--建立使用者martin並授予resource,connect角色
SQL> CREATE USER martin IDENTIFIED BY abc;
User created.
SQL> GRANT RESOURCE,CONNECT TO martin;
Grant succeeded.
SQL> CONN martin/abc;
Connected.
SQL> CONN system/redhat
Connected.
--設定預設的角色為NONE後,無法登陸
SQL> ALTER USER martin DEFAULT ROLE NONE;
User altered.
SQL> CONN martin/abc;
ERROR:
ORA-01045: user MARTIN lacks CREATE SESSION privilege; logon denied
Warning: You are no longer connected to ORACLE.
SQL> CONN system/redhat;
Connected.
--重置角色後可以正常登陸
SQL> ALTER USER martin DEFAULT ROLE ALL;
User altered.
SQL> CONN martin/abc;
Connected.
--預設角色為除resource之外的所有角色
SQL> ALTER USER martin DEFAULT ROLE ALL EXCEPT RESOURCE;
User altered.
6.啟用和禁止角色(SET ROLE)
語法:
SET ROLE ALL [EXCEPT role_name [,role_name]] | NONE |
role_name [IDENTIFIED BY password] [, role_name [IDENTIFIED BY password, ...];
SQL> CONN robinson/lion
Connected.
--檢視使用者擁有的所有角色
SQL> SELECT * FROM user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
ROBINSON MANAGER NO YES NO
ROBINSON RESOURCE NO YES NO
--檢視使用者擁有的所有許可權
SQL> SELECT * FROM session_privs;
PRIVILEGE
----------------------------------------
CREATE SESSION
CREATE TABLE
CREATE CLUSTER
CREATE SEQUENCE
CREATE PROCEDURE
CREATE TRIGGER
CREATE TYPE
CREATE OPERATOR
CREATE INDEXTYPE
9 rows selected.
--禁用所有的角色後,使用者的許可權無顯示記錄
SQL> SET ROLE NONE;
Role set.
SQL> SELECT * FROM session_privs;
no rows selected
--使用者重新啟用所有角色
SQL> SET ROLE ALL
Role set.
--啟用一個manager角色
SQL> SET ROLE manager;
Role set.
SQL> SELECT * FROM session_roles;
ROLE
------------------------------
MANAGER
在這裡不象一般的ALTER 命令,沒有用到ENABLE 和DISABLE 之類的選項。
7.角色刪除:
DROP ROLE role_name
--角色的刪除需要適當的許可權,如下提示沒有許可權刪除角色
SQL> SHOW USER;
USER is "ROBINSON"
SQL> DROP ROLE manager;
DROP ROLE manager
*
ERROR at line 1:
ORA-01031: insufficient privileges
--使用system帳戶刪除角色
SQL> CONN system/redhat;
Connected.
SQL> DROP ROLE manager;
--帳戶robisnon唯一的角色被刪除後,再次使用該帳戶登陸已提示沒有許可權
--即角色的刪除,原來所關聯的使用者會自動分離該角色及所有相關許可權
SQL> CONN robinson/lion;
ERROR:
ORA-01045: user ROBINSON lacks CREATE SESSION privilege; logon denied
Warning: You are no longer connected to ORACLE.
Role dropped.
關於connect和resource預定義角色:
connect, resoure 是role,包含很多的許可權的
其中resource具有建立表,索引,檢視和其他的Oracle物件的能力,
同時預設帶有unlimited tablespace許可權
一般將connect授予所有的普通使用者
connect和resource授予開發人員
oracle聲稱connect和resource角色是為了與它早期的版相容而保留的,
勸告使用者儘可能不要使用這兩個角色,以避免產生安全漏洞。
二、使用者配置檔案
配置檔案實現中幾類安全控制措施:
帳戶上鎖
資源限制
直接許可權
角色許可權
1.資源限制:
利用配置檔案來實現,可用以下兩種方法之一來開啟資源限制:
a.在初始化引數檔案中將RESOURCE_LIMIT 設為TRUE
b.使用ALTER SYSTEM 命令將RESOURCE_LIMIT 設為TRUE
ALTER SYSTEM SET RESOURCE_LIMIT=TRUE;
配置檔案的資源限制既可加在會話一級,也可加在呼叫一級,會話級設定的資源限制是強加在每一個
連線上的。當超過了會話級的資源限制時,ORACLE系統將返回出錯資訊。伺服器與使用者的連線斷開
在會話級可以設定的資源限制如下:
SESSION_PER_USER: 每個使用者所允許的並行會話數
CPU_PER_SESSION: 總共的CPU時間,其單位是%s
IDLE_TIME: 沒有活動的時間,單位是分鐘
CONNECT_TIME: 連線時間
LOGICAL_READS_PER_SESSION: 物理和邏輯讀的資料塊數。
建立資源限制檔案:
CREATE PROFILE profile_name LIMIT
[SESSION_PER_USER max_value]
[CPU_PER_SESSION max_value]
[CPU_PER_CALL max_value]
[CONNECT_TIME max_value]
[IDLE_TIME max_value]
[LOGICAL_READS_PER_SESSION max_value]
[LOGICAL_READS_PER_CALL max_value]
--演示建立資源限制配置檔案
SQL> CREATE PROFILE luckly_prof LIMIT
2 SESSIONS_PER_USER 8 --同一使用者可開啟個會話(連線)
3 CPU_PER_SESSION 168000 --每個會話最多可以使用的CPU時間為個%s
4 LOGICAL_READS_PER_SESSION 21888 --每個會話最多可以讀個資料塊
5 CONNECT_TIME 180 --每個會話的連線時間最多為分鐘
6 IDLE_TIME 10 ; --每個會話的沒有活動時間不能超分鐘
Profile created.
--檢視剛剛建立的配置檔案
SQL> SELECT * FROM dba_profiles WHERE profile = 'LUCKLY_PROF';
PROFILE RESOURCE_NAME RESOURCE LIMIT
------------------------------ -------------------------------- -------- -----------------------
LUCKLY_PROF COMPOSITE_LIMIT KERNEL DEFAULT
LUCKLY_PROF SESSIONS_PER_USER KERNEL 8
LUCKLY_PROF CPU_PER_SESSION KERNEL 168000
LUCKLY_PROF CPU_PER_CALL KERNEL DEFAULT
LUCKLY_PROF LOGICAL_READS_PER_SESSION KERNEL 21888
LUCKLY_PROF LOGICAL_READS_PER_CALL KERNEL DEFAULT
LUCKLY_PROF IDLE_TIME KERNEL 10
LUCKLY_PROF CONNECT_TIME KERNEL 180
LUCKLY_PROF PRIVATE_SGA KERNEL DEFAULT
LUCKLY_PROF FAILED_LOGIN_ATTEMPTS PASSWORD DEFAULT
LUCKLY_PROF PASSWORD_LIFE_TIME PASSWORD DEFAULT
PROFILE RESOURCE_NAME RESOURCE LIMIT
------------------------------ -------------------------------- -------- ------------------------
LUCKLY_PROF PASSWORD_REUSE_TIME PASSWORD DEFAULT
LUCKLY_PROF PASSWORD_REUSE_MAX PASSWORD DEFAULT
LUCKLY_PROF PASSWORD_VERIFY_FUNCTION PASSWORD DEFAULT
LUCKLY_PROF PASSWORD_LOCK_TIME PASSWORD DEFAULT
LUCKLY_PROF PASSWORD_GRACE_TIME PASSWORD DEFAULT
2.口令限制
FAILED_LOGIN_ATTEMPTS 帳戶被鎖之前可以嘗試登入失敗的次數
PASSWORD_LOCK_TIME 嘗試指定次數失敗後,賬戶被鎖的天數
PASSWORD_LIFE_TIME 口令的生命週期(可使用的天數)
PASSWORD_GRACE_TIME 口令過期之後第一次成功地使用原口令登入後要改變口令的寬限天數
PASSWORD_REUSE_TIME 在一個口令可以重用之前的天數
PASSWORD_REUSE_MAX 在一個口令可以重用之前的最大變化數
PASSWORD_VERIFY_FUNCTION 在一個新的口令賦予一個使用者之前,要驗證口令的複雜性是否滿足
安全要求的一個PL/SQL函式(該函式要sys使用者執行utlpwdmg.sql
指令碼來生成)
在執行utlpwdmg.sql指令碼檔案期間,ORACLE伺服器將建立VERIFY_FUNCTION函式,並且使用如下
的ALTER PROFILE 命令來修改luckly_prof概要檔案:
--為luckly_prof配置檔案增加口令限制
SQL> ALTER PROFILE luckly_prof LIMIT
2 PASSWORD_LIFE_TIME 60
3 PASSWORD_GRACE_TIME 10
4 PASSWORD_REUSE_TIME 1800
5 PASSWORD_REUSE_MAX UNLIMITED
6 FAILED_LOGIN_ATTEMPTS 3
7 PASSWORD_LOCK_TIME 1/1440;
Profile altered.
之後,ORACLE伺服器就要對所有使用者提供的口令進行如下檢查:
口令的最小長度為個字元
口令不應該與使用者名稱相同
口令應該包含至少一個字元、一個數字和一個特殊字元
口令應該至少有個字母與以前的口令不同。除了ORACLE提供的預設複雜性檢驗函式外,
資料庫管理員也可以自己寫一個PL/SQL函式進行口令的複雜性檢驗。
使用者提供的口令函式一定要在SYS模式下建立並且必須使用以下函式說明(即函式介面)
function_name (userid_parameter IN VARCHAR2(30),
password_parmeter IN VARCHAR2(30),
old_password_parmeter IN VARCHAR2(30)
RETURN BOOLEAN
建立口令限制的概要檔案:
同建立資源限制檔案一樣,只要把口令限制方面的內容加到profile_name中即可。
如:
CREATE PROFILE unluck_prof LIMIT
FAILED_LOGIN_ATTEMPTS 7
PASSWORD_LOCK_TIME UNLIMITED
PASSWORD_LIFE_TIME 44
PASSWORD_REUSE_TIME 24
PASSWORD_GRACE_TIME 4;
--檢視資源限制(dba_profiles):
SQL> SELECT * FROM dba_profiles WHERE profile = 'LUCKLY_PROF';
PROFILE RESOURCE_NAME RESOURCE LIMIT
------------------------------ -------------------------------- -------- ----------------------
LUCKLY_PROF COMPOSITE_LIMIT KERNEL DEFAULT
LUCKLY_PROF SESSIONS_PER_USER KERNEL 8
LUCKLY_PROF CPU_PER_SESSION KERNEL 168000
LUCKLY_PROF CPU_PER_CALL KERNEL DEFAULT
LUCKLY_PROF LOGICAL_READS_PER_SESSION KERNEL 21888
LUCKLY_PROF LOGICAL_READS_PER_CALL KERNEL DEFAULT
LUCKLY_PROF IDLE_TIME KERNEL 10
LUCKLY_PROF CONNECT_TIME KERNEL 180
LUCKLY_PROF PRIVATE_SGA KERNEL DEFAULT
LUCKLY_PROF FAILED_LOGIN_ATTEMPTS PASSWORD 3
LUCKLY_PROF PASSWORD_LIFE_TIME PASSWORD 60
PROFILE RESOURCE_NAME RESOURCE LIMIT
------------------------------ -------------------------------- -------- -----------------------
LUCKLY_PROF PASSWORD_REUSE_TIME PASSWORD 1800
LUCKLY_PROF PASSWORD_REUSE_MAX PASSWORD UNLIMITED
LUCKLY_PROF PASSWORD_VERIFY_FUNCTION PASSWORD DEFAULT
LUCKLY_PROF PASSWORD_LOCK_TIME PASSWORD .0006
LUCKLY_PROF PASSWORD_GRACE_TIME PASSWORD 10
16 rows selected.
RESOURCE_TYPE為KERNEL表示這是一個資源限制,為PASSWORD表示為口令限制。
3.修改配置檔案:
ALTER PROFILE profile_name LIMIT
......
例:ALTER PROFILE luck_prof LIMIT
IDLE_TIME 40
4.將PROFILE賦予使用者:
CREATE USER user_name [PROFILE { profile_name | DEFAULT }]
ALTER USER user_name [PROFILE { profile_name | DEFAULT }]
SQL> CREATE USER andy IDENTIFIED BY oracle PROFILE luckly_prof;
User created.
SQL> ALTER USER robinson PROFILE luckly_prof;
User altered.
5.刪除配置檔案:
DROP PROFILE profile_name [CASCADE]
如果一個概要檔案已經賦予了使用者,那麼在DROP PROFILE時要用CASCADE
無法刪除DEFAULT配置檔案,也無法刪除MONITORING_PROFILE配置檔案
--已被賦予給用的profile刪除時需要使用cascade,如下:
SQL> DROP PROFILE luckly_prof;
DROP PROFILE luckly_prof
*
ERROR at line 1:
ORA-02382: profile LUCKLY_PROF has users assigned, cannot drop without CASCADE
SQL> DROP PROFILE luckly_prof CASCADE;
Profile dropped.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22578826/viewspace-703485/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 詳解GuassDB資料庫許可權命令:GRANT和REVOKE資料庫
- mysql 給了使用者所有許可權ALL PRIVILEGES,但是該使用者沒有grant許可權MySql
- Oracle軟體許可權修復Oracle
- Oracle使用者角色許可權管理Oracle
- 許可權之選單許可權
- linux 檔案許可權 s 許可權和 t 許可權解析Linux
- 如何用 Vue 實現前端許可權控制(路由許可權 + 檢視許可權 + 請求許可權)Vue前端路由
- 許可權系統:一文搞懂功能許可權、資料許可權
- Oracle 目錄許可權丟失故障恢復Oracle
- Oracle 資料庫安全許可權配置標準Oracle資料庫
- Linux特殊許可權之suid、sgid、sbit許可權LinuxUI
- Oracle default usersOracle
- mysql許可權MySql
- 許可權控制
- Linux許可權Linux
- android動態許可權到自定義許可權框架Android框架
- 選單許可權和按鈕許可權設定
- Linux的檔案存取許可權和0644許可權Linux
- Android6.0------許可權申請管理(單個許可權和多個許可權申請)Android
- 【自然框架】許可權的視訊演示(二):許可權到欄位、許可權到記錄框架
- 如何在Oracle VM下更改root許可權密碼Oracle密碼
- oracle儲存過程許可權繼承小結Oracle儲存過程繼承
- django開發之許可權管理(一)——許可權管理詳解(許可權管理原理以及方案)、不使用許可權框架的原始授權方式詳解Django框架
- 許可權系統:許可權應用服務設計
- Odoo許可權管理Odoo
- shiro許可權控制
- vue router 許可權Vue
- 特殊許可權管理
- Linux 特殊許可權Linux
- 許可權管控
- sql許可權管理SQL
- 許可權管理策略
- odoo 許可權分配Odoo
- MySQL許可權管理MySql
- Shiro許可權框架框架
- 許可權模型:ACL模型
- 許可權設計
- Android SELinux許可權AndroidLinux
- 4、許可權管理