查找用户已明确授予对象权限的所有实例

Nei*_*l P 1 sql-server permissions sql-server-2014

是否可以为某个用户生成用户已获得显式访问权限的对象列表?

我想查看用户拥有明确权限的所有项目的列表,不包括通过角色等继承的任何权限。

Dan*_*her 5

检查sys.database_permissionsDMV,其中包含所有授予和拒绝的权限。

major_id将指向object_idsys.objects,将minor_id指向column_idsys.columns(如适用)。

grantee_principal_idgrantor_principal_id列指向理所当然的,分别给予用户ID,您可以找到sys.database_principals

请记住,权限不仅可以分配给用户,还可以分配给用户可以继承的服务器或数据库角色。此外,授予和拒绝的权限可能会发生冲突,在这种情况下,适用两个规则中更严格的规则。

不久前我写了一个博客系列,其中详细介绍了权限。