[英]Apply restriction DML and DDL
SELECT
D.OS_USERNAME
,D.terminal AS MACHINE
,D.OBJ_NAME
,D.ACTION_NAME
,D.timestamp
,D.Sql_Text
FROM DBA_AUDIT_TRAIL D
WHERE D.OWNER = 'HRADMIN'
AND D.ACTION_NAME LIKE '%INSERT%'
AND D.OS_USERNAME NOT IN ('MuhammadJav','zeeshankh1');
這個查詢給我記錄
我想應用限制或限制,以便只有D.OS_USERNAME ('MuhammadJav','zeeshankh1','Alikh1')
可以運行insert,update,delete,alter語句,但其他用戶不能插入,update,delete,alter數據。
在Oracle中,插入,更新或刪除的權限在用戶或角色級別上進行管理。 這些用戶是數據庫用戶,就像您的HRADMIN
。
如果像MuhammadJav,zeeshankh1,Alikh1這樣的操作系統用戶使用相同的oracle帳戶,事情就會變得更加困難。
DML語句(如“ ALTER”或“ CREATE”)的處理方式完全不同。 像“ HRADMIN”這樣的用戶可以使用其自己的架構中的表和其他對象來完成他/她想要的事情。 有可能,但很難阻止這種情況。
因此,傳統的解決方案是給MuhammadJav,zeeshankh1,Alikh1他們自己的oracle帳戶,並以用戶HRADMIN的身份授予您想要的特權:
GRANT INSERT,UPDATE,DELETE ON HRADMIN.your_table_name TO MUHAMMADJAV;
GRANT INSERT,UPDATE,DELETE ON HRADMIN.your_table_name TO ZEESHANKH1;
etc
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.