日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
獲得Oracle權限的TABLEFUNCTION實操

你是否對獲得Oracle對象的權限的實際操作感到十分頭疼?如果是這樣子的話,以下的文章將會給你相應的解決方案,以下的文章主要是介紹獲得Oracle權限的方案,即,通過TABLE FUNCTION獲得Oracle權限。

專注于為中小企業(yè)提供成都網站設計、網站建設、外貿網站建設服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)南丹免費做網站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網行業(yè)人才,有力地推動了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網站建設實現(xiàn)規(guī)模擴充和轉變。

 系統(tǒng)權限 角色權限 ,Oracle提供了以DBA_* ROLE_* SESSION_* 等開頭的系統(tǒng)視圖供用戶查詢權限分配的信息,我們也可以通過OEM等其他工具來得到這些權限,在這里我們如果通過TABLE FUNCTION來獲得這些Oracle權限.

聲明:由于獲得權限需要系統(tǒng)視圖的支持,我們需要dba_sys_privs,dba_role_privs,role_sys_privs,role_tab_privs,dba_tables有讀Oracle權限,當然,可以把下面的包建立在sys用戶下面,也可以通過授權模式在其他用戶上使用.

創(chuàng)建包:

1:創(chuàng)建對象

 
 
 
  1. SQL>create type PrivsList is table of varchar2(4000);  
  2. SQL>/  

2:創(chuàng)建包

包中只列舉了一些常用的獲得Oracle權限的功能

create or replace package ManPrivs is

—Author : LIYAN

—Created : 2009-8-26 10:06:18

—Purpose :

執(zhí)行此包中過程需要對dba_sys_privs,dba_role_privs,role_sys_privs,role_tab_privs,dba_tables有讀權限

并且擁有DBA授權能力

建議系統(tǒng)權限以及角色權限授權、權限回收操作使用OEM完成

查詢角色包含角色權限建議使用OEM完成

 
 
 
  1. Function ListTabPrivs(ObjOwner varchar2 , 
    ObjName varchar2 default null, Privs varchar2 default null, 
    IsRevoke varchar2 default ‘N’,  
  2. Grantee varchar2 default null) return PrivsList pipelined;  

查看對象的表格Oracle權限

 
 
 
  1. Example:  
  2. select * from table(manprivs.ListTabPrivs(‘sh,hr’,“,‘select,update,delete,insert’,'N‘,'PUBLIC’));  
  3. */  
  4. Function ListSysPrivs(ObjOwner varchar2 default null) return PrivsList pipelined;  

產看對象的系統(tǒng)權限

 
 
 
  1. Example:  
  2. select * from table(ManPrivs.ListSysPrivs(‘sh,hr’));  
  3. */  
  4. Function ListRolePrivs(ObjOwner varchar2 default null) return PrivsList pipelined ;  

查看對象的角色Oracle權限

 
 
 
  1. Example:  
  2. select * from table(ManPrivs.ListRolePrivs(‘sh,hr’));  
  3. */  
  4. Function ListRoleSysPrivs(ObjOwner varchar2 default null) return PrivsList pipelined ;  

查看對象擁有角色的系統(tǒng)權限

 
 
 
  1. Example:  
  2. select * from table(ManPrivs.ListRoleSysPrivs(‘sh,hr’));  
  3. */  
  4. Function ListRoleTabPrivs(ObjOwner varchar2 default null) return PrivsList pipelined ;  

查看對象擁有角色的表格權限

 
 
 
  1. Example:  
  2. SELECT * fROM TABLE(MANPRIVS.ListRoleTabPrivs(‘SH,HR’))  
  3. */  
  4. Function ListRoleRolePrivs(ObjOwner varchar2 default null) return PrivsList pipelined ;  
  5. Procedure RevokeTabPrivs(ObjOwner varchar2, ObjName varchar2 default null, Privs varchar2 default null,  
  6. Grantee varchar2 default null);  

回收對象的表格Oracle權限

 
 
 
  1. Example:  
  2. Execute ManPrivs.RevokeTabPrivs(‘HR’,“,”,‘PUBLIC’)  
  3. */  
  4. Procedure GrantTabPrivs(ObjOwner varchar2, ObjName varchar2, Privs varchar2,  
  5. Grantee varchar2);  

對特定的對象進行授予特殊Oracle權限

 
 
 
  1. Example:  
  2. Execute ManPrivs.GrantTabPrivs(‘hr’,'jobs‘,’select,update,insert‘,'public’)  
  3. */  
  4. end ManPrivs;  

上述的相關內容就是對通過TABLE FUNCTION獲得Oracle權限的描述,希望會給你帶來一些幫助在此方面。

【編輯推薦】

  1. Oracle 字符串split的相關實際應用代碼介紹
  2. Oracle數(shù)據(jù)庫的安全,PL/SQL的SQL注入
  3. Oracle merge into的實操示例
  4. 成為成功Oracle DBA的六個必備思想
  5. 調用Oracle存儲過程的兩大步驟

當前文章:獲得Oracle權限的TABLEFUNCTION實操
當前路徑:http://www.dlmjj.cn/article/cosodds.html