授予对存储过程的权限
本主题说明如何在 SQL Server 2012 中使用 SQL Server Management Studio 或 Transact-SQL 授予对存储过程的权限。 可以为数据库中的现有用户、数据库角色或应用程序角色授予权限。
本主题内容
开始之前:
限制和局限
安全性
若要授予对存储过程的权限,请使用:
SQL Server Management Studio
Transact-SQL
开始之前
限制和局限
- 不能使用 SQL Server Management Studio 授予对系统过程或系统函数的权限。 改为使用 GRANT 对象权限。
安全性
权限
授权者(或用 AS 选项指定的主体)自身必须具有此权限(带 GRANT OPTION),或具有隐含所授予权限的更高权限。 需要拥有对该过程所属架构的 ALTER 权限,或对该过程的 CONTROL 权限。 有关详细信息,请参阅 GRANT 对象权限 (Transact-SQL)。
[返回页首]
使用 SQL Server Management Studio
授予对存储过程的权限
在对象资源管理器中,连接到数据库引擎实例,然后展开该实例。
展开**“数据库”、过程所属的数据库以及“可编程性”**。
展开**“存储过程”,右键单击要针对其授予权限的过程,再单击“属性”**。
在**“存储过程属性”中,选择“权限”**页。
若要为用户、数据库角色或应用程序角色授予权限,请单击**“搜索”**。
在**“选择用户或角色”中,单击“对象类型”**以添加或清除所需的用户和角色。
单击**”浏览“**以显示用户或角色列表。 选择应对其授予权限的用户或角色。
在**“显式权限”**网格中,选择要为指定的用户或角色授予的权限。 有关权限的说明,请参阅权限(数据库引擎)。
选择**“授予”指示要为被授权者授予指定的权限。 选择“具有授予权限”**指示被授权者还可以将指定权限授予其他主体。
[返回页首]
使用 Transact-SQL
授予对存储过程的权限
连接到数据库引擎。
在标准菜单栏上,单击**“新建查询”**。
将以下示例复制并粘贴到查询窗口中,然后单击**“执行”**。 该示例授予名为 Recruiting11 的应用程序角色对存储过程 HumanResources.uspUpdateEmployeeHireInfo 的 EXECUTE 权限。
USE AdventureWorks2012;
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
TO Recruiting11;
GO
[返回页首]
请参阅
参考
sys.fn_builtin_permissions (Transact-SQL)