SQL Server 用管理パックの監視構成
このセクションでは、SQL Server 用管理パックの監視構成について説明します。
SQL Server エージェント アラート ルール: 構成の詳細
SQL Server 用管理パックには、次の SQL Server エージェントアラートルールが用意されています。
- Windows 上の MSSQL: 復旧不可能なローカル イベント ログのエラーにより、警告エンジンが停止しました
- Windows 上の MSSQL: SQL ジョブは、正常に完了できませんでした
- Windows 上の MSSQL: サブシステムを読み込めなかったため、ジョブ ステップを実行できません
- Windows 上の MSSQL: エージェントに異常があります。 この数分間応答がありません
- Windows 上の MSSQL: SQL Server エージェントを開始できませんでした
- Windows 上の MSSQL: SQL Server エージェントは自動終了処理を開始しています
- Windows 上の MSSQL: ジョブのステップにより、サブシステムで例外が発生しました
- Windows 上の MSSQL: SQL Server エージェントが SQL Server に接続できません
- Windows 上の MSSQL: ローカル イベント ログを開き直すことができません
既定では、これらのルールは agent 監視 モードで有効になっていますが、operations Manager ではイベント ログからのイベントのリモート コンピューターでの収集が許可されないため、 混在監視 モードでは無効になります。 これを変更するには、 AllowProxying オプションを有効にすることで、これらの各規則をオーバーライドできます。
Note
AllowProxying オプションを有効にすると、リモートでコードが実行される可能性があります。 コンピューターがセキュリティで保護されていることを確認できない限り、このオプションを有効にしないでください。
これらのルールはいずれも、 エージェントなしの監視 モードでは機能しません。SQL on Linux では使用できません。
Always On アラート ルール
SQL Server 用管理パックには、Windows アプリケーション ログに次のイベントが表示される場合にアラートを生成するための 2 つのイベント ルールがあります。
イベント ID 1480、データベース レプリカ ロールが変更されました
イベント ID 19406、可用性レプリカロールの変更
既定では、SQL Server はアプリケーション ログでこれらのイベントを起動しない可能性があります。 これらを有効にするには、次の T-SQL スクリプトを実行します。
sp_altermessage 1480, 'with_log', 'true'
sp_altermessage 19406, 'with_log', 'true'
可用性データベース バックアップの監視
SQL Server 用管理パックには、Microsoft SQL Server によって報告されたデータベースとログ バックアップの存在と有効期間を確認するモニターが用意されています。 これは、SQL インスタンスの master データベースに対してクエリを実行し、バックアップの古さを返すことで行われます。
これらのモニターは、可用性グループ ビューの可用性グループ データベースの可用性状態ロールアップの下にあります。 モニターの一覧は次のとおりです。
- 可用性データベース バックアップ状態モニター
- 可用性データベース ログ バックアップ状態モニター
可用性データベース バックアップ状態モニター
このモニターは可用性データベースの正常性を対象とし、しきい値に従ってデータベースのバックアップの状態を日数で確認します。
既定では、モニターは Availability Group Backup Preferences を追跡しません。 このオーバードライブが有効になっている場合、モニターは可用性グループのバックアップ設定で構成されたバックアップの場所を追跡し、選択したレプリカのバックアップがバックアップの頻度設定に準拠しているかどうかを確認します。
選択した可用性グループのバックアップ設定には、次のようなものがあります。
[セカンダリを優先]
オンラインのレプリカがプライマリ レプリカのみである場合を除き、セカンダリ レプリカでバックアップを実行することを指定します。 オンラインのレプリカがプライマリ レプリカのみである場合は、プライマリ レプリカでバックアップを実行する必要があります。 既定のオプションです。
[セカンダリのみ]
バックアップをプライマリ レプリカでは実行しないことを指定します。 プライマリ レプリカがオンラインの唯一のレプリカである場合、バックアップは行われません。
プライマリ
バックアップを常にプライマリ レプリカで実行することを指定します。 このオプションは、セカンダリ レプリカでバックアップを実行するときにサポートされない差分バックアップの作成など、バックアップ機能が必要な場合に便利です。
[任意のレプリカ]
バックアップを実行するレプリカを選択するときにバックアップ ジョブが可用性レプリカのロールを無視するように指定します。
Note
バックアップ ジョブは、各可用性レプリカのバックアップ優先度などの他の要因を、操作状態と接続状態と組み合わせて評価する場合があります。
次に示す例は、可用性グループのプライマリ レプリカ、のバックアップ ファイルがセカンダリ レプリカにのみ存在するの場合に、トラック設定オプションのオンとオフを切り替える場合です。
Track backup preferences parameter is enabled - both database replicas Availability Database Backup Status monitor is in a Critical state:
バックアップ設定の追跡パラメーターは - primary データベース レプリカに対してのみ可用性データベース のバックアップ状態モニターが Critical 状態です。
可用性データベース ログ バックアップ状態モニター
このモニターは可用性データベースの正常性を対象とし、しきい値に従ってデータベース ログバックアップの状態を分単位で確認します。
可用性データベースロールアップでアラートを監視する
可用性データベース バックアップの状態モニターと可用性データベース ログ バックアップ状態モニターは、ロールアップ ポリシー "任意のメンバーの最適な状態" で構成され、可用性グループ内のデータベースの完全な状態を表示するために、既定でそれぞれのロールアップに重大なアラートが表示されます。
可用性データベースは、多数のレプリカでホストされる可能性がある 1 つのデータベースのエンティティです。これに基づいて、各レプリカにデータベースの状態が表示されないように可用性データベース全体の状態を確認するために、"可用性データベース のバックアップ状態 (ロールアップ)" にのみアラートが表示されます。
ロールアップがクリティカルになり、すべてのデータベース レプリカに重大なデータベース バックアップまたはログ バックアップの状態がある場合にのみアラートが生成されます。 重要なデータベース バックアップまたはログ バックアップの状態を持つレプリカが 1 つだけの場合、ロールアップ ポリシーに従ってロールアップは正常なままです。
ポリシーの監視
SQL Server 用管理パックは、各オブジェクトの PBM (ポリシー ベースの管理) ポリシーの状態を読み取って、ターゲット SQL Server インスタンスにあるデータベースと Always On オブジェクトの正常性メトリックを収集します。
管理パックでは、システム ポリシーに加えて、次のオブジェクトのカスタム ユーザー ポリシーを監視できます。
- データベース
- 可用性グループ
- 可用性レプリカ
- データベース レプリカ
これらのオブジェクトごとに、管理パックには次のモニターがあります。
- Warning 状態の 2 状態モニター。 このモニターは、定義済みの警告カテゴリの 1 つを持つカスタム ユーザー ポリシーの状態を Policy カテゴリとして表示します。
- Error 状態の 2 状態モニター。 このモニターは、定義済みのエラー カテゴリの 1 つを持つカスタム ユーザー ポリシーの状態を Policy カテゴリとして表示します。
領域の監視
SQL Server 用管理パックでは、次のレベルで一連のメトリックを収集することで、領域の監視を実行できます。
- データベース
- [ファイル グループ]
- ファイル
- ログ ファイル
ユニット モニターとパフォーマンス メトリックを使用して、複数のデータベースと長時間の間、この情報を表示できます。
空間監視では、次の種類のメディアがサポートされます。
- ローカル ストレージとマウント ポイント
- クラスター共有ボリューム
- SMB 共有
- Azure Blob
SQL Server 用管理パックをインポートすると、一部の領域監視ワークフローが既定で有効になっているのに対し、他のワークフローは無効になっている場合があります。 環境の負荷を軽減するために、領域の監視はデータベース レベルでのみ有効になり、ファイル グループ、ログ ファイル、インメモリ OLTP コンテナー、および FILESTREAM ファイル グループ レベルでは無効になります。 環境が余分な負荷に敏感な場合は、使用頻度の低いワークフローを有効にすることはお勧めしません。
Note
ファイル グループを監視する場合、アラートは、ファイル グループ内のすべてのファイルが完全に異常な場合にのみスローされます。 ファイル グループに正常なファイルが少なくとも 1 つある場合、アラートは登録されません。
各空間監視ワークフローの既定の状態を説明する一覧を次に示します。
- Windows および Linux の検出を有効にしました
- データベース エンジン
- データベース エンジンのデータベース
- Windows および Linux の無効な検出
- DB ファイル グループ
- DB ファイル
- トランザクション ログ ファイル
- FILESTREAM ファイル グループ
- メモリ最適化データ ファイル グループ
- メモリ最適化データ ファイル グループ コンテナー
- Windows のモニターを有効にする
- データベースの対象
- ROWS データの空き領域 (左)
- LOG Free Space Left
- データベースの対象
- Windows 用の無効なモニター
- データベースの対象
- ROWS データ領域の割合の変更
- インメモリ OLTP データの空き領域 (左)
- FILESTREAM データの空き領域 (左)
- ファイル グループの対象
- DB ファイルの残り空き領域
- ログ ファイルの対象
- DB ログ ファイルの残り空き領域
- インメモリ OLTP データ コンテナーを対象とする
- メモリ最適化データ ファイル グループ コンテナーの空き領域
- FILESTREAM ファイル グループの対象
- DB FILESTREAM ファイル グループ空き領域
- データベースの対象
- Linux 用のモニターを有効にする
- ファイル グループの対象
- DB ファイルの残り空き領域
- ログ ファイルの対象
- DB ログ ファイルの残り空き領域
- インメモリ OLTP データ コンテナーを対象とする
- メモリ最適化データ ファイル グループ コンテナーの空き領域
- ファイル グループの対象
次のモニターでは、"正常性計算モード" のオーバーライドをサポートします。
- FILESTREAM データの空き領域 (左)
- インメモリ OLTP データの空き領域 (左)
- DB ログ ファイルの残り空き領域
- ROWS データの空き領域 (左)
このオーバーライドを使用すると、環境内の空き領域を監視する方法を定義できます。 上のいずれかのモニターに対して、比率 (%) または容量メトリック (MB) として表現される"しきい値" パラメーターに基づいて、正常性状態を追跡するよう指示を出すことができます。 監視をさらに効率化するには、比率 (%) と容量メトリック (MB) のしきい値の両方を同時に使用できます。この場合、最も悪い状態のメトリックが使用されて、全体的な正常性状態が報告されます。
Linux 上の SQL の無効な領域監視ワークフロー
次のワークフローは、SQL Server on Linux によって必要なデータが提供されないため、既定では無効になっています。
- 準則
- Linux 上の MSSQL: DB メモリ最適化データ ファイル グループの空き領域の合計 (MB)
- Linux 上の MSSQL: DB メモリ最適化データ ファイル グループの空き領域の合計 (%)
- Linux 上の MSSQL: DB FILESTREAM ファイル グループの空き領域の合計 (%)
- Linux 上の MSSQL: DB FILESTREAM ファイル グループの空き領域の合計 (MB)
- Linux 上の MSSQL: DB ファイル グループの空き領域の合計 (%)
- Linux 上の MSSQL: DB ファイル グループの空き領域の合計 (MB)
- Linux 上の MSSQL: DB ファイル グループ割り当て済み空き領域 (%)
- Linux 上の MSSQL: DB ファイル グループ割り当て済み空き領域 (MB)
- Linux 上の MSSQL: DB の使用可能な外部スペース (MB)
- Linux 上の MSSQL: DB の割り当て済み空き領域 (MB)
- Linux 上の MSSQL: DB トランザクション ログの空き領域の合計 (%)
- Linux 上の MSSQL: DB の使用されている割り当て領域 (MB)
- Linux 上の MSSQL: DB 空き領域合計 (%)
- Linux 上の MSSQL: DB 空き領域合計 (MB)
- Linux 上の MSSQL: DB 割り当て領域 (MB)
- モニター
- DB 残り空き領域
- DB 空き領域比率の変化
- トランザクション ログの空き領域 (%)
- DB FILESTREAM ファイル グループ空き領域
データベースの状態の監視
データベースの状態の監視は、Microsoft SQL Server によって報告されたデータベースの状態を確認することを目的としています。 状態チェックは、データベースの状態を返す SQL Server インスタンスのマスター データベースに対してクエリを実行することによって行われます。 このモニターからアラートを受け取った場合は、データベースを操作状態に戻すためにアクションが必要です。
ONLINE を除くすべてのデータベース状態は、異常な監視状態になります。 次の表では、データベースの状態を定義します。
都道府県 | Definition |
---|---|
ONLINE | データベースにアクセスできます。 復旧時に行われる元に戻すフェーズが完了していなくても、プライマリ ファイル グループはオンラインです。 |
OFFLINE | データベースは使用できません。 ユーザーの明示的な操作によってデータベースがオフラインになり、ユーザーが新たな操作を行うまでオフラインのままになります。 たとえば、ファイルを新しいディスクに移動するために、データベースをオフラインにできます。 移動の完了後に、データベースをオンラインに戻します。 |
RESTORING | プライマリ ファイル グループの 1 つ以上のファイルが復元中か、1 つ以上のセカンダリ ファイルがオフラインで復元中です。 データベースは使用できません。 |
RECOVERING | データベースが復旧中です。 復旧処理は一時的な状態です。復旧が成功すると、データベースは自動的に online 状態になります。 復旧が失敗すると、データベースは suspect 状態になります。 データベースは使用できません。 |
RECOVERY PENDING | SQL Serve で、復旧中にリソースに関連するエラーが発生しました。 データベースは破損していませんが、ファイルが見つからないか、システム リソースの制限によりデータベースを起動できない可能性があります。 データベースは使用できません。 エラーを解決して復旧処理を完了するには、ユーザーによる新たな操作が必要です。 |
SUSPECT | 少なくともプライマリ ファイル グループが問題のある状態で、破損している可能性があります。 SQL Serve の起動中にはデータベースを復旧できません。 データベースは使用できません。 問題を解決するには、ユーザーによる新たな操作が必要です。 |
EMERGENCY | ユーザーがデータベースを変更し、状態を EMERGENCY に設定しました。 データベースはシングル ユーザー モードになり、修復または復元できます。 データベースは READ_ONLY に設定され、ログ記録が無効になり、アクセスが sysadmin 固定サーバー ロールのメンバーに制限されます。 EMERGENCY は、主にトラブルシューティングの目的で使用されます。 たとえば、suspect に設定されたデータベースを、EMERGENCY 状態に設定できます。 これにより、システム管理者にデータベースへの読み取り専用のアクセスを許可できます。 sysadmin 固定サーバー ロールのメンバーのみが、データベースを EMERGENCY 状態に設定できます。 |
詳細については、「 データベースの状態」を参照してください。
モニターでは、Windows ベースの環境の "可用性グループがオフラインの場合に無効にする" オーバーライドもサポートされています。 このオーバーライドが true に設定されていて、データベースをホストする可用性グループが使用できない場合、モニターはそのようなデータベースの状態の追跡を停止します。 このオーバーライドは、そのアーキテクチャの仕様により SQL Server 2012 の操作時に発生する可能性があるアラート ストームを回避するのに役立ちます。 より高いバージョンの SQL Server では、このオーバーライドは必要ありません。
同じドライブ上の多数のデータベース
管理パックの領域監視は、多くのデータベースが同じメディアを共有し、 自動拡張 設定が有効になっている環境でノイズが発生する可能性があります。 このような場合は、ハード ドライブの空き領域がしきい値に達すると、各データベースについてアラートが生成されます。
ノイズを軽減するには、データ ファイルとトランザクション ログ ファイルの領域監視をオフにし、オペレーティング システム管理パックを使用してハード ドライブ上の領域を監視します。
DB ストレージの待機時間の監視
SQL Server 用管理パックは、 DB ディスク読み取り待ち時間 (ミリ秒) と DB ディスク書き込み待機時間 (ms) 各データベースのパフォーマンス メトリックを収集します。 さらに、管理パックでは、パフォーマンスが大幅に低下した場合にアラートを登録する 2 つの関連モニターを定義します。 これらのモニターとパフォーマンスルールは、既定では無効になっています。 必要に応じて、特定の DB に対してのみ有効にします。
ブロックされているセッション
ブロッキング セッション モニターは、長時間ブロックされたセッションについて各データベースに対してクエリを実行するように設計されています。 ブロックが検出され、指定されたしきい値を超えると、状態が変更され、アラートが発生します。
オーバーライドを適用して、ブロックされたセッションを長時間実行と見なす必要があるかどうかを判断するために使用する WaitMinutes パラメーターを変更できます。 このパラメーターの既定値は 1 分です。
セキュリティ保護可能なリソース構成ステータス モニター
このモニターは、構成された 実行アカウントで、必要な各 SQL Server セキュリティ保護可能なリソースにアクセスできるかどうかを確認します。
SQL Server DB エンジンを対象とするモニターによってチェックされるセキュリティ保護可能なリソースの完全な一覧を次に示します。
サーバー レベルのアクセス許可
- VIEW SERVER STATE
- VIEW ANY DEFINITION
- VIEW ANY DATABASE
動的管理ビューに対する SELECT 権限
- master.sys.dm_hadr_availability_group_states
- master.sys.dm_hadr_availability_replica_states
- master.sys.dm_hadr_database_replica_cluster_states
- master.sys.dm_os_performance_counters
- master.sys.dm_tran_active_transactions
- master.sys.dm_tran_session_transactions
- master.sys.dm_exec_sessions
- master.sys.dm_exec_requests
- master.sys.dm_exec_connections
- master.sys.dm_os_sys_info
- master.sys.dm_os_ring_buffers
- master.sys.dm_os_volume_stats
- master.sys.dm_os_threads
- master.sys.dm_server_services
- master.sys.dm_db_xtp_checkpoint_files
- master.sys.dm_db_xtp_table_memory_stats
- master.sys.dm_db_xtp_hash_index_stats
- master.sys.dm_resource_governor_resource_pools
- master.sys.dm_db_index_physical_stats
カタログ ビューに対する SELECT 権限
- master.sys.dm_os_host_info
- master.sys.availability_groups
- master.sys.databases
- master.sys.database_files
- master.sys.tables
- master.sys.filegroups
- master.sys.syscolumns
- master.sys.sysprocesses
- master.sys.availability_replicas
- master.sys.database_mirroring
- master.sys.configurations
- master.sys.indexes
- msdb.dbo.syspolicy_policies
- msdb.dbo.syspolicy_conditions
- msdb.dbo.syspolicy_policy_execution_history
- msdb.dbo.syspolicy_configuration
- msdb.dbo.syspolicy_system_health_state
- msdb.dbo.syspolicy_object_sets
- msdb.dbo.syspolicy_policy_categories
- msdb.dbo.syspolicy_target_sets
- msdb.dbo.syspolicy_target_set_levels
- msdb.dbo.syspolicy_policy_execution_history_details
- msdb.dbo.sysjobschedules
- msdb.dbo.syscategories
- msdb.dbo.sysjobs_view
- msdb.dbo.sysjobactivity
- msdb.dbo.sysjobhistory
- msdb.dbo.syssessions
- msdb.dbo.log_shipping_primary_databases
- msdb.dbo.log_shipping_secondary_databases
- msdb.dbo.backupset
ストアド プロシージャに対する EXECUTE 権限
- master.sys.sp_enumerrorlogs
- master.sys.xp_readerrorlog
- master.sys.xp_instance_regread
- msdb.dbo.sp_help_job
- msdb.dbo.agent_datetime
- msdb.dbo.SQLAGENT_SUSER_SNAME
SQL Server データベースを対象とするモニターによってチェックされるセキュリティ保護可能なリソースの完全な一覧を次に示します。
- カタログ ビューに対する SELECT 権限
- sys.database_files
- sys.tables
- sys.filegroups
- sys.syscolumns
Note
モニターによっては、名前に二重アンダースコアを持つプロパティが含まれる場合があります。 このようなプロパティは、内部管理パックの目的で使用されます。使用しないようにしてください。
WMI 正常性状態モニター
このモニターは、構成された Run As Account がターゲット SQL Server にある次の名前空間にアクセスできるかどうかを確認します。
- ROOT\CIMV2
- ROOT\Microsoft\SqlServer
- ROOT\Microsoft\SqlServer\ComputerManagement11
- ROOT\Microsoft\SqlServer\ComputerManagement12
- ROOT\Microsoft\SqlServer\ComputerManagement13
- ROOT\Microsoft\SqlServer\ComputerManagement14
- ROOT\Microsoft\SqlServer\ComputerManagement15
- ROOT\Microsoft\SqlServer\ComputerManagement16
モニターは、上記の名前空間にアクセスできない場合にアラートを生成します。
SQL Server エージェント ジョブの監視
SQL Server 用管理パックは、次のワークフローを使用して、SQL Server の可用性とパフォーマンスの監視エージェント ジョブを実行できます。
最終実行状態モニター
このモニターは、SQL エージェント上のすべてのジョブをチェックし、いずれかのジョブが正常に完了しなかった場合、モニターはその状態を警告に変更します。 アラートを無効にしてノイズを制御するオーバーライドがあるため、アラートは生成されません。 このレベルの監視が必要な場合は、 Generates Alerts をオーバーライドし 有効に戻す必要があります。
モニターには、 失敗しきい値の数 オーバーライドがあります。これは、モニターの状態が警告に変更されるまでに SQL エージェント ジョブが失敗する回数を示します。 オーバーライド 取り消された状態を失敗として定義します は、取り消されたジョブの最後の実行状態を失敗として追跡できます。
実行時間の長いジョブ モニター
このモニターは、SQL Server の長時間実行エージェント ジョブを確認します。 ジョブが構成されたしきい値 ( 警告しきい値 (分) と Critical Threshold (minutes)) よりも長く実行されている場合は、警告またはエラー アラートが表示されます。
既定では、このモニターでは、スケジュールの種類が SQL Server エージェント開始時に自動的に開始されるジョブは監視されませんこれらのジョブは SQL エージェントが停止するまで (つまり継続的に) 実行されることが多いためです。 通常、SQL Server レプリケーションはそのようなジョブを使用しますが、場合によっては、SQL Server エージェント開始時に Start を持つジョブが自動的に開始スケジュールの種類が比較的短い間隔で実行される場合があります。 これらのジョブを監視するには、パラメーター 連続して実行されるジョブを ジョブ名のコンマ区切りリストでオーバーライドします。 一覧のジョブ名は、次のいずれかの識別子クラスの要件を満たしている必要があります。
Regular
- コンマ記号 (,) と二重引用符 (") を除く任意の文字を含めることができます。
- 空白文字で開始または終了しないでください。
区切り
- 任意の文字を含めることができるので、二重引用符で区切る必要があります。
- 二重引用符は 2 倍にしてエスケープする必要があります。
上記のいずれかのクラスに属する名前は、区切り文字を除き、1 ~ 128 文字にする必要があります。
ジョブ期間モニター
このモニターは、SQL エージェント上のすべてのジョブをチェックし、ジョブのいずれかが指定されたしきい値より長くかかるかどうかを確認します。 ジョブの期間が構成されたしきい値 ( Warning Threshold (minutes) と Critical Threshold (minutes)) よりも長い場合は、警告またはエラー アラートが表示されます。 アラートを無効にしてノイズを制御するオーバーライドがあるため、アラートは生成されません。 このレベルの監視が必要な場合は、 Generates Alerts をオーバーライドするか 有効に戻すか、 ジョブ期間アラート ルールを使用する必要があります。
ジョブ期間アラート ルール
この規則は、SQL エージェント ジョブの実行時間が指定されたしきい値 (分) を超えたかどうかを確認し、実行時間がしきい値を超えた場合にアラートをスローします。
ジョブ期間のパフォーマンス ルール
このルールでは、任意の SQL エージェント ジョブの期間が分単位で収集されます。
SQL Server 接続暗号化証明書の監視
SQL Server 用管理パックには、SQL Server 接続暗号化証明書の状態を実行できるモニターが用意されています。
SQL Server で TLS を使用して、SQL Server のインスタンスとクライアント アプリケーション間でネットワーク送信されるデータを暗号化できます。 暗号化は TLS で証明書を使用して実装されます。 TLS 暗号化を有効にすると、SQL Server のインスタンスとアプリケーション間でネットワーク送信されるデータのセキュリティが強化されます。 詳細については、Certificate の概要およびCertificate プロシージャに関する記事を参照してください。
このモニターは、Windows および Linux 上のSQL Server DB エンジンを対象とし、証明書の検証期間 (日数) と証明書の要件を確認します。
重要
コンピューター ストアに証明書が存在する場合、SQL Server は起動しませんが、上記の一覧の一部の要件のみを満たし、SQL Server 構成マネージャーまたはレジストリ エントリを使用して手動で構成されている場合 (Windows 上の SQL Server のみ)。 すべての要件を満たす別の証明書を選択するか、要件を満たす証明書をプロビジョニングできるようになるまで、SQL Server で使用されないように証明書を削除します。 詳細については、 暗号化用の SQL Server の構成 に関する記事を参照してください。
次の表は、モニターのオーバーライド パラメーターを定義し、SQL Server の証明書検証要件を微調整します。
名前をオーバーライドする | 説明 |
---|---|
確認する追加のホスト名 | 既定では、モニターは、証明書にターゲット DB エンジンのプリンシパル名が含まれていることを確認します。 このオーバーライドにより、Always On リスナー DNS 名、ホスト マシンの DNS エイリアス、FCI 仮想名などの追加のホスト名のコンマ区切りの一覧でチェックできます。 |
証明書を構成する必要があります (Windows 上の SQL Server のみ) | true の場合、DB エンジンに明示的に構成された証明書がない場合、モニターはその状態を Critical に変更します。 |
[信頼されていないルート] チェックを無視する | true の場合、モニターは、証明書が信頼されたルート証明機関に配置されていないことを無視します。 これらの証明書が配置されている場合、これらの証明書はオペレーティング システムによって信頼され、公開キー 基盤 (PKI) 階層とデジタル証明書が信頼できる参照としてアプリケーションで使用できます。 |
フラグ 'IgnoreCertificateAuthorityRevocationUnknown' を設定します | 証明書の検証を決定するときに、証明機関の失効が不明であることを無視します。 |
フラグ 'IgnoreCtlNotTimeValid' を設定する | 証明書の検証を決定するときに、CTL の有効期限が切れているなどの理由で、証明書信頼リスト (CTL) が無効であることを無視します。 |
フラグ 'IgnoreCtlSignerRevocationUnknown' を設定する | 証明書の検証を決定するときに、証明書信頼リスト (CTL) 署名者の失効が不明であることを無視します。 |
フラグ 'IgnoreEndRevocationUnknown' を設定する | 証明書の検証を決定するときに、エンド証明書 (ユーザー証明書) の失効が不明であることを無視します。 |
フラグ 'IgnoreInvalidBasicConstraints' を設定する | 証明書の検証を決定するときに、基本制約が無効であることを無視します。 |
フラグ 'IgnoreInvalidPolicy' を設定する | 証明書の検証を決定するときに、証明書に無効なポリシーがあることを無視します。 |
フラグ 'IgnoreNotTimeNested' を設定する | CA (証明機関) 証明書と発行された証明書の有効期間が、証明書の検証時に入れ子になっていないことを無視します。 たとえば、CA の証明書が 1 月 1 日から 12 月 1 日まで有効であり、発行された証明書が 1 月 2 日から 12 月 2 日まで有効である場合は、有効期間が入れ子になっていないことを意味します。 |
フラグ 'IgnoreNotTimeValid' を設定する | 有効期限が切れているか、証明書の有効性を判断するときにまだ有効になっていないため、無効なチェーン内の証明書は無視します。 |
フラグ 'IgnoreRootRevocationUnknown' を設定する | 証明書の検証を決定するときに、ルート失効が不明であることを無視します。 |
フラグ 'IgnoreWrongUsage' を設定する | 証明書の検証を決定するときに、現在の使用に対して証明書が発行されなかったことを無視します。 |
[ホスト名] チェックをスキップする | true の場合、モニターは証明書に特定のホスト名が含まれていることの確認をスキップします。 |
[キー使用法サーバー認証] チェックをスキップする | true の場合、モニターは、キーの使用拡張機能 "サーバー認証" が存在するサーバーの認証証明書の要件をスキップします。 一部の接続ドライバーの実装では、この拡張機能の存在を確認できない場合があり、拡張機能がなくても証明書が有効であると見なされる場合があります。 |
'失効' チェックをスキップする | true の場合、モニターは失効に関連するすべての問題を無視します。 |
Transparent Data Encryption (TDE) 証明書のバックアップ状態の監視
SQL Server 用管理パックには、データベース暗号化キーの暗号化に使用される証明書がバックアップされていないことを確認できるモニターが用意されています。
Transparent Data Encryption (TDE) は、データベース暗号化キーと呼ばれる対称キーを使用して、データベース全体のストレージを暗号化します。 データベース暗号化キーは、master データベースのデータベース マスター キーによって保護される証明書を使用して保護することもできます。 TDE では、データとログ ファイルの I/O 暗号化とその解除をリアルタイムで行います。 暗号化では、データベース暗号化キー (DEK) が使用されます。 データベース ブート レコードでは、回復中に使用できるようにキーを格納します。 DEK は対称キーであり、サーバーのマスター データベースが格納する証明書、または EKM モジュールが保護する非対称キーによって保護されます。 TDE では、保存データ (データとログ ファイル) が保護されます。 これにより、ユーザーは多くの法律、規制、およびさまざまな業界で制定されたガイドラインに従うことになります。 この機能により、ソフトウェア開発者は、既存のアプリケーションを変更することなく、AES および 3DES 暗号化アルゴリズムを使用してデータを暗号化できます。 詳細については、
Note
TDE はシステム データベースでは使用できません。 master、、model、または msdb の暗号化には使用できません。 tempdb は、ユーザー データベースが TDE を有効にしたときに自動的に暗号化されますが、直接暗号化することはできません。
実行時間の長いクエリの監視
SQL Server 用管理パックには、実行中の SQL クエリの実行時間が指定されたしきい値 (秒単位) を超えた場合にアラートを生成できるルールが用意されています。
このルールでは、次のオーバーライドを使用したアラートカスタマイズのフィルター処理がサポートされています。
- アプリケーション除外リスト - アプリケーション名でクエリを除外する場合
- データベース除外リスト - データベース名でクエリを除外する場合
- クエリ除外リスト - カスタム クエリ テキストを使用してクエリを除外する場合
これらのオーバーライドはワイルドカードをサポートしており、アプリケーション名、データベース名、またはクエリ テキスト自体をコンマ区切りの値で使用して実行時間の長いクエリを除外するために使用できます。 たとえば、*test
などの条件を使用して、_test
で終わるクエリを除外したり、Test
で始まるクエリを除外Test*
したり、*test*
条件を使用してクエリ テキストの任意の部分にtest
エントリを含むクエリを除外したりできます。
ワイルドカード、二重引用符 (")、円記号 (\) ではないアスタリスク (*) を要素に含める必要がある場合、要素は円記号 \
でエスケープする必要があります。 たとえば、 Query\*3
などの条件を使用して、クエリ テキストに Query*3
があるクエリを除外したり、 \\path\\to\\
などの条件を使用してクエリ テキストに \path\to\
を持つクエリを除外したり、 "GO, WITH"
条件を使用してクエリ テキスト内にコンマで "GO, WITH"
エントリを持つクエリを除外したりできます。 除外リストを使用したオーバーライドは同時に使用できます。
次の表では、式で使用できるワイルドカード パターンを定義します。
文字 | 説明 | 例 |
---|---|---|
? | 任意の 1 文字に相当します。 疑問符 (?) は、文字列内の任意の場所で使用できます。 | ケル? は、Query、Query1、Quer_、Query?、Query*、Query1、または Queries を検索します。 |
* | 任意の数の文字に一致します。 アスタリスク (*) は、文字列内の任意の場所で使用できます。 | DB* は DB、DB1、DB2、DB_prodを検出しますが、1DB またはデータベースは検出しません。 *DB は 1DB、_DB、test-DB を検出しますが、1DB_prodやD_Baseは検出しません。 *DB* は、cloudDB_1、DBtest、3DB を検出しますが、prod_D_Bまたはデータベースは検出しません。 |
" | 任意の数の文字を二重引用符で囲みます。 文字列内の任意の場所で二重引用符 (" ") を使用できます。 文字列にコンマが含まれている場合は、文字列を引用符で囲む必要があります。 | "Instance, Database" は、インスタンス、データベース文字列をコンマで区切って検索しますが、インスタンス文字列は個別に検索せず、データベース文字列を個別に検索します。 "先頭と末尾のスペースを含むクエリ" は、二重引用符に含まれるすべてのスペースを含むエントリを検索します。 |
次の表は、式で使用できるエスケープ パターンを定義しています。
文字 | 説明 | 例 |
---|---|---|
\* | ワイルドカードではありません。 文字列内の任意の場所でアスタリスク (*) をエスケープします。 | dbname\* は dbname* を検索しますが、dbname1、dbname_prod、dbname は検索しません。 |
\" | ワイルドカードではありません。 文字列内の任意の場所で二重引用符 (") をエスケープします。 | query \"example\" はクエリ "example" を検索しますが、query\、query example、または "example" は検索しません。 |
\\ | ワイルドカードではありません。 文字列内の任意の場所で円記号 (\) をエスケープします。 | C:\\Path\\to\\ は C:\Path\to\ を検索しますが、C:\、Path\\to は検索しません。 |
Note
この規則では、セキュリティ上の理由からクエリを実行するテキストは提供されません。