以下的文章主要是講述Oracle強制訪問和DM強制訪問的控制模型對比的具體表現,本問主要是從系統沖突與系統權限這兩方面來講述Oracle強制訪問和DM強制訪問的控制模型的不同之處。以下就是文章的具體內容介紹。
系統沖突
(1)與視圖的沖突:用戶訪問視圖的用戶的標記去訪問基表,即直接對基表實施標記保護。
(2)與參照完整性的沖突:不對內部生成的引用表掃描應用 LBAC 讀Oracle強制訪問規則;不對內部生成的被引用表掃描應用 LBAC 讀訪問規則;當對引用表執行 CASCADE 操作時,應用 LBAC 寫規則。
(3)與CHECK約束的沖突:在驗證CHECK約束時,不應用LBAC讀規則。
(4)與主鍵和唯一鍵約束的沖突:在驗證一個主鍵或唯一鍵約束時,不應用LBAC規則。(如果推理信息是一個問題,那麼對唯一鍵的列加一個列標記吧)
(5)與索引覆蓋的沖突:系統優化,直接使用索引獲取數據時,如果索引列中包含標記列,則執行該優化,否則不執行該優化。
(6)可以和水平分區相結合。
系統權限
(1)安全管理員權限(SECADM),執行如下操作需要該權限。
創建和刪除標記組件
創建和刪除安全策略
創建和刪除安全標記
授予和回收安全標記
授予和回收免除權
授予和回收SETSESSIONUSER權
SYSADM是唯一可以授予SECADM權的用戶,其並不固有的能Oracle強制訪問一個受保護的表。
(2)SETSESSIONUSER權限
改變當前用戶授權ID到一個不同的授權ID,實際就是切換用戶來Oracle強制訪問不同的數據。SETSESSIONUSER能被授予給一個用戶或組,該權限允許擁有者切換ID到任何一個擁有該權限的用戶ID。切換語句為SET SESSION AUTHORIZATION。