当前位置:  开发笔记 > 数据库 > 正文

MS SQL Server:检查用户是否可以执行存储过程

如何解决《MSSQLServer:检查用户是否可以执行存储过程》经验,为你挑选了1个好方法。

如何检查用户是否可以在MS SQL服务器中执行存储过程?

我可以通过连接到master数据库并执行以下内容来查看用户是否具有显式执行权限:

databasename..sp_helpprotect 'storedProcedureName', 'username'

但是,如果用户是具有执行权限的角色的成员,则sp_helprotect将无法帮助我.

理想情况下,我希望能够打电话

databasename..sp_canexecute 'storedProcedureName', 'username'

这将返回一个布尔.



1> Cade Roux..:

fn_my_permissionsHAS_PERMS_BY_NAME


我不认为这些函数回答了原始问题,即检查**_任何给定用户_**是否对给定的存储过程具有执行权限.两个函数的MSDN文章都说它们只返回**_调用主体_**的权限,而不是任何主体.
推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有