次の方法で共有


about_WSMan_Provider

プロバイダー名

WSMan

ドライブ

WSMan:

簡単な説明

Web Services for Management (WS-Management) 構成情報へのアクセスを提供します。

詳しい説明

この情報は、Windows で実行されている PowerShell にのみ適用されます。

PowerShell 用 WSMan プロバイダーを使用すると、ローカル コンピューターまたはリモート コンピューター上の構成データ WS-Management 追加、変更、クリア、および削除できます。

WSMan プロバイダーは、構成設定の論理的なグループ化に対応するディレクトリ構造を持つ PowerShell ドライブ WS-Management 公開します。 これらのグループ化はコンテナーと呼ばれています。

Windows PowerShell 3.0 以降では、セッション構成の新しいプロパティ (OutputBufferingMode など) をサポートするように WSMan プロバイダーが更新されました。 セッション構成はドライブの Plugin ディレクトリ内の WSMan: 項目として表示され、プロパティは各セッション構成の項目として表示されます。

WSMan プロバイダーは、この記事で説明する次のコマンドレットをサポートしています。

注意

ドライブ内のコマンドを使用して、 WSMan: 新しいプロパティの値を変更できます。 ただし、PowerShell 2.0 のドライブをWSMan:使用して、Windows PowerShell 3.0 で導入されたプロパティを変更することはできません。 エラーは生成されませんが、コマンドは有効ではありません これらの設定を変更するには、Windows PowerShell 3.0 で WSMan ドライブを使用します。

WSMan の編成: ドライブ

  • クライアント: WS-Management クライアントのさまざまな側面を構成できます。 構成情報はレジストリに保存されます。

  • サービス: WS-Management サービスのさまざまな側面を構成できます。 構成情報はレジストリに保存されます。

    注意

    サービス構成はサーバー構成と呼ばれることもあります。

  • シェル: リモート シェル アクセスを許可する設定 (AllowRemoteShellAccess) や許可される同時ユーザーの最大数 (MaxConcurrentUsers) など、WS-Management シェルのさまざまな側面を構成できます。

  • リスナー: リスナーを作成して構成できます。 リスナーは 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>

このコマンドでは、 コマンドレットを Set-Location 使用して、現在の場所をドライブに WSMan: 変更します。

Set-Location WSMan:

ファイル システム ドライブに戻るには、ドライブ名を入力します。 たとえば、「」と入力します。

Set-Location C:

このコマンドでは、 コマンドを Set-Location 使用して、現在の場所をリモート システム ストアの場所のルートの場所に変更します。 ドライブのレベルを示すには、円記号 \ またはスラッシュ /WSMan: 使用します。

Set-Location -Path  WSMan:\SERVER01

注意

上記のコマンドでは、リモート システムにすでに接続しているものと仮定しています。

WSMan: ドライブの内容の表示

このコマンドは、 コマンドレットを Get-Childitem 使用して、Localhost ストアの場所に WS-Management ストアを表示します。

Get-ChildItem -path WSMan:\Localhost

ドライブ内にいる WSMan: 場合は、ドライブ名を省略できます。

このコマンドは、 コマンドレットを Get-Childitem 使用して、リモート コンピューターの "SERVER01" ストアの場所に WS-Management ストアを表示します。

Get-ChildItem -path WSMan:\SERVER01

注意

上記のコマンドでは、リモート システムにすでに接続しているものと仮定しています。

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 がサポートされています。 次の例では、 に格納されている古い値に新しい値 "*.domain2.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 cloned-16 進数形式の有効な IP アドレスが続きます。
  • リテラル文字列 "MAC:" の後にアダプターの MAC アドレスが続きます。 例: MAC:32-a3-58-90-be-cc。

注意

Address 値はリスナーの作成時に設定されます。

サポートされているコマンドレット

機能の <列挙>

プラグインを使用する場合、このパラメーターは、この Uniform Resource Identifier (URI) でサポートされる操作を指定します。 URI でサポートされる操作の種類ごとに 1 つのエントリを作成する必要があります。 操作でサポートされている場合は、特定の操作に対して任意の有効な属性を指定できます。

これらの属性には、 SupportsFilteringSupportsFragment が含まれます

  • Create: CREATE操作は URI でサポートされています。
    • Create操作で概念がサポートされている場合は、SupportFragment 属性が使用されます。
    • SupportFiltering 属性は、Create操作では無効であり、"False" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • 削除: 削除操作は URI でサポートされています。
    • Delete 操作で概念がサポートされている場合は、 SupportFragment 属性が使用されます。
    • SupportFiltering 属性は Delete 操作では無効であり、"False" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • 列挙: 列挙操作は URI でサポートされています。
    • SupportFragment 属性は列挙操作ではサポートされていないため、False に設定する必要があります。
    • SupportFiltering 属性は有効であり、プラグインでフィルター処理がサポートされている場合は、この属性を "True" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • Get: GET 操作は URI でサポートされています。
    • Get 操作で概念がサポートされている場合は、 SupportFragment 属性が使用されます。
    • SupportFiltering 属性は Get 操作では無効であり、"False" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • 呼び出し: 呼び出し操作は URI でサポートされています。
    • SupportFragment 属性は呼び出し操作ではサポートされていないため、False に設定する必要があります。
    • SupportFiltering 属性は無効であり、"False" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • Put: PUT 操作は URI でサポートされています。
    • Put 操作で概念がサポートされている場合は、 SupportFragment 属性が使用されます。
    • SupportFiltering 属性は Put 操作では無効であり、"False" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • サブスクライブ: サブスクライブ操作は URI でサポートされています。
    • SupportFragment 属性は Subscribe 操作ではサポートされていないため、False に設定する必要があります。
    • SupportFiltering 属性は Subscribe 操作に対して有効ではなく、"False" に設定する必要があります。

    注意

    Shell 操作もサポートされている場合、URI に対してこの操作は有効ではありません。

  • シェル: シェル操作は URI でサポートされています。
    • SupportFragment 属性はシェル操作ではサポートされていないため、"False" に設定する必要があります。
    • SupportFiltering 属性はシェル操作では無効であり、"False" に設定する必要があります。

    注意

    他の操作もサポートされている場合、URI に対してこの操作は無効です。

    注意

    Shell 操作が URI に構成されている場合、Get、Put、Create、Delete、Invoke、Enumerate 操作は WS-Management (WinRM) サービスの内部で処理され、シェルを管理します。 結果として、プラグインは操作を処理できません。

サポートされているコマンドレット

CertificateThumbprint <文字列>

サービス証明書の拇印を指定します。

この値は証明書の拇印フィールドの 2 桁の 16 進数値の文字列を表します。 この処理を実行するアクセス許可を持つユーザー アカウントのデジタル公開キー証明書 (X509) を指定します。 証明書は、クライアント証明書ベースの認証で使用されます。 これらの証明書はローカル ユーザー アカウントにしかマップできません。ドメイン アカウントでは機能しません。 証明書の拇印を取得するには、PowerShell Cert: ドライブの または Get-ChildItem コマンドレットを使用Get-Itemします。

サポートされているコマンドレット

有効な <ブール値>

リスナーが有効であるか、無効であるかを指定します。 既定値は True です。

サポートされているコマンドレット

FileName (プラグイン) <文字列>

操作プラグインのファイル名を指定します。 このエントリに配置される環境変数は、要求を受信すると、ユーザーのコンテキストで展開されます。 各ユーザーは同じ環境変数の異なるバージョンを持つことができるため、各ユーザーは異なるプラグインを持つことができます。 このエントリは空白にできず、有効なプラグインを指している必要があります。

サポートされているコマンドレット

HostName <文字列>

WS-Management (WinRM) サービスが実行されているコンピューターのホスト名を指定します。

値は完全修飾ドメイン名、IPv4 または IPv6 のリテラル文字列、またはワイルドカード文字にする必要があります。

サポートされているコマンドレット

Issuer <String>

証明書を発行した証明機関の名前を指定します。

サポートされているコマンドレット

を に接続し、WS-Management の機能を拡張します。 WSW-Management プラグイン API には、サポートされているリソース URI と操作用に特定の API を実装することで、ユーザーがプラグインを記述できるようにする機能が用意されています。 WS-Management (WinRM) サービスと Internet Information Services (IIS) のいずれかにプラグインを構成すると、WS-Management ホストと IIS ホストにそれぞれプラグインが読み込まれます。 リモート要求はこれらのプラグイン エントリ ポイントに送信され、操作が実行されます。

サポートされているコマンドレット

ポート <符号なし短整数>

このリスナーが作成された TCP ポートを指定します。 1 から 65535 までの値を指定できます。

サポートされているコマンドレット

リソース <文字列>

はっきりと識別できる種類の管理操作または値を表すエンドポイントを指定します。 サービスは 1 つまたは複数のリソースを公開します。一部のリソースには複数のインスタンスが含まれることがあります。 管理リソースは WMI クラスまたはデータベース テーブルに似ています。インスタンスはクラスのインスタンスまたはテーブルの行に似ています。 たとえば、 Win32_LogicalDisk クラスはリソースを表します。 Win32_LogicalDisk="C:\\" は、リソースの特定のインスタンスです。

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

サポートされているコマンドレット

リソース <文字列>

ディスクまたはプロセスなど、コンピューター上の特定のリソースを識別する Uniform Resource Identifier (URI) を指定します。

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:

こちらもご覧ください