Condividi tramite


sp_syspolicy_update_policy_category_subscription (Transact-SQL)

Si applica a: SQL Server

Esegue l'aggiornamento di una sottoscrizione di categoria di criteri per un database specificato.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

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'
[ ; ]

Argomenti

[ @policy_category_subscription_id = ] policy_category_subscription_id

Identificatore della sottoscrizione della categoria di criteri da aggiornare. @policy_category_subscription_id è int ed è obbligatorio.

[ @target_type = ] N'target_type'

Tipo di destinazione della sottoscrizione di categoria. @target_type è sysname, con un valore predefinito .NULL

Se si specifica @target_type, il valore deve essere impostato su DATABASE.

[ @target_object = ] N'target_object'

Nome del database che sottoscriverà la categoria di criteri. @target_object è sysname, con il valore predefinito NULL.

[ @policy_category = ] N'policy_category'

Nome della categoria di criteri a cui si desidera che il database sottoscriva. @policy_category è sysname, con un valore predefinito .NULL

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

È necessario eseguire sp_syspolicy_update_policy_category_subscription nel contesto del msdb database di sistema.

Per ottenere valori per @policy_category_subscription_id e per @policy_category, è possibile usare la query seguente:

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;

Autorizzazioni

Richiede l'appartenenza al ruolo predefinito del database PolicyAdministratorRole .

Importante

Possibile elevazione delle credenziali: gli utenti nel ruolo PolicyAdministratorRole possono creare trigger del server e pianificare esecuzioni di criteri che possono influire sul funzionamento dell'istanza del motore di database. Ad esempio, gli utenti nel ruolo PolicyAdministratorRole possono creare un criterio che può impedire la creazione della maggior parte degli oggetti nella motore di database. A causa di questa possibile elevazione delle credenziali, il ruolo PolicyAdministratorRole deve essere concesso solo agli utenti attendibili con il controllo della configurazione del motore di database.

Esempi

Nell'esempio seguente viene aggiornata una sottoscrizione di categoria di criteri esistente in modo che il AdventureWorks2022 database sottoscriva la Finance categoria di criteri.

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