成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle的安全標(biāo)記算不算bug

數(shù)據(jù)庫(kù) Oracle
Oracle提供了安全標(biāo)記的功能,即OLS,也就是常說(shuō)的強(qiáng)制訪問(wèn)控制。其模型是建立在BLP安全模型之上,并進(jìn)行了擴(kuò)展。

ORACLE提供了安全標(biāo)記的功能,即OLS,也就是常說(shuō)的強(qiáng)制訪問(wèn)控制。其模型是建立在BLP安全模型之上,并進(jìn)行了擴(kuò)展。

BLP模型的元素是安全級(jí)別和范圍,即可以對(duì)主客體進(jìn)行安全級(jí)別和范圍的設(shè)定,從而達(dá)到控制數(shù)據(jù)流動(dòng)的目的,即向下讀、向上寫的規(guī)則。即用戶可以讀低于用戶安全級(jí)別的數(shù)據(jù),寫高于用戶安全級(jí)別的數(shù)據(jù)(當(dāng)然還有范圍的約定,這里不介紹了)。

ORACLE擴(kuò)展了BLP模型,用戶可以設(shè)置多個(gè)安全級(jí)別,通過(guò)如下接口:

 

  1. SA_USER_ADMIN.SET_LEVELS          
  2. Syntax:      
  3. PROCEDURE SET_LEVELS (policy_name IN VARCHAR2,         
  4. user_name          
  5. IN VARCHAR2,         
  6. max_level          
  7. IN VARCHAR2,         
  8. min_level          
  9. IN VARCHAR2 DEFAULT NULL,         
  10. def_level          
  11. IN VARCHAR2 DEFAULT NULL,         
  12. row_level          
  13. IN VARCHAR2 DEFAULT NULL);          
  14. Parameter                                     Meaning      
  15. policy_name                                 Specifies the policy          
  16. user_name                                 Specifies the user name           
  17. max_level                                 The highest level for read and write access      
  18. min_level                                 The lowest level for write access                         def_level                                 Specifies the default level (equal to or   
  19.                                           greater than the minimum level, and equal                                                                                  to or less than the maximum level)          
  20. row_level                                 Specifies the row level (equal to or greater                                                                                than the minimum level, and equal to or     

 

可以看出,用戶標(biāo)記可以指定最大、最小、默認(rèn)和行級(jí)四種安全級(jí)別。這些安全級(jí)別之間是有約束關(guān)系的

  1. min_level<=max_levelmin_level<=def_level<=max_levelmin_level<=row_level<=def_level  

如果違法這種規(guī)則的話,執(zhí)行此函數(shù)就會(huì)失敗。了解了這么多之后,我們進(jìn)行實(shí)踐,以LBACSYS進(jìn)行登錄,執(zhí)行如下語(yǔ)句

  1. --創(chuàng)建策略P1,并為策略添加安全級(jí)別,數(shù)值越大代表安全級(jí)別越高。  
  2. --L1<L2<L3<L4 
  3. EXEC sa_sysdba.create_policy('P1','LABEL_COL');  
  4. EXEC sa_components.create_level('P1', 10, 'L1', 'L1');  
  5. EXEC sa_components.create_level('P1', 20, 'L2', 'L2');  
  6. EXEC sa_components.create_level('P1', 30, 'L3', 'L3');  
  7. EXEC sa_components.create_level('P1', 40, 'L4', 'L4');  
  8. --給用戶SYSMAN設(shè)置用戶標(biāo)記  
  9. EXEC sa_user_admin.set_levels('P1','SYSMAN','L2', 'L1', 'L2', 'L2');  

根據(jù)上面的介紹,這里設(shè)置的四種安全級(jí)別符合要求。我們通過(guò)DBA_SA_USER_LABELS視圖可以查看用戶的標(biāo)記。

  1. SQL> SELECT USER_NAME, LABELS FROM DBA_SA_USER_LABELS;  
  2. USER_NAME      
  3. --------------------------------------------------------------------------------      
  4. LABELS      
  5. --------------------------------------------------------------------------------      
  6. SYSMAN      
  7. MAX READ LABEL='L2',MAX WRITE LABEL='L2',MIN WRITE LABEL='L1',DEFAULT READ LABEL      
  8. ='L2',DEFAULT WRITE LABEL='L2',DEFAULT ROW LABEL='L2' 

可以看到MIN WRITE LABEL = L1

同時(shí)ORACLE提供了一個(gè)系統(tǒng)函數(shù),用于改變標(biāo)記的值:

  1. Syntax:      
  2. PROCEDURE ALTER_LABEL (         
  3.    policy_name       IN VARCHAR2,         
  4.    label_tag         IN INTEGER,         
  5.    new_label_value   IN VARCHAR2 DEFAULT NULL,         
  6.    new_data_label    IN BOOLEAN  DEFAULT NULL);      
  7. PROCEDURE ALTER_LABEL (  
  8.    policy_name       IN VARCHAR2,         
  9.    label_value       IN VARCHAR2,         
  10.    new_label_value   IN VARCHAR2 DEFAULT NULL,         
  11.    new_data_label    IN BOOLEAN  DEFAULT NULL);      
  12. Table 6–18 Parameters for SA_LABEL_ADMIN.ALTER_LABEL      
  13.    Parameter Name                         Parameter Description   
  14.    policy_name                       Specifies the name of an existing policy       
  15.    label_tag                          Identifies the integer tag assigned to the label                                                                           to be altered       
  16.    label_value                         Identifies the existing character string                                                                                   representation of the label to be altered       
  17.    new_label_value                   Specifies the new character string                                                                                   representation of the label value. If NULL, the                                                                             existing value is not changed.  

此時(shí)我們對(duì)L1的標(biāo)記進(jìn)行改寫

  1. EXEC sa_label_admin.alter_label('P1''L1''L4'TRUE); 

執(zhí)行成功,我們查看用戶標(biāo)記表,發(fā)現(xiàn)如下所示:

  1. SQL> SELECT USER_NAME, LABELS FROM DBA_SA_USER_LABELS;  
  2. USER_NAME  
  3. --------------------------------------------------------------------------------  
  4. LABELS  
  5. --------------------------------------------------------------------------------  
  6. SYSMAN  
  7. MAX READ LABEL='L2',MAX WRITE LABEL='L2',MIN WRITE LABEL='L4',DEFAULT READ LABEL  
  8. ='L2',DEFAULT WRITE LABEL='L2',DEFAULT ROW LABEL='L2' 

可以看出MIN WRITE LABEL變成了L4,其他的LABEL還是L2,這時(shí)的用戶標(biāo)記已經(jīng)是不合法的了,在這種情況下,在執(zhí)行相應(yīng)操作時(shí),很多操作會(huì)被禁止,比如對(duì)打了標(biāo)記的表進(jìn)行更新操作,因?yàn)榇藭r(shí)的用戶標(biāo)記在進(jìn)行訪問(wèn)判斷時(shí)永遠(yuǎn)是恒假值(不過(guò)此時(shí)系統(tǒng)不會(huì)崩潰,有點(diǎn)失望..),以上實(shí)驗(yàn)的版本為11.1.0.6.0

原文鏈接:http://www.cnblogs.com/nocode/archive/2011/05/04/2036873.html

【編輯推薦】

  1. 淺述當(dāng)前模式讀與一致性讀續(xù)
  2. 淺述當(dāng)前模式讀與一致性讀的區(qū)別
  3. 告訴你,如何成就DBA職業(yè)生涯
  4. 阿里巴巴運(yùn)維部DBA張瑞:Oracle與MySQL搭檔滿足業(yè)務(wù)需求
  5. Oracle業(yè)務(wù)就緒存儲(chǔ)系統(tǒng)助力企業(yè)實(shí)現(xiàn)存儲(chǔ)升級(jí)

 

責(zé)任編輯:艾婧 來(lái)源: 博客園
相關(guān)推薦

2014-09-16 10:05:39

職場(chǎng)年薪

2021-11-17 08:21:31

HTTP連接數(shù)據(jù)

2022-11-09 08:24:39

2020-08-11 10:43:02

5G先進(jìn)技術(shù)5G網(wǎng)絡(luò)

2014-09-22 11:17:03

IT技術(shù)周刊

2016-02-17 10:32:09

2015-05-18 09:44:34

2009-09-03 18:58:51

ASP.NETSession失效

2018-07-25 13:47:51

彭于晏邪不壓正Python

2011-03-10 13:12:41

2011-05-11 11:08:57

2017-11-15 06:20:36

SAML身份認(rèn)證訪問(wèn)授權(quán)

2010-05-05 15:38:31

Oracle安全策略

2010-04-14 17:19:51

Oracle數(shù)據(jù)庫(kù)

2011-03-10 13:24:26

2010-05-10 16:08:10

2017-10-18 19:12:24

數(shù)據(jù)庫(kù)Oracle安全管理

2011-04-15 09:39:10

2011-08-22 13:46:30

Oracle 11gXML Table

2023-07-10 09:52:51

機(jī)器谷歌
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产欧美日韩综合精品一区二区 | 日韩精品一区二区三区中文字幕 | 国产视频不卡一区 | 欧美不卡一区二区 | 欧美三区视频 | 91视频88av| 欧美日韩电影免费观看 | 久久久久久国产精品 | 美女国产精品 | 久久99精品视频 | 日日拍夜夜 | 精品美女在线观看视频在线观看 | 亚洲精品一区二区网址 | 国产午夜精品一区二区三区四区 | 81精品国产乱码久久久久久 | 九九在线视频 | 国产精品伦理一区 | 81精品国产乱码久久久久久 | 狠狠躁躁夜夜躁波多野结依 | 色天堂影院 | 亚洲精品字幕 | 亚洲福利网站 | www.久久精品视频 | 在线观看国产www | 国产欧美精品一区二区三区 | 午夜影晥| 国产91综合一区在线观看 | 久久免费视频1 | 欧美一区二区在线观看视频 | 97视频成人| 欧美影院 | 日本久久一区二区三区 | 精品av| 偷牌自拍 | 超碰在线人人干 | 精品国产一区一区二区三亚瑟 | 色综合色综合色综合 | 青草久久免费视频 | 久久人人网 | 在线精品一区二区三区 | 久久这里只有精品首页 |