Security
撤銷表所有者的授權選項
我有一個角色
engineer1 | No inheritance, Cannot login | member of {priv_app}
。priv_app 使用者擁有架構中的表。預設情況下,使用者是engineer1 的成員,僅授予他們選擇訪問權限。但是,使用者可能需要更改表是有原因的,因此他們需要使用set role priv_app
. 但是,這賦予了他們表所有者的權利。這是可以接受的,除非使用者可以授予另一個使用者對任何表的 DML 權限。有沒有辦法阻止表所有者授予權限?如果不是,那麼建構安全組的正確方法是什麼,以便使用者可以更改表但不能授予權限。
由@Ziggy Crueltyfree Zeitgeister 的評論回答。
表所有者可以隨心所欲地對錶進行操作:刪除、授予、撤銷等。您可以通過在具有 SECURITY DEFINER 的函式中執行任何所需的 ALTER TABLE 命令來更改表。