Partager via


sp_syspolicy_update_policy_category_subscription (Transact-SQL)

S'applique à : SQL Server

Met à jour un abonnement aux catégories de stratégies pour une base de données spécifiée.

Conventions de la syntaxe Transact-SQL

Syntaxe

sp_syspolicy_update_policy_category_subscription
    [ @policy_category_subscription_id = ] policy_category_subscription_id
    [ , [ @target_type = ] N'target_type' ]
    [ , [ @target_object = ] N'target_object' ]
      , [ @policy_category = ] N'policy_category'
[ ; ]

Arguments

[ @policy_category_subscription_id = ] policy_category_subscription_id

Identificateur de l’abonnement de catégorie de stratégie que vous souhaitez mettre à jour. @policy_category_subscription_id est int, et est obligatoire.

[ @target_type = ] N’target_type'

Type cible de l’abonnement de catégorie. @target_type est sysname, avec la valeur par défaut NULL.

Si vous spécifiez @target_type, la valeur doit être définie sur DATABASE.

[ @target_object = ] N’target_object'

Nom de la base de données qui s’abonnera à la catégorie de stratégie. @target_object est sysname, avec la valeur par défaut NULL.

[ @policy_category = ] N’policy_category'

Nom de la catégorie de stratégie à laquelle vous souhaitez que la base de données s’abonne. @policy_category est sysname, avec la valeur par défaut NULL.

Valeurs des codes de retour

0 (réussite) or 1 (échec).

Notes

Vous devez exécuter sp_syspolicy_update_policy_category_subscription dans le contexte de la msdb base de données système.

Pour obtenir des valeurs pour @policy_category_subscription_id et pour @policy_category, vous pouvez utiliser la requête suivante :

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;

autorisations

Nécessite l’appartenance au rôle de base de données fixe PolicyAdministratorRole .

Important

Élévation possible des informations d’identification : les utilisateurs du rôle PolicyAdministratorRole peuvent créer des déclencheurs de serveur et planifier des exécutions de stratégie qui peuvent affecter l’opération de l’instance du Moteur de base de données. Par exemple, les utilisateurs du rôle PolicyAdministratorRole peuvent créer une stratégie qui peut empêcher la plupart des objets d’être créés dans le Moteur de base de données. En raison de cette élévation possible d’informations d’identification, le rôle PolicyAdministratorRole doit être accordé uniquement aux utilisateurs approuvés pour contrôler la configuration du Moteur de base de données.

Exemples

L’exemple suivant met à jour un abonnement de catégorie de stratégie existant afin que la AdventureWorks2022 base de données s’abonne à la Finance catégorie de stratégie.

EXEC msdb.dbo.sp_syspolicy_update_policy_category_subscription
    @policy_category_subscription_id = 1,
    @target_object = 'AdventureWorks2022',
    @policy_category = 'Finance';
GO