sp_syspolicy_update_policy_category_subscription (Transact-SQL)
Обновляет подписку на категорию политики для указанной базы данных.
Применимо для следующих объектов: SQL Server (начиная с SQL Server 2008 до текущей версии). |
Cинтаксические обозначения в Transact-SQL
Синтаксис
sp_syspolicy_update_policy_category_subscription [ @policy_category_subscription_id = ] policy_category_subscription_id
[ , [ @target_type = ] 'target_type' ]
[ , [ @target_object = ] 'target_object' ]
, [ @policy_category = ] 'policy_category'
Аргументы
[ @policy_category_subscription_id= ] policy_category_subscription_id
Идентификатор для обновляемой подписки на категорию политики. Аргумент policy_category_subscription_id имеет тип int и является обязательным.[ @target_type= ] 'target_type'
Целевой тип подписки на категорию. Аргумент target_type имеет тип sysname и значение по умолчанию NULL.Если указывается аргумент target_type, его значением должно быть DATABASE.
[ @target_object= ] 'target_object'
Имя базы данных, которая подписывается на категорию политики. Аргумент target_object имеет тип sysname и значение NULL по умолчанию.[ @policy_category= ] 'policy_category'
Имя категории политики, на которую подписывается база данных. Аргумент policy_category имеет тип sysname и значение NULL по умолчанию.
Значения кода возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Хранимая процедура sp_syspolicy_update_policy_category_subscription должна выполняться в контексте системной базы данных msdb.
Чтобы получить значения для policy_category_subscription_id и для policy_category, можно использовать следующий запрос:
SELECT a.policy_category_subscription_id, a.target_type, a.target_object
, b.name AS policy_category
FROM msdb.dbo.syspolicy_policy_category_subscriptions AS a
INNER JOIN msdb.dbo.syspolicy_policy_categories AS b
ON a.policy_category_id = b.policy_category_id;
Разрешения
Необходимо членство в предопределенной роли базы данных PolicyAdministratorRole.
Примечание по безопасности |
---|
Возможное повышение прав учетных данных. Пользователи с ролью PolicyAdministratorRole могут создавать серверные триггеры и планировать выполнение политик, влияющих на работу экземпляра компонента Компонент Database Engine.Например, пользователи в роли PolicyAdministratorRole могут создать политику, которая запрещает создание большинства объектов в компоненте Компонент Database Engine.Вследствие возможного повышения прав учетных данных роль PolicyAdministratorRole должна предоставляться только пользователям, имеющим право изменять конфигурацию компонента Компонент Database Engine. |
Примеры
В следующем примере существующая подписка на категорию политики обновляется таким образом, что база данных AdventureWorks2012 подписывается на категорию политики Finance.
EXEC msdb.dbo.sp_syspolicy_update_policy_category_subscription @policy_category_subscription_id = 1
, @target_object = 'AdventureWorks2012'
, @policy_category = 'Finance';
GO
См. также
Справочник
Хранимые процедуры управления на основе политик (Transact-SQL)
sp_syspolicy_add_policy_category_subscription (Transact-SQL)
sp_syspolicy_delete_policy_category_subscription (Transact-SQL)