次の方法で共有


Connect-WSMan

リモート コンピューター上の WinRM サービスに接続します。

構文

Connect-WSMan
       [-ApplicationName <String>]
       [[-ComputerName] <String>]
       [-OptionSet <Hashtable>]
       [-Port <Int32>]
       [-SessionOption <SessionOption>]
       [-UseSSL]
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [<CommonParameters>]
Connect-WSMan
       [-ConnectionURI <Uri>]
       [-OptionSet <Hashtable>]
       [-Port <Int32>]
       [-SessionOption <SessionOption>]
       [-Credential <PSCredential>]
       [-Authentication <AuthenticationMechanism>]
       [-CertificateThumbprint <String>]
       [<CommonParameters>]

説明

Connect-WSMan コマンドレットは、リモート コンピューター上の WinRM サービスに接続し、リモート コンピューターへの永続的な接続を確立します。 このコマンドレットは、WSMan プロバイダーのコンテキストで使用して、リモート コンピューター上の WinRM サービスに接続できます。 ただし、WSMan プロバイダーに変更する前に、このコマンドレットを使用して、リモート コンピューター上の WinRM サービスに接続することもできます。 リモート コンピューターが WSMan プロバイダーのルート ディレクトリに表示されます。

クライアントとサーバー コンピューターが別のドメインまたはワークグループに属している場合は、明示的な資格情報が必要です。

リモート コンピューター上の WinRM サービスから切断する方法については、Disconnect-WSMan コマンドレットを参照してください。

例 1: リモート コンピューターに接続する

PS C:\> Connect-WSMan -ComputerName "server01"
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

このコマンドは、server01 リモート コンピューターへの接続を作成します。

Connect-WSMan コマンドレットは、通常、リモート コンピューター (この場合は server01 コンピューター) に接続するために WSMan プロバイダーのコンテキストで使用されます。 ただし、WSMan プロバイダーに変更する前に、このコマンドレットを使用して、リモート コンピューターへの接続を確立することができます。 これらの接続は 、ComputerName の一覧に表示されます。

例 2: 管理者資格情報を使用してリモート コンピューターに接続する

PS C:\> $cred = Get-Credential Administrator
PS C:\> Connect-WSMan -ComputerName "server01" -Credential $cred
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

このコマンドは、管理者アカウントの資格情報を使用して、リモート システム server01 への接続を作成します。

最初のコマンドは、Get-Credential コマンドレットを使用して、管理者の資格情報を取得し、$cred 変数に保存します。 Get-Credential は、システム レジストリの設定に応じて、ダイアログ ボックスまたはコマンド ラインでユーザー名とパスワードのパスワードを入力するように求められます。

2 番目のコマンドでは、 Credential パラメーターを使用して、$credに格納されている資格情報を Connect-WSMan に渡します。 Connect-WSMan は、管理者資格情報を使用してリモート システム サーバー 01 に接続します。

例 3: 指定したポートを介してリモート コンピューターに接続する

PS C:\> Connect-WSMan -ComputerName "server01" -Port 80
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

このコマンドは、ポート 80 を介した server01 リモート コンピューターへの接続を作成します。

例 4: 接続オプションを使用してリモート コンピューターに接続する

PS C:\> $a = New-WSManSessionOption -OperationTimeout 30000
PS C:\> Connect-WSMan -ComputerName "server01" -SessionOption $a
PS C:\> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01                                      Container

次の使用例は、 New-WSManSessionOption コマンドで定義されている接続オプションを使用して、リモート サーバー 01 コンピューターへの接続を作成します。

最初のコマンドでは 、New-WSManSessionOption を 使用して、接続設定オプションのセットを $a 変数に格納します。 この場合は、セッション オプションで接続のタイムアウトを 30 秒 (30,000 ミリ秒) に設定します。

2 番目のコマンドでは 、SessionOption パラメーターを使用して、$a変数に格納されている資格情報を Connect-WSMan に渡します。 次に、 Connect-WSMan は、指定したセッション オプションを使用してリモート サーバー 01 コンピューターに接続します。

パラメーター

-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:Wsman
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

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

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

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

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:Default
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:Localhost
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

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

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

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

http://Server01:8080/WSMAN

URI は完全修飾名にする必要があります。

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

-Credential

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

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

-OptionSet

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

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

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

Type:Hashtable
Aliases:os
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Port

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

トランスポートとして HTTPS を使用する場合、 ComputerName パラメーターの値はサーバーの証明書共通名 (CN) と一致する必要があります。 ただし、SessionOption パラメーターの一部として SkipCNCheck パラメーターを指定した場合、サーバーの証明書の共通名はサーバーのホスト名と一致する必要はありません。 SkipCNCheck パラメーターは、信頼できるコンピューターにのみ使用する必要があります。

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

-SessionOption

WS-Management セッションの拡張オプションを指定します。 New-WSManSessionOption コマンドレットを使用して作成する SessionOption オブジェクトを入力します。 使用可能なオプションの詳細については、「」と入力します Get-Help New-WSManSessionOption

Type:SessionOption
Aliases:so
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

このコマンドレットは入力を受け取りません。

出力

None

このコマンドレットは出力を生成しません。

メモ

  • WS-Management セッションを作成せずに、リモート コンピューターで管理コマンドを実行することや、管理データを照会することができます。 これを行うには、Invoke-WSManAction および Get-WSManInstance の ComputerName パラメーターを使用します。 ComputerName パラメーターを使用すると、Windows PowerShellは、1 つのコマンドに使用される一時的な接続を作成します。 コマンドの実行後、その接続は閉じられます。