共用方式為


New-PSWorkflowSession

建立工作流程會話。

語法

Default (預設值)

New-PSWorkflowSession
    [[-ComputerName] <String[]>]
    [-Credential <Object>]
    [-Name <String[]>]
    [-Port <Int32>]
    [-UseSSL]
    [-ApplicationName <String>]
    [-ThrottleLimit <Int32>]
    [-SessionOption <PSSessionOption>]
    [-Authentication <AuthenticationMechanism>]
    [-CertificateThumbprint <String>]
    [-EnableNetworkAccess]
    [<CommonParameters>]

Description

New-PSWorkflowSession Cmdlet 會建立使用者管理的會話(PSSession),專為執行 Windows PowerShell 工作流程而設計。 它會使用 Microsoft.PowerShell.Workflow 作業階段組態,其中包括腳本、類型和格式化檔案,以及工作流程所需的選項。

您可以使用 New-PSWorkflowSession 或別名,nwsn

您也可以將工作流程一般參數新增至此命令。 如需工作流程一般參數的詳細資訊,請參閱 about_WorkflowCommonParameters

此 Cmdlet 已在 Windows PowerShell 3.0 中引進。

範例

範例 1:在遠端計算機上建立工作流程會話

此範例會在 ServerNode01 遠端電腦上建立 WorkflowTests 工作階段。

$params = @{
    ComputerName = "ServerNode01"
    Name = "WorkflowTests"
    SessionOption = (New-PSSessionOption -OutputBufferingMode Drop)
}
New-PSWorkflowSession @params

SessionOption 參數的值是 New-PSSessionOption 命令,會將會話中的輸出緩衝模式設定為 Drop

範例 2:在多部遠端計算機上建立工作流程會話

此範例會在 ServerNode01 和 Server12 計算機上建立工作流程會話。 此命令會使用 Credential 參數,以網域系統管理員的許可權執行。

"ServerNode01", "Server12" |
    New-PSWorkflowSession -Name WorkflowSession -Credential Domain01\Admin01 -ThrottleLimit 150

此命令會使用 ThrottleLimit 參數,將每個命令的節流限制增加到 150。 此值的優先順序高於 Microsoft.PowerShell.Workflow 會話組態中所設定的預設節流限制 100。

參數

-ApplicationName

指定連線 URI 的應用程式名稱區段。

預設值是本機計算機上 $PSSessionApplicationName 喜好設定變數的值。 如果未定義此喜好設定變數,預設值為 WSMAN。 此值適用於大部分使用。 如需詳細資訊,請參閱 about_Preference_Variables

WinRM 服務會使用應用程式名稱來選取接聽程式以服務連線要求。 此參數的值應該符合遠端電腦上接聽程式 URLPrefix 屬性的值。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Authentication

指定用來驗證使用者認證的機制。 此參數可接受的值為:

  • 預設
  • 基本
  • Credssp
  • 摘要
  • Kerberos
  • 談判
  • 使用隱式憑證進行協商

預設值為 Default。

CredSSP 驗證僅適用於 Windows Vista、Windows Server 2008 和更新版本的 Windows作系統。

如需此參數值的詳細資訊,請參閱 AuthenticationMechanism 列舉

謹慎

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

參數屬性

類型:AuthenticationMechanism
預設值:Default
接受的值:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-CertificateThumbprint

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

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

若要取得憑證指紋,請使用 Windows PowerShell 憑證: 磁碟驅動器中的 Get-Item Cmdlet 或 Get-ChildItem Cmdlet。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-ComputerName

建立與指定計算機的持續連線(PSSession)。 如果您輸入多個計算機名稱,Windows PowerShell 會建立多個 PSSessions,每部計算機各建立一個。 預設值為本機電腦。

輸入 NetBIOS 名稱、IP 位址或一部或多部遠端電腦的完整網域名稱。 若要指定本機計算機,請輸入計算機名稱、localhost 或點 (.)。 當計算機位於與使用者不同的網域時,需要完整功能變數名稱。 您也可以使用管線將電腦名稱以引弧括住,以 New-PSWorkflowSession

若要在 ComputerName 參數的值中使用 IP 位址,命令必須包含 Credential 參數。 此外,計算機必須針對 HTTPS 傳輸進行設定,或遠端電腦的 IP 位址必須包含在本機電腦上的 WinRM TrustedHosts 清單中。 如需將計算機名稱新增至 TrustedHosts 清單的指示,請參閱 about_Remote_Troubleshooting中的。

參數屬性

類型:

String[]

預設值:Local computer
支援萬用字元:False
不要顯示:False
別名:Cn

參數集

(All)
Position:0
必要:False
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-Credential

指定具有執行此動作許可權的用戶帳戶。 預設值為目前的使用者。 輸入使用者名稱,例如User01、Domain01\User01 或 User@Domain.com,或輸入 PSCredential 物件,例如 Get-Credential Cmdlet 所傳回的用戶名稱。

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

參數屬性

類型:Object
預設值:Current user
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-EnableNetworkAccess

指出此 Cmdlet 會將互動式安全性令牌新增至回送會話。 互動式令牌可讓您在從其他電腦取得數據的回送會話中執行命令。 例如,您可以在會話中執行命令,將 XML 檔案從遠端電腦複製到本機電腦。

回送會話是 來自相同電腦上的 PSSession。 若要建立回送會話,請勿指定 ComputerName 參數,或將其值設定為 dot、localhost 或本機計算機的名稱。

根據預設,會建立具有網路令牌的回送會話,可能無法提供足夠的許可權來向遠端計算機進行驗證。

EnableNetworkAccess 參數只在回送會話中有效。 如果您在遠端電腦上建立會話時指定 EnableNetworkAccess 參數,命令會成功,但會忽略 參數。

您也可以使用 Authentication 參數的 CredSSP 值,在回送會話中允許遠端訪問,此參數會將會話認證委派給其他計算機。

若要保護計算機免於惡意存取,已中斷連線的回送會話具有互動式令牌,請使用 EnableNetworkAccess 參數所建立的會話,只能從建立會話的計算機重新連線。 使用 CredSSP 驗證的已中斷聯機會話可以從其他電腦重新連線。 如需詳細資訊,請參閱 Disconnect-PSSession Cmdlet。

此參數是在 Windows PowerShell 3.0 中引進的。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Name

指定工作流程會話的易記名稱。 您可以將名稱與其他 Cmdlet 搭配使用,例如 Get-PSSessionEnter-PSSession。 名稱不一定是計算機或目前會話的唯一名稱。

參數屬性

類型:

String[]

預設值:Session#
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值: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 參數。 命令中的埠設定會套用至命令執行所在的所有計算機或會話。 替代埠設定可能會防止命令在所有計算機上執行。

參數屬性

類型:Int32
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-SessionOption

指定工作階段的進階選項。 輸入 SessionOption 物件,例如您使用 New-PSSessionOption Cmdlet 建立的物件。

如果設定選項,選項的預設值取決於 $PSSessionOption 喜好設定變數的值。 否則,預設值是由會話組態中設定的選項所建立。

會話選項值優先於 $PSSessionOption 喜好設定變數和會話組態中設定的會話預設值。 不過,它們不會優先於會話設定中設定的最大值、配額或限制。 如需工作階段組態的詳細資訊,請參閱 about_Session_Configurations

如需工作階段選項的描述,包括預設值,請參閱 New-PSSessionOption。 如需 $PSSessionOption 喜好設定變數的相關信息,請參閱 about_Preference_Variables

參數屬性

類型:PSSessionOption
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-ThrottleLimit

指定可以建立以執行此命令的並行連線數目上限。 如果您省略此參數或輸入 0 值(零),則會使用 Microsoft.PowerShellWorkflow 工作階段組態 100 的預設值。

節流限制僅適用於目前的命令,不適用於會話或計算機。

參數屬性

類型:Int32
預設值:100
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-UseSSL

指出此 Cmdlet 會使用安全套接字層 (SSL) 通訊協定來建立與遠端電腦的連線。 根據預設,不會使用 SSL。

WS-Management 會加密透過網路傳輸的所有 Windows PowerShell 內容。 UseSSL 參數是額外的保護,可跨 HTTPS 連線傳送數據,而不是 HTTP 連線。

如果您指定此參數,但在用於命令的埠上無法使用 SSL,則命令會失敗。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

PSSession

您可以使用管線將會話或電腦名稱傳送至此 Cmdlet。

輸出

PSSession

備註

New-PSWorkflowSession 命令相當於下列命令:

New-PSSession -ConfigurationName Microsoft.PowerShell.Workflow