sp_syspolicy_rename_policy (Transact-SQL)
在基于策略的管理中重命名现有策略。
适用范围:SQL Server(SQL Server 2008 至当前版本)。 |
语法
sp_syspolicy_rename_policy { [ @name = ] 'name' | [ @policy_id = ] policy_id }
, [ @new_name = ] 'new_name'
参数
[ @name= ] 'name'
您要重命名的策略的名称。 name 是 sysname,并且如果 policy_id 为 NULL,则必须指定。[ @policy_id= ] policy_id
您要重命名的策略的标识符。 policy_id 是 int,并且如果 name 为 NULL,则必须指定。[ @new_name= ] 'new_name'
策略的新名称。 new_name 的数据类型为 sysname 且是必需的。 不能为 NULL 或空字符串。
返回代码值
0(成功)或 1(失败)
注释
您必须在 msdb 系统数据库的上下文中运行 sp_syspolicy_rename_policy。
必须指定 name 或 policy_id 的值。 两者不能均为 NULL。 若要获取这些值,请查询 msdb.dbo.syspolicy_policies 系统视图。
权限
要求具有 PolicyAdministratorRole 固定数据库角色的成员身份。
安全说明 |
---|
可能的凭据提升:具有 PolicyAdministratorRole 角色的用户可以创建服务器触发器并计划策略执行,这可能会影响 数据库引擎 实例的正常运行。例如,具有 PolicyAdministratorRole 角色的用户可以创建一个策略,它可能会禁止在数据库引擎中创建大多数对象。由于这种可能的凭据提升,只应将 PolicyAdministratorRole 角色授予可信任其控制数据库引擎配置的用户。 |
示例
下面的示例将名为“Test Policy 1”的策略重命名为“Test Policy 2”。
EXEC msdb.dbo.sp_syspolicy_rename_policy @name = N'Test Policy 1'
, @new_name = N'Test Policy 2';
GO