次の方法で共有


sp_syspolicy_configure (Transact-SQL)

適用対象: SQL サーバー

ポリシー ベースの管理を有効にするかどうかなど、ポリシー ベースの管理の設定を構成します。

Transact-SQL 構文表記規則

構文

sp_syspolicy_configure
    [ @name = ] N'name'
    , [ @value = ] value
[ ; ]

引数

[ @name = ] N'name'

構成する設定の名前。 @namesysname 必須であり、NULL または空の文字列にすることはできません。

@name には、次のいずれかの値を指定できます。

  • Enabled - ポリシー ベースの管理が有効かどうかを決定します。

  • HistoryRetentionInDays - ポリシー評価履歴を保持する日数を指定します。 0に設定すると、履歴は自動的に削除されません。

  • LogOnSuccess - ポリシー ベースの管理がポリシーの評価に成功したかどうかを示します。

[ @value = ] value

@nameの指定した値に関連付けられている値。 @valuesql_variantであり、必須です。

  • @nameに [有効] を指定した場合は、次のいずれかの値を使用できます。

    • 0 - ポリシー ベースの管理を無効にします。
    • 1 - ポリシー ベースの管理を有効にします。
  • @nameHistoryRententionInDaysを指定する場合は、日数を整数値として指定します。

  • @nameLogOnSuccessを指定する場合は、次のいずれかの値を使用できます。

    • 0 - 失敗したポリシー評価のみをログに記録します。
    • 1 - ポリシーの評価の成功と失敗の両方をログに記録します。

リターン コードの値

0 (成功) または 1 (失敗)。

解説

msdb システム データベースのコンテキストでsp_syspolicy_configureを実行する必要があります。

これらの設定の現在の値を表示するには、 msdb.dbo.syspolicy_configuration システム ビューに対してクエリを実行します。

アクセス許可

PolicyAdministratorRole 固定データベース ロールのメンバーシップが必要です。

重要

資格情報の昇格の可能性: PolicyAdministratorRole ロールのユーザーは、サーバー トリガーを作成し、データベース エンジンのインスタンスの操作に影響を与える可能性があるポリシーの実行をスケジュールできます。 たとえば、PolicyAdministratorRole ロールのユーザーは、ほとんどのオブジェクトがデータベース エンジンで作成されないようにできるポリシーを作成できます。 この資格情報が昇格される可能性があるため、PolicyAdministratorRole ロールは、データベース エンジンの構成の制御に信頼されているユーザーにのみ付与する必要があります。

次の例では、ポリシー ベースの管理を有効にします。

EXEC msdb.dbo.sp_syspolicy_configure
    @name = N'Enabled',
    @value = 1;
GO

次の例では、ポリシー履歴の保持期間を 14 日に設定します。

EXEC msdb.dbo.sp_syspolicy_configure
    @name = N'HistoryRetentionInDays',
    @value = 14;
GO

次の例では、成功したポリシー評価と失敗したポリシー評価の両方をログに記録するようにポリシー ベースの管理を構成します。

EXEC msdb.dbo.sp_syspolicy_configure
    @name = N'LogOnSuccess',
    @value = 1;
GO