Connect-WSMan
連線到遠端電腦上的 WinRM 服務。
語法
Connect-WSMan [-ApplicationName <string>] [-ComputerName <string>] [-Port <int>] [-UseSSL] [-Authentication <Authentication>] [-ComputerName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionOption <hashtable>] [<CommonParameters>]
Connect-WSMan [-ConnectionURI <Uri>] [-Authentication <Authentication>] [-ComputerName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionOption <hashtable>] [<CommonParameters>]
描述
Connect-WSMan Cmdlet 會連線到遠端電腦的 WinRM 服務,並建立與遠端電腦的固定連線。您可以在 WS-Management 提供者的內容中使用這個 Cmdlet,連線到遠端電腦的 WinRM 服務。不過,您也可以在變更為 WS-Management 提供者之前,使用這個 Cmdlet 連線到遠端電腦的 WinRM 服務。遠端電腦將會出現在 WS-Management 提供者的根目錄中。
如需如何中斷與遠端電腦 WinRM 服務之連線的詳細資訊,請參閱 Disconnect-WSMan。
參數
-ApplicationName <string>
指定連線中的應用程式名稱。ApplicationName 參數的預設值為 "WSMAN"。遠端端點的完整識別元的格式如下:
<傳輸>://<伺服器>:<連接埠>/<ApplicationName>
例如:
http://server01:8080/WSMAN
為工作階段提供服務的 Internet Information Services (IIS) 會將包含此端點的要求轉送到指定的應用程式。此 "WSMAN" 的預設設定適合大部分使用情況。此參數是為了多台電腦遠端連線到一台執行 Windows PowerShell 的電腦時使用而設計。在此情況下,IIS 會裝載 Web Services for Management (WS-Management) 以提升效率。
必要? |
false |
位置? |
named |
預設值 |
wsman |
接受管線輸入? |
false |
接受萬用字元? |
false |
-Authentication <Authentication>
指定用於伺服器的驗證機制。可能的值為:
- Basic:Basic 是一種以純文字格式將使用者名稱和密碼傳送到伺服器或 Proxy 的配置。
- Default:使用 WS-Management 通訊協定所實作的驗證方法。這是預設值。
- Digest:Digest 是一種挑戰-回應配置,會使用伺服器指定的資料字串進行挑戰。
- Kerberos:用戶端電腦與伺服器可使用 Kerberos 憑證相互驗證。
- Negotiate:Negotiate 是一種挑戰-回應配置,可與伺服器或 Proxy 進行交涉以決定要用於驗證的配置。例如,此參數值允許交涉式驗證判斷是使用 Kerberos 通訊協定還是 NTLM。
- CredSSP:使用認證安全性服務提供者 (CredSSP) 驗證,該驗證允許使用者委派認證。此選項專為在一台遠端電腦執行,但卻從其他遠端電腦收集資料或執行其他命令的命令而設計。
警告:CredSSP 會從本機電腦將使用者的認證委派給遠端電腦。此做法會提高遠端操作的安全性風險。如果遠端電腦已經遭受危害,當認證傳送到遠端電腦時,便可能遭到利用來控制網路工作階段。
必要? |
false |
位置? |
named |
預設值 |
Default |
接受管線輸入? |
false |
接受萬用字元? |
false |
-ComputerName <string>
指定要對其執行管理作業的電腦。此值可以是完整網域名稱、NetBIOS 名稱或 IP 位址。請使用本機電腦名稱、localhost 或點 (.) 指定本機電腦。本機電腦為預設值。當遠端電腦所在的網域與使用者的網域不同時,必須使用完整網域名稱。您可以經由管道將此參數的值輸出至 Cmdlet。
必要? |
false |
位置? |
named |
預設值 |
localhost |
接受管線輸入? |
false |
接受萬用字元? |
false |
-ConnectionURI <Uri>
指定連線端點。此字串的格式為:
<Transport>://<Server>:<Port>/<ApplicationName>。
下列字串是此參數的正確格式值:
http://Server01:8080/WSMAN。此 URI 必須是完整的 URI。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Credential <PSCredential>
指定具有執行此動作之權限的使用者帳戶。預設為目前使用者。請輸入使用者名稱,例如 "User01"、"Domain01\User01" 或 "User@Domain.com"。或者輸入 PSCredential 物件,例如 Get-Credential Cmdlet 所傳回的物件。當您輸入使用者名稱時,會提示您輸入密碼。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-OptionSet <hashtable>
將一組切換參數傳遞到服務,以修改或精簡要求的性質。這些切換參數與命令列殼層中使用的切換參數相似,都是服務專有的參數。您可以指定任何數量的選項。
下列範例會示範將值 1、2、3 傳遞給參數 a、b、c 的語法:
-OptionSet @{a=1;b=2;c=3}
必要? |
|
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-Port <int>
指定用戶端與 WinRM 服務連線時所要使用的連接埠。傳輸協定為 HTTP 時的預設連接埠是 80。傳輸協定為 HTTPS 時的預設連接埠是 443。當您使用 HTTPS 做為傳輸協定時,ComputerName 參數的值必須與伺服器的憑證一般名稱 (CN) 相符。然而,若將 SkipCNCheck 參數指定為 SessionOption 參數的一部分,則伺服器的憑證一般名稱不必與伺服器的主機名稱相符。SkipCNCheck 參數只能用於受信任的電腦。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-SessionOption <hashtable>
定義一組用於 WS-Management 工作階段的擴充選項。請輸入使用 New-WSManSessionOption Cmdlet 所建立的 SessionOption 物件。如需可用選項的詳細資訊,請參閱 New-WSManSessionOption。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-UseSSL
指定必須使用安全通訊端層 (SSL) 通訊協定來建立與遠端電腦的連線。預設不會使用 SSL。
WS-Management 會將所有透過網路傳輸的 Windows PowerShell 內容加密。UseSSL 參數可以讓您指定使用 HTTPS 提供多一層防護,而非使用 HTTP。如果連線所用的連接埠無法供 SSL 使用,但卻指定此參數,則命令會失敗。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
無 這個 Cmdlet 不接受任何輸入。 |
輸出 |
無 這個 Cmdlet 不會產生任何輸出。 |
附註
您可以在遠端電腦執行管理命令或查詢管理資料,而不需要建立 WS-Management 工作階段。您可以使用 Invoke-WSManAction 和 Get-WSManInstance 的 ComputerName 參數達到上述目的。使用 ComputerName 參數時,Windows PowerShell 會建立用於該單一命令的暫時連線。在命令執行完成之後,這個連線便會關閉。
範例 1
C:\PS>Connect-WSMan -computer server01
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
描述
-----------
這個命令會建立與遠端 server01 電腦的連線。
Connect-WSMan Cmdlet 通常是在 WS-Management 提供者的內容中,用來連線到遠端電腦 (在這個範例中就是 server01 電腦)。不過,您可以在變更為 WS-Management 提供者之前,使用此 Cmdlet 建立與遠端電腦的連線。這些連線將會出現在 ComputerName 清單中。
範例 2
C:\PS>$cred = Get-Credential Administrator
Connect-WSMan -computer server01 -credential $cred
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
描述
-----------
這個命令會使用管理員帳戶認證,建立與遠端系統 server01 的連線。
第一個命令會使用 Get-Credential Cmdlet 取得系統管理員認證,然後將其儲存在 $cred 變數中。Get-Credential Cmdlet 會提示使用者輸入密碼或者使用者名稱和密碼。提示使用者的方式是透過對話方塊
或命令列 (視系統登錄設定而定)。
第二個命令會使用 Credential 參數,將儲存在 $cred 中的認證傳遞到 Connect-WSMan。接著 Connect-WSMan 會使用系統管理員認證連線到遠端系統 server01。
Connect-WSMan Cmdlet 通常是在 WS-Management 提供者的內容中,用來連線到遠端電腦 (在這個範例中就是 server01)。不過,您可以在變更為 WS-Management 提供者之前,使用此 Cmdlet 建立與遠端電腦的連線,而這些連線將會出現在 ComputerName 清單中。
範例 3
C:\PS>Connect-WSMan -computer server01 -port 80
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
描述
-----------
這個命令會透過連接埠 80 建立與遠端 server01 電腦的連線。
Connect-WSMan Cmdlet 通常是在 WS-Management 提供者的內容中,用來連線到遠端電腦 (在這個範例中就是 server01 電腦)。不過,您可以在變更為 WS-Management 提供者之前,使用此 Cmdlet 建立與遠端電腦的連線。這些連線將會出現在 ComputerName 清單中。
範例 4
C:\PS>$a = New-WSManSessionOption -operationtimeout 30000
Connect-WSMan -computer server01 -sessionoption $a
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
描述
-----------
這個命令會使用 New-WSManSessionOption 命令中定義的連線選項,建立與遠端 server01 電腦的連線。
第一個命令會使用 New-WSManSessionOption Cmdlet 將一組連線設定選項儲存在 $a 變數中。在這個範例中,工作階段選項會將連線逾時設定為 30 秒 (30,000 毫秒)。
第二個命令會使用 SessionOption 參數,將儲存在 $a 變數中的認證傳遞到 Connect-WSMan。接著,Connect-WSMan 會使用指定的工作階段選項連線到遠端 server01 電腦。
Connect-WSMan Cmdlet 通常是在 WS-Management 提供者的內容中,用來連線到遠端電腦 (在這個範例中就是 server01 電腦)。不過,您可以在變更為 WS-Management 提供者之前,使用此 Cmdlet 建立與遠端電腦的連線。這些連線將會出現在 ComputerName 清單中。
請參閱
概念
Disable-WSManCredSSP
Disconnect-WSMan
Enable-WSManCredSSP
Get-WSManCredSSP
Get-WSManInstance
Invoke-WSManAction
New-WSManInstance
New-WSManSessionOption
Remove-WSManInstance
Set-WSManInstance
Set-WSManQuickConfig
Test-WSMan