【发布时间】:2016-02-24 12:41:43
【问题描述】:
我需要知道特定用户的所有表,比如“Abc”有任何(读、写)访问权限。
这在 db2 中可行吗?
【问题讨论】:
标签: sql db2 database-schema
我需要知道特定用户的所有表,比如“Abc”有任何(读、写)访问权限。
这在 db2 中可行吗?
【问题讨论】:
标签: sql db2 database-schema
尝试SYSIBMADM.PRIVILEGES 管理视图。您可以在DB2 Knowledge Center 中找到更多相关信息:
SELECT AUTHID, PRIVILEGE, OBJECTNAME, OBJECTSCHEMA
FROM SYSIBMADM.PRIVILEGES WHERE OBJECTTYPE='TABLE' AND AUTHID='userID'
【讨论】:
ROLE 或GROUP 或用户可能拥有(或继承)的某些权限继承的权限。如果您还需要间接特权,最好提出一个新的 SO 问题。
请使用下方获取用户列表、对应表和访问类型(删除、修改、更新、选择等),
SELECT GRANTE,TTNAME,GRANTOR,DATEGRANTED,GRANTEETYPE,SELECTAUTH,ALTERAUTH,DELETEAUTH,INDEXAUTH,INSERTAUTH,DBNAME,SCREATOR,STNAME,
TCREATOR , AUTHHOWGOT , 时间戳 , TIMEGRANTED
, UPDATECOLS ,
UPDATEAUTH , IBMREQD , GRANTEELOCATION , 位置 ,
“碰撞”,CONTOKEN,CAPTUREAUTH,REFERENCESAUTH,REFCOLS,
GRANTEDTS , TRIGGERAUTH , GRANTORTYPE
FROM "SYSIBM".SYSTABAUTH
WHERE ( GRANTOR like '%'
AND GRANTE like '%' ) ;
【讨论】: