我覺得當前的用戶可以訪問權限授予其他用戶,這是錯誤的刪除數據和。那麼我可以直接刪除那些角色from all_tab_privs
?是否安全,從all_tab_privs使用</p> <pre><code>select distinct grantor, table_schema from all_tab_privs where granter = ''; </code></pre> <p>如何
而且當我運行
delete from all_tab_privs where grantor = 'username';
我得到
SQL Error: ORA-01031: insufficient privileges
01031. 00000 - "insufficient privileges"
*Cause: An attempt was made to change the current username or password
without the appropriate privilege.
所以,我需要一些角色添加到當前用戶完成刪除?
['all_tab_privs']](http://docs.oracle.com/cd/B28359_01/server.111/b28320/statviews_2098.htm)是一個內置的Oracle視圖,無法更新。它顯示了授予所有用戶和角色的所有權限,它基於所有賦予(或帶走)權限的'GRANT'和'REVOKE'語句的結果。 –
還有一些東西:錯誤消息顯示「嘗試更改當前用戶名或密碼而沒有適當的權限。」這看起來不正確。而且,所有權限都有一個設保人,所以帶有'where grantor ='''的查詢不應該返回任何內容。如果您不理解這些內容,那麼在撤銷權限時應該非常小心 - 並非all_tab_privs中的所有內容都授予給用戶,並且某些權限在被移除時會造成很大的傷害。 –
@EdGibbs謝謝。從這裏(http://docs.oracle.com/cd/B19306_01/server.102/b14237/statviews_2099.htm)看起來在這個表中它或者授予某個用戶或角色?如果查詢此表,不需要任何條件? – Dreamer