sp_syspolicy_update_policy_category_subscription (Transact-SQL)
適用於:SQL Server
更新指定資料庫的原則類別目錄訂用帳戶。
語法
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'
[ ; ]
引數
[ @policy_category_subscription_id = ] policy_category_subscription_id
您要更新之原則類別目錄訂用帳戶的識別碼。 @policy_category_subscription_id為 int,且為必要專案。
[ @target_type = ] N'target_type'
類別訂用帳戶的目標類型。 @target_type為 sysname,預設值為 NULL
。
如果您指定 @target_type,值必須設定為 DATABASE
。
[ @target_object = ] N'target_object'
將訂閱原則類別目錄的資料庫名稱。 @target_object為 sysname,預設值為 NULL
。
[ @policy_category = ] N'policy_category'
您要資料庫訂閱的原則類別目錄名稱。 @policy_category為 sysname 預設值為 NULL
。
傳回碼值
0
(成功) 或 1
(失敗)。
備註
您必須在系統資料庫的內容msdb
中執行sp_syspolicy_update_policy_category_subscription
。
若要取得 @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 角色中的使用者可以建立伺服器觸發程式和排程可能會影響 資料庫引擎 實例作業的原則執行。 例如,PolicyAdministratorRole 角色中的使用者可以建立原則,以防止在 資料庫引擎 中建立大部分物件。 由於此可能的認證提升,PolicyAdministratorRole 角色應該只授與信任且可控制 資料庫引擎 組態的使用者。
範例
下列範例會更新現有的原則類別目錄訂用帳戶,讓 AdventureWorks2022
資料庫訂閱原則 Finance
類別目錄。
EXEC msdb.dbo.sp_syspolicy_update_policy_category_subscription
@policy_category_subscription_id = 1,
@target_object = 'AdventureWorks2022',
@policy_category = 'Finance';
GO