如何在db2中列出数据库的特定用户访问类型

时间:2018-06-26 10:16:09

标签: db2 db2-luw

用户“ XX”存在于组“ YY”下。我想找到数据库用户“ xx”的访问类型。我可以使用哪个查询?

我正在将Linux环境与Db2 v10.5配合使用

1 个答案:

答案 0 :(得分:0)

以下查询返回指定USERID的所有特权:

SELECT distinct p.AUTHID, p.PRIVILEGE, p.OBJECTNAME, p.OBJECTSCHEMA, p.OBJECTTYPE
FROM SYSIBMADM.PRIVILEGES P, SYSIBMADM.AUTHORIZATIONIDS A,
TABLE (SYSPROC.AUTH_LIST_GROUPS_FOR_AUTHID('HLOESER')) as U 
WHERE p.privilege='CREATEIN' and a.authidtype='G' and a.authid=p.authid
AND (u.group=a.authid or a.authid='PUBLIC')
UNION
SELECT distinct p.AUTHID, p.PRIVILEGE, p.OBJECTNAME, p.OBJECTSCHEMA, p.OBJECTTYPE
FROM SYSIBMADM.PRIVILEGES P
WHERE p.authid='USERID'

查询来自此blog post on using the Db2 administrative views and routines。如果不考虑WHERE子句,它将为您提供所有用户的表。