WMI Provider for Configuration Management の操作

適用対象:SQL Server

この記事では、WMI Provider for Computer Management を使用してプログラミングする方法に関するガイダンスを提供します。

バインド

WMI Provider for Configuration Management は、COM オブジェクト モデルであり、事前バインドも遅延バインドもサポートしています。 遅延バインディングでは、VBScript などのスクリプト言語を使用して、SQL Server サービス、ネットワーク設定、エイリアスをプログラムで操作できます。

接続文字列の指定

アプリケーションは、プロバイダーによって定義された WMI 名前空間に接続することで、WMI Provider for Configuration Management を SQL Server のインスタンスに転送します。 Windows WMI サービスは、この名前空間をプロバイダー DLL にマップし、DLL をメモリに読み込みます。 SQL Serverのすべてのインスタンスは、単一の WMI 名前空間で表されます。

名前空間の既定値は次の形式です。 形式では、 VV はSQL Serverのメジャー バージョン番号です。 番号は、 を実行 SELECT @@VERSION;して検出できます。

\\.\root\Microsoft\SqlServer\ComputerManagementVV

PowerShell を使用して接続する場合は、先頭 \\.\ を削除する必要があります。 たとえば、次の PowerShell コードは、メジャー バージョン 13 である SQL Server 2016 のすべての WMI クラスを一覧表示します。

Get-WmiObject -Namespace 'root\Microsoft\SqlServer\ComputerManagement13' -List

次の PowerShell コードを使用して、使用可能なすべての WMI ComputerManagement 名前空間に対してクエリを実行できます。

gwmi -ns 'root\Microsoft\SqlServer' __NAMESPACE | ? {$_.name -match 'ComputerManagement' } | select name

メモ: Windows ファイアウォール経由で接続する場合は、コンピューターが適切に構成されていることを確認する必要があります。 Microsoft MSDN Web サイトの Windows Management Instrumentation ドキュメントの「Windows ファイアウォールを介した接続」の記事を参照してください。

権限とサーバー認証

WMI Provider for Configuration Management にアクセスするには、クライアント WMI 管理スクリプトが、ターゲット コンピューター上の管理者のコンテキストで実行されている必要があります。 アクセスするユーザーは、管理するコンピューターのローカル Windows 管理者グループのメンバーである必要があります。

管理者は、グループ ポリシーを設定して、WMI プロバイダーへのユーザー アクセスを制御することができます。 グループ ポリシーの設定の詳細については、SQL Server 構成マネージャーヘルプの「グループ ポリシーと MMC」を参照してください。

WMI 管理スクリプトを使用して、SQL Server サービスが実行されるアカウントを更新できます。

WMI Provider for Configuration Management では、セキュリティ証明書がサポートされています。 証明書の詳細については、「 暗号化階層」を参照してください。

参照

SQL Server 構成マネージャー