如何在 IBM DB2 Z/OS 和 SQL 中显示对 table 的当前权限
How to show present privileges on table in IBM DB2 Z/OS with SQL
是否有 SQL 方法来显示 table 或 DB2 Z/OS 中的视图的权限?我想实现这样的目标:
select * from sysibm.magic_table where table_name = 'users'
|TABLE_NAME|PRIVILEGE_TYPE|USER_OR_GROUP_NAME|
| USERS| INSERT| ANDI|
| USERS| SELECT| ADMINS|
这可能吗?
此查询告诉 grantee
列中的用户/角色名称以及 ...auth
列中的各种分配的权限,其中 Y
= 正确存在,G
=正确的礼物和将其授予他人的权利。
SELECT
grantee,
screator,
stname,
tcreator,
ttname,
updatecols,
alterauth,
deleteauth,
indexauth,
insertauth,
selectauth,
updateauth
FROM
SYSIBM.SYSTABAUTH
WHERE
TTNAME = 'MY_TABLE'
AND TCREATOR = 'MY_SCHEMA'
示例结果集:
|GRANTEE |SCREATOR |STNAME |TCREATOR |TTNAME |UPDATECOLS|ALTERAUTH|DELETEAUTH|INDEXAUTH|INSERTAUTH|SELECTAUTH|UPDATEAUTH|
============================================================================================================================
|MY_SCHEMA|MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | G| | G| G| G|
|USER2 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|USER3 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|GROUP1 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|GROUP2 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|GROUP3 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | | | | Y| |
|GROUP4 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
IBM documentation of SYSIBM.SYSTABAUTH(感谢@mustaccio)
是否有 SQL 方法来显示 table 或 DB2 Z/OS 中的视图的权限?我想实现这样的目标:
select * from sysibm.magic_table where table_name = 'users'
|TABLE_NAME|PRIVILEGE_TYPE|USER_OR_GROUP_NAME|
| USERS| INSERT| ANDI|
| USERS| SELECT| ADMINS|
这可能吗?
此查询告诉 grantee
列中的用户/角色名称以及 ...auth
列中的各种分配的权限,其中 Y
= 正确存在,G
=正确的礼物和将其授予他人的权利。
SELECT
grantee,
screator,
stname,
tcreator,
ttname,
updatecols,
alterauth,
deleteauth,
indexauth,
insertauth,
selectauth,
updateauth
FROM
SYSIBM.SYSTABAUTH
WHERE
TTNAME = 'MY_TABLE'
AND TCREATOR = 'MY_SCHEMA'
示例结果集:
|GRANTEE |SCREATOR |STNAME |TCREATOR |TTNAME |UPDATECOLS|ALTERAUTH|DELETEAUTH|INDEXAUTH|INSERTAUTH|SELECTAUTH|UPDATEAUTH|
============================================================================================================================
|MY_SCHEMA|MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | G| | G| G| G|
|USER2 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|USER3 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|GROUP1 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|GROUP2 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
|GROUP3 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | | | | Y| |
|GROUP4 |MY_SCHEMA|MY_TABLE|MY_SCHEMA|MY_TABLE| | | Y| | Y| Y| Y|
IBM documentation of SYSIBM.SYSTABAUTH(感谢@mustaccio)