SQL Sever TSQL脚本如何告诉它具有哪些安全权限?

Mar*_*own 5 sql t-sql sql-server security

我有一个TSQL脚本,用于在我的产品安装过程中设置数据库.这需要一些步骤,所有这些步骤共同需要五分钟左右.有时,此脚本在最后一步失败,因为运行脚本的用户对数据库没有足够的权限.在这种情况下,我希望脚本失败.为此,我希望脚本能够预先测试它拥有的权限.如果脚本运行时具有特定的安全权限,那么有人能指出一种通用的测试方法吗?

编辑:在特定的情况下,我正在考虑它正在尝试做备份,但我有其他事情出错,并希望通用的解决方案.

Kja*_*son 4

select * from fn_my_permissions(NULL, 'SERVER') 
Run Code Online (Sandbox Code Playgroud)

这将为您提供当前会话在服务器上拥有的权限列表

select * from fn_my_permissions(NULL, 'DATABASE')
Run Code Online (Sandbox Code Playgroud)

这将为您提供当前数据库上当前会话的权限列表。

浏览此处获取更多信息