PowerShell Cmdlet - Enter-PSSession
 記事記号:[mf1940] 初版:2011/Sep/30

この文書は、Windows PowerShellのヘルプ機能で表示される内容を再構成したものです。

名前
    Enter-PSSession
    
概要
    リモート コンピューターと対話型のセッションを開始します。
    
構文
    Enter-PSSession [-ComputerName] <string> [-ApplicationName <string>] [-Authe
    ntication {Default | Basic | Negotiate | NegotiateWithImplicitCredential | C
    redssp | Digest | Kerberos}] [-CertificateThumbprint <string>] [-Configurati
    onName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionOption 
    <PSSessionOption>] [-UseSSL] [<CommonParameters>]
    
    Enter-PSSession [[-Id] <int>] [<CommonParameters>]
    
    Enter-PSSession [-InstanceId <Guid>] [<CommonParameters>]
    
    Enter-PSSession [-Name <string>] [<CommonParameters>]
    
    Enter-PSSession [[-Session] <PSSession>] [<CommonParameters>]
    
    Enter-PSSession [[-ConnectionURI] <Uri>] [-AllowRedirection] [-Authenticatio
    n {Default | Basic | Negotiate | NegotiateWithImplicitCredential | Credssp | 
    Digest | Kerberos}] [-CertificateThumbprint <string>] [-ConfigurationName <s
    tring>] [-Credential <PSCredential>] [-SessionOption <PSSessionOption>] [<Co
    mmonParameters>]
    
説明
    Enter-PSSession コマンドレットは、1 台のリモート コンピューターと対話型のセ
    ッションを開始します。セッション中は、リモート コンピューターに直接入力した
    場合と同様に、入力したコマンドがリモート コンピューターで実行されます。一度
    に複数の対話型のセッションを開始することはできません。
    
    通常、ComputerName パラメーターを使用してリモート コンピューターの名前を指定
    します。ただし、New-PSSession を対話型のセッションに使用して、独自に作成した
    セッションを使用することもできます。
    
    対話型のセッションを終了して、リモート コンピューターへの接続を解除するには、
    Exit-PSSession コマンドレットを使用するか、「exit」と入力します。
    
パラメーター
    -AllowRedirection [<SwitchParameter>]
        この接続を代替 URI (Uniform Resource Identifier) にリダイレクトできます。
        
        ConnectionURI パラメーターを使用すると、リモートの配信先は別の URI にリ
        ダイレクトするための命令を返すことができます。既定では、Windows PowerShe
        ll は接続をリダイレクトしませんが、ユーザーはこのパラメーターを使用して
        接続のリダイレクトを許可できます。
        
        この接続を代替 URI にリダイレクトできます。
        
        ConnectionURI パラメーターを使用すると、リモートの配信先は別の URI にリ
        ダイレクトするための命令を返すことができます。既定では、Windows PowerShe
        ll は接続をリダイレクトしませんが、ユーザーは AllowRedirection パラメー
        ターを使用して接続のリダイレクトを許可できます。
        
        また、$PSSessionOption preference 変数の MaximumConnectionRedirectionCou
        nt property プロパティ、または SessionOption パラメーターの値の MaximumC
        onnectionRedirectionCount プロパティを設定することにより、接続をリダイレ
        クトする回数を制限することもできます。既定値は 5 です。詳細については、S
        essionOption パラメーターの説明と、New-PSSessionOption を参照してくださ
        い。
        
        必須                         false
        位置                         named
        既定値                       False
        パイプライン入力を許可する   false
        ワイルドカード文字を許可する false
        
    -ApplicationName <string>
        接続 URI のアプリケーション名セグメントを指定します。ConnectionURI パラ
        メーターをコマンド内で使用しない場合は、このパラメーターを使用してアプリ
        ケーション名を指定します。
        
        既定値は、ローカル コンピューターの $PSSessionApplicationName ユーザー設
        定変数の値です。この設定変数を定義しない場合、既定値は WSMAN になります。
        この値はほとんどのユーザーに適しています。詳細については、「about_Prefer
        ence_Variables」を参照してください。
        
        WinRM サービスは、アプリケーション名を使用して接続要求を処理するリスナー
        を選択します。このパラメーターの値は、リモート コンピューターにあるリスナ
        ーの URLPrefix プロパティの値と一致する必要があります。
        
        必須                         false
        位置                         named
        既定値                       WSMAN
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -Authentication <AuthenticationMechanism>
        ユーザーの資格情報の認証に使用するメカニズムを指定します。有効な値は、"D
        efault"、"Basic"、"Credssp"、"Digest"、"Kerberos"、"Negotiate"、および "
        NegotiateWithImplicitCredential" です。既定値は "Default" です。
        
        CredSSP 認証は、Windows Vista、Windows Server 2008、およびそれ以降のバー
        ジョンの Windows でのみ使用できます。
        
        このパラメーターの値については、MSDN (Microsoft Developer Network) ライ
        ブラリの System.Management.Automation.Runspaces.AuthenticationMechanism 
        列挙体の説明 (http://go.microsoft.com/fwlink/?LinkId=144382) を参照して
        ください。
        
        注意: ユーザーの資格情報が認証対象のリモート コンピューターに渡される、
        資格情報のセキュリティ サービス プロバイダー (CredSSP) 認証は、リモート 
        ネットワーク共有にアクセスする場合など、複数のリソースの認証を必要とする
        コマンドを対象としています。このメカニズムを使用すると、リモート操作のセ
        キュリティ リスクが高まります。リモート コンピューターのセキュリティが低
        下している場合は、そのリモート コンピューターに渡される資格情報を使用し
        てネットワーク セッションを制御できます。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   false
        ワイルドカード文字を許可する false
        
    -CertificateThumbprint <string>
        この処理を実行するアクセス許可を持つユーザー アカウントのデジタル公開キ
        ー証明書 (X509) を指定します。証明書の拇印を入力します。
        
        証明書は、クライアント証明書ベースの認証で使用されます。これらはローカル 
        ユーザー アカウントにのみマッピングできます。ドメイン アカウントでは機能
        しません。
        
        証明書の拇印を取得するには、Windows PowerShell Cert: ドライブで Get-Item 
        または Get-ChildItem コマンドを使用します。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   false
        ワイルドカード文字を許可する false
        
    -ComputerName <string>
        指定されたリモート コンピューターと対話型のセッションを開始します。コン
        ピューター名を 1 つだけ入力します。既定値はローカル コンピューターです。
        
        1 つまたは複数のリモート コンピューターの NetBIOS 名、IP アドレス、また
        は完全修飾ドメイン名を入力します。パイプを使用して Enter-PSSession にコ
        ンピューター名を渡すこともできます。
        
        ComputerName パラメーターの値に IP アドレスを使用するには、コマンドに Cr
        edential パラメーターを含める必要があります。また、コンピューターが HTTP
        S トランスポート用に構成されているか、リモート コンピューターの IP アド
        レスがローカル コンピューター上の WinRM TrustedHosts リストに含まれてい
        る必要があります。コンピューター名を TrustedHosts リストに追加する方法に
        ついては、「about_Remote_Troubleshooting」の「How to Add a Computer to t
        he Trusted Host List (コンピューターを信頼されたホストの一覧に追加する方
        法)」を参照してください。
        
        注: Windows Vista 以降のバージョンの Windows で、ローカル コンピューター
        を ComputerName パラメーターの値に含めるには、Windows PowerShell を起動す
        る際に [管理者として実行] を指定する必要があります。
        
        必須                         true
        位置                         1
        既定値                       
        パイプライン入力を許可する   true (ByValue, ByPropertyName)
        ワイルドカード文字を許可する false
        
    -ConfigurationName <string>
        対話型セッションに使用するセッション構成を指定します。
        
        構成名またはセッション構成の完全修飾リソース URI を入力します。構成名の
        みを指定すると、スキーマ URI "http://schemas.microsoft.com/powershell" 
        が先頭に付加されます。
        
        セッションのセッション構成は、リモート コンピューター上にあります。指定
        したセッション構成がリモート コンピューター上に存在しない場合、コマンド
        は失敗します。
        
        既定値は、ローカル コンピューターの $PSSessionConfigurationName ユーザー
        設定変数の値です。この設定変数を設定しない場合、既定値は Microsoft.Power
        Shell になります。詳細については、「about_Preference_Variables」を参照し
        てください。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -ConnectionURI <Uri>
        対話型セッションの接続エンドポイントを定義する URI (Uniform Resource Ide
        ntifier) を指定します。URI は完全修飾名でなければなりません。
        
        この文字列の形式は次のとおりです。
            <Transport>://<ComputerName>:<Port>/<ApplicationName>
        
        既定値は次のとおりです。
            http://localhost:80/WSMAN
        
        URI のトランスポート セグメントの有効な値は HTTP および HTTPS です。Conn
        ectionURI を指定しない場合、UseSSL、ComputerName、Port、および Applicati
        onName パラメーターを使用して URI 値を指定できます。
        
        対象のコンピューターが接続を別の URI にリダイレクトする場合、コマンドで 
        AllowRedirection パラメーターを使用しない限り、Windows PowerShell によっ
        てリダイレクトが防止されます。
        
        必須                         false
        位置                         2
        既定値                       
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -Credential <PSCredential>
        この処理を実行するアクセス許可を持つユーザー アカウントを指定します。既
        定値は現在のユーザーです。
        
        "User01"、"Domain01\User01"、"User@Domain.com" のようなユーザー名を入力
        するか、Get-Credential コマンドレットで返されるような PSCredential オブ
        ジェクトを入力します。
        
        ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
        
        必須                         false
        位置                         named
        既定値                       現在のユーザー
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -Id <int>
        既存のセッションの ID を指定します。Enter-PSSession は、指定されたセッシ
        ョンを対話型のセッションに使用します。
        
        セッションの ID を検索するには、Get-PSSession コマンドレットを使用します。
        
        必須                         false
        位置                         1
        既定値                       
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -InstanceId <Guid>
        既存のセッションのインスタンス ID を指定します。Enter-PSSession は、指定
        されたセッションを対話型のセッションに使用します。
        
        インスタンス ID は GUID です。セッションのインスタンス ID を検索するには、
        Get-PSSession コマンドレットを使用します。Session、Name、または ID パラメ
        ーターを使用して既存のセッションを指定することもできます。または、Compute
        rName パラメーターを使用して一時セッションを開始することもできます。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -Name <string>
        既存のセッションのフレンドリ名を指定します。Enter-PSSession は、指定され
        たセッションを対話型のセッションに使用します。
        
        指定した名前が複数のセッションに一致する場合、コマンドは失敗します。Sess
        ion、InstanceID、または ID パラメーターを使用して既存のセッションを指定
        することもできます。または、ComputerName パラメーターを使用して一時セッ
        ションを開始することもできます。
        
        セッションのフレンドリ名を設定するには、New-PSSession コマンドレットの 
        Name パラメーターを使用します。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   true (ByPropertyName)
        ワイルドカード文字を許可する false
        
    -Port <int>
        このコマンドで使用するリモート コンピューター上のネットワーク ポートを指
        定します。既定値はポート 80 (HTTP ポート) です。
        
        代替ポートを使用する前に、リモート コンピューター上でそのポートをリッス
        ンするための WinRM リスナーを構成する必要があります。リスナーを構成する
        には、次のコマンドを使用します。
        
        1. winrm delete winrm/config/listener?Address=*+Transport=HTTP
        2. winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="
           <port-number>"}
        
        必要がない限り、Port パラメーターを使用しないでください。このコマンドの
        ポート設定は、すべてのコンピューターまたはコマンドが実行されるセッション
        に適用されます。代替ポート設定によって、すべてのコンピューターでのコマン
        ドの実行が妨げられている可能性があります。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   false
        ワイルドカード文字を許可する false
        
    -Session <PSSession>
        対話型のセッションに使用する Windows PowerShell セッション (PSSession) 
        を指定します。このパラメーターは、セッション オブジェクトを取得します。N
        ame、InstanceID、または ID パラメーターを使用して PSSession を指定するこ
        ともできます。
        
        セッション オブジェクトを格納する変数を入力するか、New-PSSession コマン
        ドや Get-PSSession コマンドなど、セッション オブジェクトを作成または取得
        するコマンドを入力します。パイプを使用して Enter-PSSession にセッション 
        オブジェクトを渡すこともできます。このパラメーターでは、複数の PSSession 
        を渡すことはできません。複数の PSSession を含む変数を入力した場合、コマ
        ンドは失敗します。
        
        Exit-PSSession または EXIT キーワードを使用すると、対話型のセッションは
        終了しますが、作成した PSSession は開いたままになり引き続き使用できます。
        
        必須                         false
        位置                         1
        既定値                       
        パイプライン入力を許可する   true (ByValue, ByPropertyName)
        ワイルドカード文字を許可する true
        
    -SessionOption <PSSessionOption>
        セッションの詳細オプションを設定します。New-PSSessionOption コマンドレッ
        トを使用して作成する SessionOption オブジェクトを入力します。
        
        $PSSessionOption 設定変数の値が設定されている場合、オプションの既定値は
        この値によって決まります。それ以外の場合、セッションではシステムの既定値
        が使用されます。
        
        既定値を含め、セッション オプションの詳細については、New-PSSessionOption 
        を参照してください。$PSSessionOption 設定変数の詳細については、「about_P
        reference_Variables」を参照してください。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   false
        ワイルドカード文字を許可する false
        
    -UseSSL [<SwitchParameter>]
        Secure Sockets Layer (SSL) プロトコルを使用してリモート コンピューターと
        の接続を確立します。既定では、SSL は使用されません。
        
        WS-Management では、ネットワーク上で送信されるすべての Windows PowerShel
        l コンテンツが暗号化されます。UseSSL は、HTTP 接続ではなく HTTPS 接続を
        使用してデータを送信する追加の保護機能です。
        
        このパラメーターを使用するが、コマンドに使用されるポートで SSL が利用で
        きない場合、コマンドは失敗します。
        
        必須                         false
        位置                         named
        既定値                       
        パイプライン入力を許可する   false
        ワイルドカード文字を許可する false
        
    <CommonParameters>
        このコマンドレットは、次の共通パラメーターをサポートします: Verbose、
        Debug、ErrorAction、ErrorVariable、WarningAction、WarningVariable、
        OutBuffer、および OutVariable。詳細については、
        「get-help about_commonparameters」と入力してヘルプを参照してください。
    
入力
    System.String または System.Management.Automation.Runspaces.PSSession
        パイプを使用して Enter-PSSession にコンピューター名 (文字列) またはセッ
        ション オブジェクトを渡すことができます。
    
出力
    None
        このコマンドレットによる戻り値はありません。
    
メモ
        -- リモート コンピューターに接続するには、リモート コンピューターの管理
           者グループのメンバーであることが必要です。
        
        -- Windows Vista 以降のバージョンの Windows で、ローカル コンピューター
           で対話型のセッションを開始するには、Windows PowerShell を起動する際に 
           [管理者として実行] を指定する必要があります。
        
        -- Enter-PSSession を使用すると、リモート コンピューターのユーザー プロ
           ファイルが対話型のセッションに使用されます。Windows PowerShell スナッ
           プインを追加するコマンドおよびコマンド プロンプトを変更するコマンドを
           含む、リモート ユーザー プロファイルのコマンドは、リモート プロンプト
           が表示される前に実行されます。
        
        -- Enter-PSSession は、ローカル コンピューターの UI カルチャ設定を対話型
           のセッションに使用します。ローカルの UI カルチャを検索するには、$UICu
           lture 自動変数を使用します。
        
        -- Enter-PSSession には Get-Command、Out-Default、および Exit-PSSession 
           コマンドレットが必要です。これらのコマンドレットがリモート コンピュー
           ターのセッション構成に含まれていない場合、Enter-PSSession コマンドは
           失敗します。
        
        -- コマンドを解析および解釈してからリモート コンピューターに送信する Inv
           oke-Command と異なり、Enter-PSSession はコマンドを解釈せず、直接リモ
           ート コンピューターに送信します。
        
    -------------------------- 例 1 --------------------------
    
    C:\PS>Enter-PSSession
    
    LocalHost\PS>
    
    説明
    -----------
    このコマンドを実行すると、ローカル コンピューターで対話型のセッションが開始
    されます。コマンド プロンプトが変わり、別のセッションでコマンドが実行されて
    いることが示されます。
    
    入力したコマンドは新しいセッションで実行され、結果は既定のセッションにテキス
    トとして返されます。
    
    -------------------------- 例 2 --------------------------
    
    C:\PS>enter-pssession -computer Server01
    
    Server01\PS> get-process powershell > C:\ps-test\process.txt
    
    Server01\PS> exit-pssession
    C:\PS>
    
    C:\PS> dir C:\ps-test\process.txt
    Get-ChildItem : Cannot find path 'C:\ps-test\process.txt' because it does no
    t exist.
    At line:1 char:4
    + dir <<<<  c:\ps-test\process.txt
    
    説明
    -----------
    このコマンドは、リモート コンピューターとの対話型のセッションでの作業方法を
    示します。
    
    最初のコマンドは、Enter-PSSession コマンドレットを使用して、Server01 という
    リモート コンピューターとの対話型のセッションを開始します。セッションが開始
    されると、コマンド プロンプトはコンピューター名を含むプロンプトに変わります。
    
    2 番目のコマンドは、PowerShell プロセスを取得し、出力が Process.txt ファイル
    にリダイレクトされます。このコマンドはリモート コンピューターに送信され、フ
    ァイルはリモート コンピューターに保存されます。
    
    3 番目のコマンドは、Exit キーワードを使用して対話型のセッションを終了し、接
    続を切断します。
    
    4 番目のコマンドは、Process.txt ファイルがリモート コンピューター上に存在す
    ることを確認します。ローカル コンピューター上の Get-ChildItem ("dir") コマン
    ドでは、ファイルを検出できません。
    
    -------------------------- 例 3 --------------------------
    
    C:\PS>$s = new-pssession -computername Server01
    
    C:\PS> Enter-PSSession -session $s
    
    Server01\PS>
    
    説明
    -----------
    これらのコマンドは、Enter-PSSession の Session パラメーターを使用して、既存
    の Windows PowerShell セッション (PSSession) で対話型のセッションを実行しま
    す。
    
    -------------------------- 例 4 --------------------------
    
    C:\PS>Enter-PSSession -computername Server01 -port 90 -credential domain01\
    user01
    
    Server01\PS>
    
    説明
    -----------
    このコマンドを実行すると、Server01 コンピューターと対話型のセッションが開始
    されます。Port パラメーターを使用してポートを指定し、Credential パラメーター
    を使用してリモート コンピューターに接続するアクセス許可を持つユーザー アカウ
    ントを指定します。
    
    -------------------------- 例 5 --------------------------
    
    C:\PS>Enter-PSSession -computername Server01
    
    Server01:\PS> Exit-PSSession
    
    C:\PS>
    
    説明
    -----------
    この例は、対話型のセッションを開始および終了する方法を示しています。最初のコ
    マンドは、Enter-PSSession コマンドレットを使用して、Server01 コンピューター
    との対話型のセッションを開始します。
    
    2 番目のコマンドは、Exit-PSSession コマンドレットを使用してセッションを終了
    します。Exit キーワードを使用して対話型のセッションを終了することもできます。
    Exit-PSSession および Exit は、同じ結果になります。
    
関連するリンク
    Online version: http://go.microsoft.com/fwlink/?LinkID=135210
    about_PSSessions 
    about_Remote 
    New-PSSession 
    Get-PSSession 
    Exit-PSSession 
    Remove-PSSession 
    Invoke-Command 
    	
記事で解説しているパソコンの環境
 基本ソフト: Windows 7
 キーワード: Windows PowerShell、ヘルプ、Cmdlet、Enter-PSSession
ご利用数: 1913980
感想・要望・問い合わせは こちら