次の方法で共有


Invoke-WSManAction

リソース URI とセレクターによって指定されたオブジェクトに対してアクションを呼び出します。

構文

URI (既定)

Invoke-WSManAction
    [-Action] <String>
    [[-SelectorSet] <Hashtable>]
    [-ResourceURI] <Uri>
    [-ConnectionURI <Uri>]
    [-FilePath <String>]
    [-OptionSet <Hashtable>]
    [-SessionOption <SessionOption>]
    [-ValueSet <Hashtable>]
    [-Credential <PSCredential>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

ComputerName

Invoke-WSManAction
    [-Action] <String>
    [[-SelectorSet] <Hashtable>]
    [-ResourceURI] <Uri>
    [-ApplicationName <String>]
    [-ComputerName <String>]
    [-FilePath <String>]
    [-OptionSet <Hashtable>]
    [-Port <Int32>]
    [-SessionOption <SessionOption>]
    [-UseSSL]
    [-ValueSet <Hashtable>]
    [-Credential <PSCredential>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

説明

このコマンドレットは、Windows プラットフォームでのみ使用できます。

Invoke-WSManAction は、RESOURCE_URIで指定されたオブジェクトに対してアクションを実行します。ここで、パラメーターはキーと値のペアで指定されます。

このコマンドレットは、WSMan 接続/トランスポート 層を使用してアクションを実行します。

例 1: メソッドを呼び出す

Invoke-WSManAction -Action StartService -ResourceURI wmicimv2/Win32_Service -SelectorSet @{name="spooler"} -Authentication Default
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

このコマンドは、スプーラー サービスに対応する Win32_Service WMI クラス インスタンスの StartService メソッドを呼び出します。

戻り値は、アクションが成功したかどうかを示します。 この場合、戻り値 0 は成功を示します。 戻り値 5 は、サービスが既に開始されていることを示します。

例 2: メソッドを呼び出す

Invoke-WSManAction -Action StopService -ResourceURI wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath:input.xml -Authentication Default
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

このコマンドは、ファイルからの入力を使用して、スプーラー サービスで StopService メソッドを呼び出します。 ファイル Input.xmlには、次の内容が含まれています。

<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

例 3: 指定したパラメーター値を使用してメソッドを呼び出す

Invoke-WSManAction -Action Create -ResourceURI wmicimv2/Win32_Process -ValueSet @{CommandLine="notepad.exe";CurrentDirectory="C:\"}
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Process
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ProcessId   : 6356
ReturnValue : 0

このコマンドは、Win32_Process クラスの Create メソッドを呼び出します。 Notepad.exeC:\の 2 つのパラメーター値をメソッドに渡します。 その結果、メモ帳を実行する新しいプロセスが作成され、新しいプロセスの現在のディレクトリが C:\に設定されます。

例 4: リモート コンピューターでメソッドを呼び出す

Invoke-WSManAction -Action StartService -ResourceURI wmicimv2/Win32_Service -SelectorSet @{name="spooler"} -ComputerName server01 -Authentication Default
xsi         : http://www.w3.org/2001/XMLSchema-instance
p           : http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim         : http://schemas.dmtf.org/wbem/wscim/1/common
lang        : en-US
ReturnValue : 0

このコマンドは、スプーラー サービスに対応する Win32_Service WMI クラス インスタンスの StartService メソッドを呼び出します。 ComputerName パラメーターが指定されているため、コマンドはリモート server01 コンピューターに対して実行されます。

戻り値は、アクションが成功したかどうかを示します。 この場合、戻り値 0 は成功を示します。 戻り値 5 は、サービスが既に開始されていることを示します。

パラメーター

-Action

ResourceURI とセレクターで指定された管理オブジェクトで実行するメソッドを指定します。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:1
必須:True
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ApplicationName

接続内のアプリケーション名を指定します。 ApplicationName パラメーターの既定値は WSMAN です。 リモート エンドポイントの完全な識別子は、次の形式です。

<Transport>://<Server>:<Port>/<ApplicationName>

例えば次が挙げられます。

http://server01:8080/WSMAN

セッションをホストするインターネット インフォメーション サービス (IIS) は、このエンドポイントを持つ要求を指定されたアプリケーションに転送します。 この既定の設定 "WSMAN" は、ほとんどの用途に適しています。 このパラメーターは、多数のコンピューターが Windows PowerShell を実行している 1 台のコンピューターへのリモート接続を確立するときに使用するように設計されています。 この場合、IIS は Web Services for Management (WS-Management) をホストして効率を高めます。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

ComputerName
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Authentication

サーバーで使用する認証メカニズムを指定します。 使用可能な値は次のとおりです。

  • Basic - 基本は、ユーザー名とパスワードがクリア テキストでサーバーまたはプロキシに送信されるスキームです。
  • Default - WS-Management プロトコルによって実装された認証方法を使用します。 これが既定値です。
  • Digest - ダイジェストは、チャレンジにサーバー指定のデータ文字列を使用するチャレンジ応答スキームです。
  • Kerberos - クライアント コンピューターとサーバーは、Kerberos 証明書を使用して相互に認証します。
  • Negotiate - ネゴシエートは、認証に使用するスキームを決定するためにサーバーまたはプロキシとネゴシエートするチャレンジ応答スキームです。 たとえば、このパラメーター値を使用すると、ネゴシエーションで Kerberos プロトコルと NTLM のどちらを使用するかを判断できます。
  • CredSSP - 資格情報セキュリティ サポート プロバイダー (CredSSP) 認証を使用します。これにより、ユーザーは資格情報を委任できます。 このオプションは、1 台のリモート コンピューターで実行されるが、他のリモート コンピューターからデータを収集したり、他のリモート コンピューターで追加のコマンドを実行したりするコマンド用に設計されています。

注意事項

CredSSP は、ローカル コンピューターからリモート コンピューターにユーザーの資格情報を委任します。 この方法により、リモート操作のセキュリティ リスクが高まります。 リモート コンピューターが侵害された場合、資格情報が渡されるときに、資格情報を使用してネットワーク セッションを制御できます。

パラメーターのプロパティ

型:AuthenticationMechanism
規定値:None
指定可能な値:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
ワイルドカードのサポート:False
DontShow:False
Aliases:認証, am

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-CertificateThumbprint

このアクションを実行するアクセス許可を持つユーザー アカウントのデジタル公開キー証明書 (X509) を指定します。 証明書の拇印を入力します。

証明書は、クライアント証明書ベースの認証で使用されます。 これらはローカル ユーザー アカウントにのみマップできます。ドメイン アカウントでは機能しません。

証明書の拇印を取得するには、Windows PowerShell 証明書: ドライブの Get-Item または Get-ChildItem コマンドを使用します。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ComputerName

管理操作を実行するコンピューターを指定します。 値には、完全修飾ドメイン名、NetBIOS 名、または IP アドレスを指定できます。 ローカル コンピューター名を使用するか、localhost を使用するか、ドット (.) を使用してローカル コンピューターを指定します。 ローカル コンピューターが既定です。 リモート コンピューターがユーザーとは別のドメインにある場合は、完全修飾ドメイン名を使用する必要があります。 このパラメーターの値をコマンドレットにパイプできます。

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:cn

パラメーター セット

ComputerName
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ConnectionURI

接続エンドポイントを指定します。 この文字列の形式は次のとおりです。

<Transport>://<Server>:<Port>/<ApplicationName>

次の文字列は、このパラメーターに適切に書式設定された値です。

http://Server01:8080/WSMAN

URI は完全修飾されている必要があります。

パラメーターのプロパティ

型:Uri
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:CURI, CU

パラメーター セット

URI
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-Credential

このアクションを実行するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。 "User01"、"Domain01\User01"、User@Domain.comなどのユーザー名を入力します。 または、psCredential オブジェクト (Get-Credential コマンドレットによって返されるオブジェクトなど) を入力します。 ユーザー名を入力すると、パスワードの入力を求められます。

パラメーターのプロパティ

型:PSCredential
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:cred, c

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-FilePath

管理リソースの更新に使用するファイルのパスを指定します。 ResourceURI パラメーターと SelectorSet パラメーターを使用して、管理リソースを指定します。 たとえば、次のコマンドでは FilePath パラメーターを使用します。

Invoke-WSManAction -Action StopService -ResourceUri wmicimv2/Win32_Service -SelectorSet @{Name="spooler"} -FilePath C:\input.xml -Authentication Default

このコマンドは、ファイルからの入力を使用して、スプーラー サービスで StopService メソッドを呼び出します。 ファイル Input.xmlには、次の内容が含まれています。

<p:StopService_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service" />

パラメーターのプロパティ

型:String
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:経路

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-OptionSet

一連のスイッチをサービスに渡して、要求の性質を変更または調整します。 これらは、サービス固有であるため、コマンド ライン シェルで使用されるスイッチと似ています。 任意の数のオプションを指定できます。

次の例は、a、b、および c パラメーターの値 1、2、3 を渡す構文を示しています。

-OptionSet @{a=1;b=2;c=3}

パラメーターのプロパティ

型:Hashtable
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:os

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-Port

クライアントが WinRM サービスに接続するときに使用するポートを指定します。 トランスポートが HTTP の場合、既定のポートは 80 です。 トランスポートが HTTPS の場合、既定のポートは 443 です。 トランスポートとして HTTPS を使用する場合、ComputerName パラメーターの値はサーバーの証明書共通名 (CN) と一致する必要があります。 ただし、SessionOption パラメーターの一部として SkipCNCheck パラメーターが指定されている場合、サーバーの証明書の共通名は、サーバーのホスト名と一致する必要はありません。 SkipCNCheck パラメーターは、信頼できるマシンにのみ使用する必要があります。

パラメーターのプロパティ

型:Int32
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

ComputerName
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ResourceURI

リソース クラスまたはインスタンスの URI (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

パラメーターのプロパティ

型:Uri
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:ruri

パラメーター セット

(All)
配置:0
必須:True
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-SelectorSet

特定の管理リソース インスタンスの選択に使用される値ペアのセットを指定します。 SelectorSet は、リソースの複数のインスタンスが存在する場合に使用されます。 SelectorSet の値 ハッシュ テーブルである必要があります。

次の例は、このパラメーターの値を入力する方法を示しています。

-SelectorSet @{Name="WinRM";ID="yyy"}

パラメーターのプロパティ

型:Hashtable
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:2
必須:False
パイプラインからの値:True
プロパティ名別のパイプラインからの値:True
残りの引数からの値:False

-SessionOption

WS-Management セッションの拡張オプションのセットを定義します。 New-WSManSessionOption コマンドレットを使用して作成する SessionOption オブジェクトを入力します。 使用できるオプションの詳細については、New-WSManSessionOptionを参照してください。

パラメーターのプロパティ

型:SessionOption
規定値:None
ワイルドカードのサポート:False
DontShow:False
Aliases:so

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-UseSSL

リモート コンピューターへの接続を確立するために Secure Sockets Layer (SSL) プロトコルを使用することを指定します。 既定では、SSL は使用されません。

WS-Management は、ネットワーク経由で送信されるすべての PowerShell コンテンツを暗号化します。 UseSSL パラメーターを使用すると、HTTP ではなく HTTPS の追加の保護を指定できます。 接続に使用されているポートで SSL を使用できず、このパラメーターを指定すると、コマンドは失敗します。

パラメーターのプロパティ

型:SwitchParameter
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

ComputerName
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

-ValueSet

管理リソースの変更に役立つハッシュ テーブルを指定します。 管理リソースは、ResourceURI と SelectorSet パラメーター 使用して指定します。 ValueSet パラメーターの値はハッシュ テーブルである必要があります。

パラメーターのプロパティ

型:Hashtable
規定値:None
ワイルドカードのサポート:False
DontShow:False

パラメーター セット

(All)
配置:Named
必須:False
パイプラインからの値:False
プロパティ名別のパイプラインからの値:False
残りの引数からの値:False

CommonParameters

このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。

入力

None

このコマンドレットにオブジェクトをパイプすることはできません。

出力

XmlElement

このコマンドレットは、操作の結果を XmlElement オブジェクトとして返します。