次の方法で共有


リソース URI

リソース URI は、WS-Management プロトコルを実装する管理サービスによって使用される個別の種類の管理操作または値の識別子です。 管理値は、コンピューター内の温度である可能性があります。 管理操作の例として、停止したサービスを開始するか、ディスク ボリューム のユーザー クォータを設定します。

リソース URI の形式

URI は、次の例に示すように、プレフィックスとリソースへのパスで構成されます。

"http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk"

このスキーマ仕様は、URI が公式のWS-Management プロトコルのバージョン 1 に基づいており、リソースが WMI リポジトリの "root\cimv2" 名前空間の Win32_LogicalDisk であることを示します。 URI プレフィックスには、"schemas.microsoft.com/wbem/wsman/1/wmi" などのスキーマ指定と、Win32_LogicalDiskなどの特定の種類のリソースが含 まれます。 WMI クラスの特定のインスタンスの識別の詳細については、「 Windows リモート管理と WMI」を参照してください。

詳細については、「 URI プレフィックス」を参照してください。

リソース URI の種類

Windows Management Instrumentation (WMI) は Windows ベースのオペレーティング システムの管理データの主なソースですが、管理スキーマの他のソースも存在します。

次の一覧では、Windows リモート管理で使用されるリソース URI のいくつかの種類について説明します。

大文字と小文字の区別

WMI プラグインは、要求で受信したリソース URI の大文字と小文字を保持します。 ただし、WS-Management プロトコルの他の実装との相互運用性を確保するには、リソース URI で要求されたリソースに対して正しいケースを使用します。 正しい大文字と小文字は、リソース プロバイダーによって定義されたスペルです。

リソース URI では大文字と小文字の区別は必要ありませんが、 フラグメント XML は 大文字と小文字を区別する必要はありません。 フラグメントは、リソースのプロパティセット全体ではなく、1 つのプロパティのみを指定します。 WMI リソースの場合、フラグメント構文はリソース インスタンスから 1 つのプロパティを取得します。 たとえば、Win32_OperatingSystemからVersion プロパティのみを取得するには、フラグメントを使用する必要があります。 フラグメントの詳細については、 Windows リモート管理と WMI の「ResourceLocator オブジェクトまたは IWSManResourceLocator オブジェクトへのセレクターの追加」を参照してください。

XML および XPath 標準に従って、 WMI プラグイン はフラグメントに対して大文字と小文字を区別し、メソッドの入力パラメーターを定義する XML を適用します。 XPath 1.0/Level 1 標準をサポートするには、大文字と小文字の区別が必要です。 WinRM を使用して WMI データを取得するには、大文字と小文字が区別されます。これは、WMI クラス、プロパティ、およびメソッドの名前が、WMI リポジトリで見つかった名前の大文字と小文字を一致させる必要があることを意味します。

詳細については、「 XPath 構文」を参照してください。

大文字と小文字の区別の例

たとえば、WMI Win32_Service クラスのインスタンスから SECURITY_DESCRIPTOR プロパティを取得するスクリプトでは、フラグメント パス内の名前に大文字を使用できず、URI のみ使用できます。 FragmentPath に指定された XPath XML では正しい大文字と小文字が使用されないため、WinRM WMI プラグインは次の VBScript の例のエラーを返します。 WMI リポジトリでは、クラスのスペルは "Win32_Service" です。

RResourceUri = "http://schemas.microsoft.com/wbem/wsman/1/"_& "wmi/root/cimv2/Win32_Service?Name=winrm"
Set WSMan = CreateObject("WSMan.Automation")
Set Locator = WSMan.CreateResourceLocator(Resourceuri)
Locator.FragmentPath = "/Win32_SERVICE/Name"
Set Session = WSMan.Createsession
xml = Session.Get(Locator)
WScript.Echo xml

次のバージョンの同じ例では、Win32_Service クラスとSECURITY_DESCRIPTOR プロパティのケースの正しい使用方法を示します。

ResourceUri = "http://schemas.microsoft.com/wbem/wsman/1/"_
    & "wmi/root/cimv2/Win32_Service?Name=winrm"
Set WSMan = CreateObject("WSMan.Automation")
Set Locator = WSMan.CreateResourceLocator(Resourceuri)
Locator.FragmentPath = "/Win32_Service/Name"
Set Session = WSMan.Createsession
xml = Session.Get(Locator)
WScript.Echo xml

Windows リモート管理について

リモート ハードウェア管理

ResourceLocator