You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MS SQL中如何为角色授予特定存储过程的执行权限?

为SQL Server角色授予存储过程执行权限的方法

嘿,这事儿其实比你想的简单多了!既然你已经知道怎么给单个用户授权,那给角色授权的逻辑是一致的——直接把权限授予角色本身就行,不用挨个给角色里的用户操作。

角色的核心作用就是批量管理权限,当你把EXECUTE权限授予角色YY后,所有隶属于这个角色的用户(包括你提到的用户XX)都会自动继承这个权限,后续新增到该角色的用户也会自动获得权限,省了不少重复操作的功夫。

具体执行语句

GRANT EXECUTE ON [storedProcName] TO [YY]

验证权限是否生效(可选)

如果你想确认角色YY已经成功获取了该存储过程的执行权限,可以运行下面的查询语句:

SELECT 
    dp.state_desc,
    dp.permission_name,
    dpri.name AS role_name,
    OBJECT_NAME(dp.major_id) AS procedure_name
FROM sys.database_permissions dp
JOIN sys.database_principals dpri ON dp.grantee_principal_id = dpri.principal_id
WHERE 
    dpri.name = 'YY'
    AND dp.permission_name = 'EXECUTE'
    AND OBJECT_NAME(dp.major_id) = 'storedProcName'

如果查询结果返回对应的数据,就说明权限已经成功授予啦。

内容的提问来源于stack exchange,提问作者codeNinja

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:22:57