about_WSMan_Provider
プロバイダー名
WSMan
ドライブ
WSMan:
簡単な説明
Web Services for Management (WS-Management) 構成情報へのアクセスを提供します。
詳しい説明
この情報は、Windows で実行されている PowerShell にのみ適用されます。
PowerShell 用 WSMan プロバイダーを使用すると、ローカル コンピューターまたはリモート コンピューター上の WS-Management 構成データを追加、変更、クリア、および削除できます。
WSMan プロバイダーは、WS-Management 構成設定の論理グループに対応するディレクトリ構造を持つ PowerShell ドライブを公開します。 これらのグループはコンテナーと呼ばれます。
Windows PowerShell 3.0 以降、WSMan プロバイダーは、OutputBufferingMode などのセッション構成の新しいプロパティをサポートするように更新されました。 セッション構成はドライブの Plugin ディレクトリ内の WSMan:
項目として表示され、プロパティは各セッション構成の項目として表示されます。
WSMan プロバイダーは、この記事で説明する次のコマンドレットをサポートしています。
Note
ドライブ内のコマンドを使用して、 WSMan:
新しいプロパティの値を変更できます。 ただし、PowerShell 2.0 のドライブを WSMan:
使用して、Windows PowerShell 3.0 で導入されたプロパティを変更することはできません。
エラーは生成されませんが、コマンドは有効ではありません。これらの設定を変更するには、Windows PowerShell 3.0 で WSMan ドライブを使用します。
WSMan の組織: ドライブ
クライアント: WS-Management クライアントのさまざまな側面を構成できます。 構成情報はレジストリに格納されます。
サービス: WS-Management サービスのさまざまな側面を構成できます。 構成情報はレジストリに格納されます。
Note
サービス構成は、サーバー構成と呼ばれることもあります。
シェル: WS-Management シェルのさまざまな側面 (リモート シェル アクセスを許可する設定 (AllowRemoteShellAccess) や許可される同時ユーザーの最大数 (MaxConcurrentUsers) など) を構成できます。
リスナー: リスナーを作成して構成できます。 リスナーは、メッセージを送受信するための WS-Management プロトコルを実装する管理サービスです。
プラグイン: プラグインは WS-Management サービスによって読み込まれ、さまざまな機能を提供するために使用されます。 既定では、PowerShell には次の 3 つのプラグインが用意されています。
- イベント転送プラグイン。
- Microsoft.PowerShell プラグイン。
- Windows Management Instrumentation (WMI) プロバイダー プラグイン。 これら 3 つのプラグインは、イベント転送、構成、WMI アクセスをサポートします。
ClientCertificate: クライアント証明書を作成して構成できます。 クライアント証明書は、WS-Management クライアントが証明書認証を使用するように構成されている場合に使用されます。
WSMan プロバイダーのディレクトリ階層
ローカル コンピューターの WSMan プロバイダーのディレクトリ階層は次のとおりです。
WSMan:\localhost
--- Client
--- Service
--- Shell
--- Listener
------ <Specific_Listener>
--- Plugin
------ Event Forwarding Plugin
--------- InitializationParameters
--------- Resources
------------ Security
------ Microsoft.Powershell
--------- InitializationParameters
--------- Resources
------------ Security
------ WMI Provider
--------- InitializationParameters
--------- Resources
------------ Security
--- ClientCertificate
リモート コンピューターの WSMan プロバイダーのディレクトリ階層は、ローカル コンピューターと同じです。 ただし、リモート コンピューターの構成設定にアクセスするには、Connect-WSMan を使用してリモート コンピューターに接続する必要があります。 リモート コンピューターへの接続が確立されると、リモート コンピューターの名前がプロバイダーに表示されます。
WSMan:\<Remote_Computer_Name>
WSMan: ドライブの移動
このコマンドでは、コマンドレットを Set-Location
使用して現在の場所をドライブに WSMan:
変更します。
Set-Location WSMan:
ファイル システム ドライブに戻るには、ドライブ名を入力します。 たとえば、次のように入力します。
Set-Location C:
リモート システム ストアの場所への移動
このコマンドは、コマンドを Set-Location
使用して、現在の場所をリモート・システム・ストアの場所のルート・ロケーションに変更します。 ドライブのレベルを示すには、円記号 \
またはスラッシュ /
を WSMan:
使用します。
Set-Location -Path WSMan:\SERVER01
Note
上記のコマンドは、リモート システムへの接続が既に存在することを前提としています。
WSMan: ドライブの内容の表示
このコマンドは、コマンドレットを Get-Childitem
使用して、Localhost ストアの場所に WS-Management ストアを表示します。
Get-ChildItem -path WSMan:\Localhost
ドライブ内にいる WSMan:
場合は、ドライブ名を省略できます。
このコマンドは、コマンドレットをGet-Childitem
使用して、リモート コンピューター "Standard Edition RVER01" ストアの場所に WS-Management ストアを表示します。
Get-ChildItem -path WSMan:\SERVER01
Note
上記のコマンドは、リモート システムへの接続が既に存在することを前提としています。
WSMAN 内の項目の値の設定: ドライブ
コマンドレットを Set-Item
使用して、ドライブの構成設定を WSMAN
変更できます。 次の例では、 "contoso.com" というサフィックスを持つすべてのホストを受け入れるように TrustedHosts 値を設定します。
# You do not need to specify the -Path parameter name when using Set-Item.
PS WSMAN:\localhost\Client> Set-Item .\TrustedHosts -Value "*.contoso.com"
コマンドレットは Set-Item
、値を変更する代わりに値を追加する追加パラメーター -Concatenate
をサポートしています。 次の例では、格納されている古い値に新しい値 "*.doメイン2.com" を追加します。TrustedHost:
Set-Item WSMAN:\localhost\Client\TrustedHosts *.domain2.com -Concatenate
WSMAN での項目の作成: ドライブ
新しいリスナーの作成
このコマンドレットは New-Item
、プロバイダー ドライブ内に項目を作成します。 プロバイダーごとに、作成できる項目の種類が異なります。 ドライブではWSMAN:
、リモート要求を受信して応答するように構成するリスナーを作成できます。 次のコマンドは、コマンドレットを使用して新しい HTTP リスナーを New-Item
作成します。
New-Item -Path WSMan:\localhost\Listener -Address * -Transport HTTP -force
新しいプラグインの作成
このコマンドは、WS-Management サービスのプラグインを作成 (登録) します。
New-Item -Path WSMan:\localhost\Plugin `
-Plugin TestPlugin `
-FileName %systemroot%\system32\WsmWmiPl.dll `
-Resource http://schemas.dmtf.org/wbem/wscim/2/cim-schema `
-SDKVersion 1 `
-Capability "Get","Put","Invoke","Enumerate" `
-XMLRenderingType text
新しいリソース エントリの作成
このコマンドは、TestPlugin の Resources ディレクトリにリソース エントリを作成します。 このコマンドは、別のコマンドを使用して TestPlugin が作成されていることを前提としています。
New-Item -Path WSMan:\localhost\Plugin\TestPlugin\Resources `
-ResourceUri http://schemas.dmtf.org/wbem/wscim/3/cim-schema `
-Capability "Enumerate"
リソースの新しいセキュリティ エントリの作成
このコマンドは、Resource_5967683の Security ディレクトリ (特定のリソース) にセキュリティ エントリを作成します。 このコマンドは、リソース エントリが別のコマンドを使用して作成されていることを前提としています。
$path = "WSMan:\localhost\Plugin\TestPlugin\Resources\Resource_5967683"
New-Item -Path $path\Security `
-Sddl "O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GWGX;;;WD)"
新しいクライアント証明書の作成
このコマンドは、WS-Management クライアントで使用できる ClientCertificate エントリを作成します。 新しい ClientCertificate は、ClientCertificate ディレクトリの下に "ClientCertificate_1234567890" として表示されます。 すべてのパラメーターは必須です。 発行者は 、発行者 証明書の拇印である必要があります。
$cred = Get-Credential
New-Item -Path WSMan:\localhost\ClientCertificate `
-Issuer 1b3fd224d66c6413fe20d21e38b304226d192dfe `
-URI wmicimv2/* `
-Credential $cred;
新しい初期化パラメーターの作成
このコマンドは、"InitializationParameters" ディレクトリに "testparametername" という名前の初期化パラメーターを作成します。 このコマンドは、別のコマンドを使用して "TestPlugin" が作成されていることを前提としています。
New-Item -Path WSMan:\localhost\Plugin\TestPlugin\InitializationParameters `
-ParamName testparametername `
-ParamValue testparametervalue
動的パラメーター
動的パラメーターは、PowerShell プロバイダーによって追加されるコマンドレット パラメーターであり、プロバイダー対応ドライブでコマンドレットが使用されている場合にのみ使用できます。
アドレス <文字列>
このリスナーが作成されたアドレスを指定します。 値は次のいずれかになります。
- リテラル文字列 "*" (ワイルドカード文字 (
*
) を指定すると、コマンドはすべてのネットワーク アダプター上のすべての IP アドレスをバインドします。 - リテラル文字列 "IP:" の後に、IPv4 ドット 10 進形式または IPv6 クローン 16 進形式の有効な IP アドレスが続きます。
- リテラル文字列 "MAC:" の後にアダプターの MAC アドレスが続きます。 例: MAC:32-a3-58-90-be-cc。
Note
Address 値は、リスナーの作成時に設定されます。
サポートされているコマンドレット
Capability <列挙型>
プラグインを 使用する場合、 このパラメーターは、この URI (Uniform Resource Identifier) でサポートされる操作を指定します。 URI がサポートする操作の種類ごとに 1 つのエントリを作成する必要があります。 操作でサポートされている場合は、特定の操作に対して有効な属性を指定できます。
これらの属性には、SupportsFiltering と SupportsFragment が含まれます。
- 作成: 作成操作は URI でサポートされています。
- SupportFragment 属性は、作成操作で概念がサポートされている場合に使用されます。
- SupportFiltering 属性は、作成操作では無効であり、"False" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- 削除: 削除操作は URI でサポートされています。
- SupportFragment 属性は、削除操作で概念がサポートされている場合に使用されます。
- SupportFiltering 属性は削除操作では無効であり、"False" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- 列挙: URI で列挙操作がサポートされています。
- SupportFragment 属性は列挙操作ではサポートされていないため、False に設定する必要があります。
- SupportFiltering 属性は有効であり、プラグインがフィルター処理をサポートしている場合は、この属性を "True" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- 取得: 取得操作は URI でサポートされています。
- Get 操作で概念がサポートされている場合は、SupportFragment 属性が使用されます。
- SupportFiltering 属性は Get 操作では無効であり、"False" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- 呼び出し: 呼び出し操作は URI でサポートされています。
- SupportFragment 属性は呼び出し操作ではサポートされていないため、False に設定する必要があります。
- SupportFiltering 属性は無効であり、"False" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- Put: PUT 操作は URI でサポートされています。
- Put 操作で概念がサポートされている場合は、SupportFragment 属性が使用されます。
- SupportFiltering 属性は Put 操作では無効であり、"False" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- サブスクライブ: サブスクライブ操作は URI でサポートされています。
- SupportFragment 属性はサブスクライブ操作ではサポートされていないため、False に設定する必要があります。
- SupportFiltering 属性はサブスクライブ操作では無効であり、"False" に設定する必要があります。
Note
シェル操作もサポートされている場合、URI に対してこの操作は無効です。
- シェル: シェル操作は URI でサポートされています。
- SupportFragment 属性はシェル操作ではサポートされていないため、"False" に設定する必要があります。
- SupportFiltering 属性はシェル操作では無効であり、"False" に設定する必要があります。
Note
他の操作もサポートされている場合、URI に対してこの操作は無効です。
Note
URI、Get、Put、Create、Delete、Invoke、および Enumerate 操作に対してシェル操作が構成されている場合、シェルを管理するために WS-Management (WinRM) サービス内で内部的に処理されます。 その結果、プラグインは操作を処理できません。
サポートされているコマンドレット
CertificateThumbprint <文字列>
サービス証明書の拇印を指定します。
この値は、証明書の拇印フィールドの 2 桁の 16 進数の値の文字列を表します。 このアクションを実行するアクセス許可を持つユーザー アカウントのデジタル公開キー証明書 (X509) を指定します。 証明書は、クライアント証明書ベースの認証で使用されます。 これらはローカル ユーザー アカウントにのみマップでき、doメイン アカウントでは機能しません。 証明書の拇印を取得するには、PowerShell Cert:
ドライブのコマンドレットを使用Get-Item
Get-ChildItem
します。
サポートされているコマンドレット
有効な <ブール値>
リスナーが有効であるか、無効であるかを指定します。 既定値は Trueです。
サポートされているコマンドレット
FileName (プラグイン) <文字列>
操作プラグインのファイル名を指定します。 このエントリに配置されるすべての環境変数は、要求を受信すると、ユーザーのコンテキストで展開されます。 各ユーザーは同じ環境変数の異なるバージョンを持つことができるため、各ユーザーは異なるプラグインを持つことができます。 このエントリは空白にできず、有効なプラグインを指している必要があります。
サポートされているコマンドレット
HostName <文字列>
WS-Management (WinRM) サービスが実行されているコンピューターのホスト名を指定します。
値は完全修飾ドメイン名、IPv4 または IPv6 のリテラル文字列、またはワイルドカード文字にする必要があります。
サポートされているコマンドレット
発行者 <文字列>
証明書を発行した証明機関の名前を指定します。
サポートされているコマンドレット
プラグイン <> WS-Management プラグインはネイティブ ダイナミック リンク ライブラリ (DLL) です
WS-Management の機能に接続して拡張します。 WSW-Management プラグイン API には、サポートされているリソース URI と操作用の特定の API を実装することで、ユーザーがプラグインを記述できるようにする機能が用意されています。 WS-Management (WinRM) サービスまたは インターネット インフォメーション サービス (IIS) 用にプラグインを構成すると、プラグインは WS-Management ホストまたは IIS ホストにそれぞれ読み込まれます。 リモート要求は、操作を実行するためにこれらのプラグイン エントリ ポイントにルーティングされます。
サポートされているコマンドレット
ポート <符号なし短整数>
このリスナーが作成された TCP ポートを指定します。 1 ~ 65535 の任意の値を指定できます。
サポートされているコマンドレット
リソース <文字列>
個別の種類の管理操作または値を表すエンドポイントを指定します。 サービスは 1 つ以上のリソースを公開し、一部のリソースには複数のインスタンスを含めることができます。 管理リソースは WMI クラスまたはデータベース テーブルに似ていますが、インスタンスはクラスのインスタンスまたはテーブル内の行に似ています。 たとえば、 Win32_LogicalDisk クラスはリソースを表します。 Win32_LogicalDisk="C:\\"
は、リソースの特定のインスタンスです。
Uri (Uniform Resource Identifier) には、プレフィックスとリソースへのパスが含まれています。 次に例を示します。
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
サポートされているコマンドレット
リソース <文字列>
コンピューター上の特定の種類のリソース (ディスクやプロセスなど) を識別する URI (Uniform Resource Identifier) を指定します。
URI は、プレフィックスとリソースのパスで構成されます。 次に例を示します。
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
サポートされているコマンドレット
SDKVersion <文字列>
WS-Management プラグイン SDK のバージョンを指定します。 有効な値は 1 のみです。
サポートされているコマンドレット
件名 <文字列>
証明書によって識別されるエンティティを指定します。
サポートされているコマンドレット
トランスポート <文字列>
WS-Management プロトコルの要求と応答を送受信するためのトランスポートを指定します。 値は HTTP と HTTPS のいずれかになります。
注: トランスポート値は、リスナーの作成時に設定されます。
サポートされているコマンドレット
URI <文字列>
Sddl パラメーターの値に基づいて、アクセスが承認される URI を識別します。
サポートされているコマンドレット
URLPrefix <文字列>
HTTP または HTTPS 要求を受け入れる URL プレフィックス。 これは、文字[a-z]
、アンダースコア ()、[A-Z]
[9-0]
円記号/
(_
) のみを含む文字列です。 文字列の先頭または末尾を円記号 (/
) にすることはできません。 たとえば、コンピューター名が "SampleComputer" の場合、WS-Management クライアントは宛先アドレスで指定 http://SampleMachine/URLPrefix
します。
サポートされているコマンドレット
値 <の文字列>
初期化パラメーターの値を指定します。これは、構成オプションの指定に使用されるプラグイン固有の値です。
サポートされているコマンドレット
XMLRenderingType <文字列>
WSMAN_DATA オブジェクトを介してプラグインに XML を渡す形式を指定します。 有効な値を次に示します。
- テキスト: 受信 XML データは、PCWSTR メモリ バッファーとして XML を表すWSMAN_DATA_TYPE_TEXT構造体に含まれています。
- XMLReader: 受信 XML データは、"WebServices.h" ヘッダー ファイルで定義されている XmlReader オブジェクトとして XML を表すWSMAN_DATA_TYPE_WS_XML_READER構造体に含まれています。
サポートされているコマンドレット
パイプラインの使用
プロバイダー コマンドレットは、パイプライン入力を受け入れます。 パイプラインを使用すると、あるコマンドレットから別のプロバイダー コマンドレットにプロバイダー データを送信することで、タスクを簡略化できます。 プロバイダー コマンドレットでパイプラインを使用する方法の詳細については、この記事全体で提供されているコマンドレットリファレンスを参照してください。
ヘルプの表示
Windows PowerShell 3.0 より、プロバイダー コマンドレットのためにカスタマイズされたヘルプ トピックを取得できます。これはファイル システム ドライブでのプロバイダー コマンドレットの動作を説明します。
ファイル システム ドライブ用にカスタマイズされたヘルプ トピックを取得するには、ファイル システム ドライブで Get-Help コマンドを実行するか、Get-Help のパラメーターを使用-Path
してファイル システム ドライブを指定します。
Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path wsman:
関連項目
PowerShell