Test-WSMan
測試 WinRM 服務是否已在本機或遠端電腦上執行。
語法
Test-WSMan
[[-ComputerName] <String>]
[-Authentication <AuthenticationMechanism>]
[-Port <Int32>]
[-UseSSL]
[-ApplicationName <String>]
[-Credential <PSCredential>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Description
此 Cmdlet 僅適用於 Windows 平臺。
Cmdlet Test-WSMan
會提交識別要求,以判斷 WinRM 服務是在本機或遠端電腦上執行。 如果測試的計算機正在執行服務,Cmdlet 會顯示 WS-Management 身分識別架構、通訊協定版本、產品廠商,以及測試服務的產品版本。
範例
範例 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
此命令會測試 WS-Management (WinRM) 服務是否使用驗證參數在名為 server01 的電腦上執行。
使用驗證參數可傳 Test-WSMan
回作業系統版本。
參數
-ApplicationName
指定連接中的應用程式名稱。 ApplicationName 參數的預設值為 WSMAN。 遠端端端點的完整識別碼格式如下:
<Transport>://<Server>:<Port>/<ApplicationName>
例如:http://server01:8080/WSMAN
裝載會話的 網際網路資訊服務 (IIS)會將具有此端點的要求轉送至指定的應用程式。 此 WSMAN 的預設設定適用於大部分用途。 如果許多電腦與執行 Windows PowerShell 的電腦建立遠端連線,則此參數的設計用途為 。 在此情況下,IIS 會裝載 Web Services for Management (WS-Management) 以提高效率。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Authentication
指定用於伺服器的驗證機制。 此參數可接受的值為:
Basic
- 基本是一種配置,其中使用者名稱和密碼會以純文本傳送至伺服器或 Proxy。Default
- 使用 WS-Management 通訊協定所實作的驗證方法。 這是預設值。- 1 - 摘要是一種挑戰回應配置,使用伺服器指定的數據字串來進行挑戰。
Kerberos
- 用戶端電腦和伺服器會使用 Kerberos 憑證相互驗證。Negotiate
- 交涉是一種挑戰回應配置,會與伺服器或 Proxy 交涉,以判斷要用於驗證的配置。 例如,此參數值允許交涉來判斷是否使用 Kerberos 通訊協定或 NTLM。CredSSP
- 使用認證安全性支援提供者 (CredSSP) 驗證,讓使用者委派認證。 此選項是針對在一部遠端電腦上執行的命令所設計,但從其他遠端電腦上收集資料或執行其他命令。
警告
CredSSP 會將使用者認證從本機計算機委派給遠端電腦。 這種做法會增加遠端作業的安全性風險。 如果遠端電腦遭到入侵,當認證傳遞至該計算機時,可以使用認證來控制網路會話。
重要
如果您未指定 Authentication 參數,要求 Test-WSMan
會以匿名方式傳送至遠端電腦,而不需使用驗證。 如果以匿名方式提出要求,則不會傳回操作系統版本特有的資訊。 相反地,此 Cmdlet 會顯示操作系統版本和 Service Pack 層級的 Null 值(OS:0.0.0 SP:0.0)。
類型: | AuthenticationMechanism |
別名: | auth, am |
接受的值: | None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-CertificateThumbprint
指定具有執行此動作許可權之用戶帳戶的數位公鑰憑證 (X509)。 輸入憑證的憑證指紋。
憑證將用於用戶端憑證式驗證。 它們只能對應至本機用戶帳戶;它們不適用於網域帳戶。
若要取得憑證指紋,請使用 Windows PowerShell 憑證:磁碟驅動器中的 Get-Item 或 Get-ChildItem
命令。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ComputerName
指定要執行管理作業的電腦。 此值可以是完整功能變數名稱、NetBIOS 名稱或IP位址。 使用本機計算機名稱、使用localhost,或使用點 (.
) 來指定本機電腦。 本機計算機是預設值。 當遠端電腦位於與使用者不同的網域時,您必須使用完整功能變數名稱。 您可以使用管線將此參數的值傳送至 Cmdlet。
類型: | String |
別名: | cn |
Position: | 0 |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Credential
指定具有執行此動作許可權的用戶帳戶。 預設為目前使用者。 輸入使用者名稱,例如 User01、Domain01\User01 或 User@Domain.com。 或者,輸入 PSCredential 物件,例如 Cmdlet 所傳回的物件 Get-Credential
。 當您輸入使用者名稱時,此 Cmdlet 會提示您輸入密碼。
類型: | PSCredential |
別名: | cred, c |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Port
指定客戶端連線到 WinRM 服務時要使用的埠。 當傳輸為 HTTP 時,預設埠為 80。 當傳輸是 HTTPS 時,預設埠為 443。
當您使用 HTTPS 做為傳輸時,ComputerName 參數的值必須符合伺服器的憑證一般名稱 (CN)。
類型: | Int32 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-UseSSL
指定使用安全套接字層 (SSL) 通訊協定來建立遠端電腦的連線。 預設不會使用 SSL。
WS-Management 會加密透過網路傳輸的所有 Windows PowerShell 內容。 UseSSL 參數可讓您指定 HTTPS 的額外保護,而不是 HTTP。 如果連線所使用的埠上無法使用 SSL,而且您指定此參數,則命令會失敗。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None
您無法使用管線將物件傳送至此 Cmdlet。
輸出
此 Cmdlet 會傳 回代表測試結果的 XmlElement 物件。
備註
根據預設, Test-WSMan
Cmdlet 會查詢 WinRM 服務而不使用驗證,而且不會傳回作業系統版本特有的資訊。 相反地,它會顯示操作系統版本和 Service Pack 層級的 Null 值(OS:0.0.0 SP:0.0)。