我正在尝试为SQL Server 2008 R2上的特定数据库查找特定用户的权限。
我的数据库是testDB
,用户名是testUser
。
这是我正在使用的脚本
SELECT
dp.type_desc AS principal_type_desc,
dbp.class_desc,
OBJECT_NAME(dbp.major_id) AS object_name,
dbp.permission_name,
dbp.state_desc AS permission_state_desc
FROM
sys.database_permissions dbp
INNER JOIN
sys.database_principals dp ON dbp.grantee_principal_id = dp.principal_id
WHERE
USER_NAME(dbp.grantee_principal_id) = 'TestUser'
不确定如何获取特定数据库中特定用户的权限
答案 0 :(得分:1)
如果您是sa,则可以更改上下文,然后使用内置函数
execute as Login = 'testUser';
select * from sys.fn_my_permissions(NULL,'Database')