Test-WSMan

WinRM サービスがローカル コンピューターとリモート コンピューターのどちらで実行されているかをテストします。

構文

Test-WSMan
    [[-ComputerName] <String>]
    [-Authentication <AuthenticationMechanism>]
    [-Port <Int32>]
    [-UseSSL]
    [-ApplicationName <String>]
    [-Credential <PSCredential>]
    [-CertificateThumbprint <String>]
    [<CommonParameters>]

説明

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

コマンドレットは Test-WSMan 、WinRM サービスがローカル コンピューターまたはリモート コンピューターで実行されているかどうかを決定する識別要求を送信します。 テスト対象のコンピューターでサービスが実行されている場合、このコマンドレットは、WS-Management ID スキーマ、プロトコルのバージョン、製品ベンダー、およびテスト対象のサービスの製品バージョンを表示します。

例 1: WinRM サービスの状態を確認する

Test-WSMan

このコマンドは、WinRM サービスがローカル コンピューターとリモート コンピューターのどちらで実行されているかを確認します。

例 2: リモート コンピューター上の WinRM サービスの状態を確認する

Test-WSMan -ComputerName "server01"

このコマンドは、WinRM サービスが server01 コンピューターで実行されているかどうかを判断します。

例 3: WinRM サービスの状態とオペレーティング システムのバージョンを確認する

Test-WSMan -Authentication default

このコマンドは、認証パラメーターを使用して、WS-Management (WinRM) サービスがローカル コンピューターで実行されているかどうかをテストします。

認証パラメーターを使用すると、 Test-WSMan オペレーティング システムのバージョンを返します。

例 4: リモート コンピューター上の WinRM サービスと OS バージョンの状態を確認する

Test-WSMan -ComputerName "server01" -Authentication default

このコマンドは、認証パラメーターを使用して、server01 という名前のコンピューターで WS-Management (WinRM) サービスが実行されているかどうかをテストします。

認証パラメーターを使用すると、 Test-WSMan オペレーティング システムのバージョンを返します。

パラメーター

-ApplicationName

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

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

例: http://server01:8080/WSMAN

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

サーバーで使用される認証メカニズムを指定します。 このパラメーターの有効値は、次のとおりです。

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

注意

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

重要

Authentication パラメーターを指定しない場合、Test-WSMan要求は認証を使用せずに、リモート コンピューターに匿名で送信されます。 要求が匿名で行われた場合、オペレーティング システムのバージョンに固有の情報は返されません。 代わりに、このコマンドレットはオペレーティング システムのバージョンとサービス パック レベル (OS: 0.0.0 SP: 0.0) の null 値を表示します。

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

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

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

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

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

Type:String
Aliases:cn
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Credential

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

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

クライアントが WinRM サービスに接続するときに使用するポートを指定します。 トランスポートが HTTP の場合、既定のポートは 80 です。 トランスポートが HTTPS の場合、既定のポートは 443 です。

トランスポートとして HTTPS を使用する場合、ComputerName パラメーターの値はサーバーの証明書共通名 (CN) と一致する必要があります。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

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

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

None

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

出力

XmlElement

このコマンドレットは、テストの結果を 表す XmlElement オブジェクトを返します。

メモ

既定では、コマンドレットは Test-WSMan 認証を使用せずに WinRM サービスにクエリを実行し、オペレーティング システムのバージョンに固有の情報を返しません。 代わりに、オペレーティング システムのバージョンとサービス パック レベル (OS: 0.0.0 SP: 0.0) の null 値が表示されます。