我有一些列已被屏蔽,我如何才能看到有权查看这些字段的用户?
谢谢。
UNMASK 权限是在数据库级别授予的,因此您可以查询
sys.database_permissions
对象以查看哪些数据库主体已被授予该权限。
脚本(改编自https://sqlserverguides.com/sql-server-user-permissions/):
SELECT
Username = pri.name
,[User Type] = pri.type_desc
,Permission = permit.permission_name
,[Permission State] = permit.state_desc
,Class = permit.class_desc
FROM
sys.database_principals pri
LEFT JOIN
sys.database_permissions permit ON
permit.grantee_principal_id = pri.principal_id
WHERE permit.permission_name = 'UNMASK'
您还可以通过右键单击对象资源管理器中的数据库并选择属性 > 权限来在 SSMS 中查看此信息。