New-CimSession

建立 CIM 會話。

Syntax

New-CimSession
   [-Authentication <PasswordAuthenticationMechanism>]
   [[-Credential] <PSCredential>]
   [[-ComputerName] <String[]>]
   [-Name <String>]
   [-OperationTimeoutSec <UInt32>]
   [-SkipTestConnection]
   [-Port <UInt32>]
   [-SessionOption <CimSessionOptions>]
   [<CommonParameters>]
New-CimSession
   [-CertificateThumbprint <String>]
   [[-ComputerName] <String[]>]
   [-Name <String>]
   [-OperationTimeoutSec <UInt32>]
   [-SkipTestConnection]
   [-Port <UInt32>]
   [-SessionOption <CimSessionOptions>]
   [<CommonParameters>]

Description

此 Cmdlet 僅適用於 Windows 平臺。

Cmdlet New-CimSession 會建立 CIM 會話。 CIM 會話是客戶端物件,代表本機計算機或遠端電腦的連線。 CIM 會話包含連線的相關信息,例如 ComputerName、使用的通訊協定或各種標識碼。

此 Cmdlet 會傳回可由所有其他 CIM Cmdlet 使用的 CIM 會話物件。

範例

範例 1:使用預設選項建立 CIM 會話

此範例會建立具有預設選項的本機 CIM 會話。 如果未 指定 ComputerNameNew-CimSession 請建立本機電腦的 DCOM 會話。

New-CimSession

範例 2:建立特定電腦的 CIM 會話

此範例會將 CIM 會話建立至 ComputerName指定的電腦。 根據預設,New-CimSession會在指定 ComputerName建立 WSMan 工作階段。

New-CimSession -ComputerName Server01

範例 3:建立多部計算機的 CIM 會話

此範例會在逗號分隔清單中,為每個 ComputerName指定的電腦建立 CIM 會話。

New-CimSession -ComputerName Server01,Server02,Server03

範例 4:建立具有易記名稱的 CIM 工作階段

本範例會在逗號分隔清單中,為每個 ComputerName 指定的電腦建立遠端 CIM 工作階段,並藉由指定 Name 將易記名稱指派給新的工作階段。

New-CimSession -ComputerName Server01,Server02 -Name FileServers
Get-CimSession -Name File*

您可以使用 CIM 會話的易記名稱來參考其他 CIM Cmdlet 中的工作階段,例如 Get-CimSession

範例 5:使用 PSCredential 物件建立計算機的 CIM 會話

此範例會使用 Credential 所指定的 PSCredential 物件,以及 Authentication指定的驗證類型,建立 ComputerName指定的電腦 CIM 會話。

New-CimSession -ComputerName Server01 -Credential $cred -Authentication Negotiate

您可以使用 Cmdlet 建立 PSCredential 物件 Get-Credential

範例 6:使用特定埠建立電腦 CIM 會話

此範例會使用 Port指定的 TCP 連接埠,對 ComputerName指定的電腦建立 CIM 工作階段。

New-CimSession -ComputerName Server01 -Port 1234

範例 7:使用 DCOM 建立 CIM 會話

此範例會使用分散式 COM (DCOM) 通訊協定來建立 CIM 會話,而不是 WSMan。

$SessionOption = New-CimSessionOption -Protocol DCOM
New-CimSession -ComputerName Server1 -SessionOption $SessionOption

參數

-Authentication

指定用於使用者認證的驗證類型。 此參數可接受的值為:

  • 預設
  • Digest
  • 交涉
  • 基本
  • Kerberos
  • NtlmDomain
  • CredSsp

您無法使用 NtlmDomain 驗證類型來連線到本機電腦。 CredSSP 驗證僅適用於 Windows Vista、Windows Server 2008 和更新版本的 Windows。

警告

認證安全性服務提供者 (CredSSP) 驗證是針對需要對多個資源進行驗證的命令所設計,例如存取遠端網路共用。 此機制會增加遠端作業的安全性風險。 如果遠端電腦遭到入侵,傳遞給它的認證可用來控制網路會話。

Type:PasswordAuthenticationMechanism
Accepted values:Default, Digest, Negotiate, Basic, Kerberos, NtlmDomain, CredSsp
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-CertificateThumbprint

指定具有執行此動作許可權之用戶帳戶的數位公鑰憑證 (X.509)。 輸入憑證的憑證指紋。

憑證將用於用戶端憑證式驗證。 它們只能對應至本機用戶帳戶;它們不適用於網域帳戶。

若要取得憑證指紋,請使用 Get-Item PowerShell憑證提供者中的 或 Get-ChildItem Cmdlet。

如需詳細資訊,請參閱 about_Certificate_Provider

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

-ComputerName

指定要建立 CIM 工作階段的電腦名稱。 指定單一計算機名稱,或以逗號分隔的多個計算機名稱。

如果未 指定 ComputerName ,則會建立本機電腦的 CIM 會話。 您可以使用下列其中一種格式指定電腦名稱的值:

  • 一或多個 NetBIOS 名稱
  • 一或多個 IP 位址
  • 一或多個完整功能變數名稱。

如果計算機位於與使用者不同的網域中,您必須指定完整功能變數名稱。

Type:String[]
Aliases:CN, ServerName
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Credential

指定具有執行此動作許可權的用戶帳戶。 如果未 指定 Credential ,則會使用目前的用戶帳戶。

使用下列其中一種格式指定 Credential 的值:

  • 用戶名稱:“User01”
  • 功能變數名稱和使用者名稱:“Domain01\User01”
  • 用戶主體名稱:“User@Domain.com”
  • PSCredential 物件,例如 Cmdlet 所傳回的物件 Get-Credential

當您輸入使用者名稱時,系統會提示您輸入密碼。

Type:PSCredential
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

指定 CIM 工作階段的易記名稱。

使用其他 Cmdlet 時,您可以使用名稱來參考 CIM 會話,例如 Get-CimSession Cmdlet。 名稱不一定是計算機或目前會話的唯一名稱。

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

-OperationTimeoutSec

Cmdlet 等候伺服器回應的持續時間。

根據預設,此參數的值是0,這表示 Cmdlet 會使用伺服器的預設逾時值。

如果 OperationTimeoutSec 參數設定為小於強固連線重試逾時 3 分鐘的值,則無法復原最後超過 OperationTimeoutSec 參數值的網路失敗,因為伺服器上的作業會在用戶端重新連線之前逾時。

Type:UInt32
Aliases:OT
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

指定用於此連線之遠端電腦上的網路埠。 若要連線到遠端電腦,遠端計算機必須接聽連線所使用的埠。 默認埠為 5985(適用於 HTTP 的 WinRM 連接埠)和 5986(適用於 HTTPS 的 WinRM 連接埠)。

使用替代埠之前,您必須在遠端電腦上設定 WinRM 接聽程式,以在該埠接聽。 使用下列命令來設定接聽程式:

winrm delete winrm/config/listener?Address=*+Transport=HTTP

winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number>"}

除非您必須,否則請勿使用 Port 參數。 命令中的埠設定會套用至命令執行所在的所有計算機或會話。 替代埠設定可能會防止命令在所有計算機上執行。

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

-SessionOption

設定新 CIM 工作階段的進階選項。 輸入使用 New-CimSessionOption Cmdlet 建立的 CimSessionOption 物件名稱。

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

-SkipTestConnection

根據預設, New-CimSession Cmdlet 會建立與遠端 WS 管理端點的連線,原因有兩個:確認遠端伺服器正在接聽使用 Port 參數指定的埠號碼,以及驗證指定的帳戶認證。 驗證是使用標準 WS 身分識別作業來完成。 如果遠端 WS 管理端點無法使用 WS-Identify,或減少某些資料傳輸時間,您可以新增 SkipTest 連線 ion 參數。

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

輸入

None

您無法使用管線將物件傳送至此 Cmdlet。

輸出

CimSession

此 Cmdlet 會傳回 CIM 會話物件。

備註

PowerShell 包含下列的 New-CimSession別名:

  • Windows:
    • ncms

此 Cmdlet 僅適用於 Windows 平臺。