ค้นหาเว็บไซต์

การลงทะเบียน PSSessionConfiguration (Microsoft.PowerShell.Core)


ลงทะเบียน-PSSessionConfiguration

โมดูล :
Microsoft.PowerShell.Core

สร้างและลงทะเบียนการกำหนดค่าเซสชันใหม่

ไวยากรณ์

Register-PSSessionConfiguration
        [-ProcessorArchitecture <String>]
        [-Name] <String>
        [-ApplicationBase <String>]
        [-RunAsCredential <PSCredential>]
        [-ThreadApartmentState <ApartmentState>]
        [-ThreadOptions <PSThreadOptions>]
        [-AccessMode <PSSessionConfigurationAccessMode>]
        [-UseSharedProcess]
        [-StartupScript <String>]
        [-MaximumReceivedDataSizePerCommandMB <Double>]
        [-MaximumReceivedObjectSizeMB <Double>]
        [-SecurityDescriptorSddl <String>]
        [-ShowSecurityDescriptorUI]
        [-Force]
        [-NoServiceRestart]
        [-PSVersion <Version>]
        [-SessionTypeOption <PSSessionTypeOption>]
        [-TransportOption <PSTransportOption>]
        [-ModulesToImport <Object[]>]
        [-WhatIf]
        [-Confirm]
        [<CommonParameters>]
Register-PSSessionConfiguration
        [-ProcessorArchitecture <String>]
        [-Name] <String>
        [-AssemblyName] <String>
        [-ApplicationBase <String>]
        [-ConfigurationTypeName] <String>
        [-RunAsCredential <PSCredential>]
        [-ThreadApartmentState <ApartmentState>]
        [-ThreadOptions <PSThreadOptions>]
        [-AccessMode <PSSessionConfigurationAccessMode>]
        [-UseSharedProcess]
        [-StartupScript <String>]
        [-MaximumReceivedDataSizePerCommandMB <Double>]
        [-MaximumReceivedObjectSizeMB <Double>]
        [-SecurityDescriptorSddl <String>]
        [-ShowSecurityDescriptorUI]
        [-Force]
        [-NoServiceRestart]
        [-PSVersion <Version>]
        [-SessionTypeOption <PSSessionTypeOption>]
        [-TransportOption <PSTransportOption>]
        [-ModulesToImport <Object[]>]
        [-WhatIf]
        [-Confirm]
        [<CommonParameters>]
Register-PSSessionConfiguration
        [-ProcessorArchitecture <String>]
        [-Name] <String>
        [-RunAsCredential <PSCredential>]
        [-ThreadApartmentState <ApartmentState>]
        [-ThreadOptions <PSThreadOptions>]
        [-AccessMode <PSSessionConfigurationAccessMode>]
        [-UseSharedProcess]
        [-StartupScript <String>]
        [-MaximumReceivedDataSizePerCommandMB <Double>]
        [-MaximumReceivedObjectSizeMB <Double>]
        [-SecurityDescriptorSddl <String>]
        [-ShowSecurityDescriptorUI]
        [-Force]
        [-NoServiceRestart]
        [-TransportOption <PSTransportOption>]
        -Path <String>
        [-WhatIf]
        [-Confirm]
        [<CommonParameters>]

คำอธิบาย

cmdlet นี้ใช้ได้เฉพาะบนแพลตฟอร์ม Windows เท่านั้น

Register-PSSessionConfiguration cmdlet จะสร้างและลงทะเบียนการกำหนดค่าเซสชันใหม่บนคอมพิวเตอร์เฉพาะที่ นี่คือ cmdlet ขั้นสูงที่คุณสามารถใช้เพื่อสร้างเซสชันที่กำหนดเองสำหรับผู้ใช้ระยะไกล

ทุกเซสชัน PowerShell (PSSession) ใช้การกำหนดค่าเซสชันหรือที่เรียกว่าจุดสิ้นสุด เมื่อผู้ใช้สร้างเซสชันที่เชื่อมต่อกับคอมพิวเตอร์ พวกเขาสามารถเลือกการกำหนดค่าเซสชันหรือใช้การกำหนดค่าเซสชันเริ่มต้นที่ลงทะเบียนไว้เมื่อคุณเปิดใช้งาน PowerShell ระยะไกล ผู้ใช้ยังสามารถตั้งค่าตัวแปรการกำหนดค่าตามความชอบ $PSSessionConfigurationName ซึ่งระบุการกำหนดค่าเริ่มต้นสำหรับเซสชันระยะไกลที่สร้างขึ้นในเซสชันปัจจุบัน

การกำหนดค่าเซสชันจะกำหนดสภาพแวดล้อมสำหรับเซสชันระยะไกล การกำหนดค่าสามารถกำหนดได้ว่าคำสั่งและองค์ประกอบภาษาใดบ้างที่มีอยู่ในเซสชัน และอาจรวมถึงการตั้งค่าที่ปกป้องคอมพิวเตอร์ เช่น การตั้งค่าที่จำกัดจำนวนข้อมูลที่เซสชันสามารถรับจากระยะไกลในออบเจ็กต์หรือคำสั่งเดียว ตัวบอกความปลอดภัยของการกำหนดค่าเซสชันจะกำหนดว่าผู้ใช้รายใดมีสิทธิ์ใช้การกำหนดค่าเซสชัน

คุณสามารถกำหนดองค์ประกอบของการกำหนดค่าได้โดยใช้แอสเซมบลีที่ใช้คลาสการกำหนดค่าใหม่และโดยใช้สคริปต์ที่ทำงานในเซสชัน เริ่มต้นใน PowerShell 3.0 คุณยังสามารถใช้ไฟล์การกำหนดค่าเซสชันเพื่อกำหนดการกำหนดค่าเซสชันได้

สำหรับข้อมูลเกี่ยวกับการกำหนดค่าเซสชัน โปรดดู about_Session_Configurations สำหรับข้อมูลเกี่ยวกับไฟล์คอนฟิกูเรชันเซสชัน โปรดดูที่ about_Session_Configuration_Files

ตัวอย่าง

ตัวอย่างที่ 1: ลงทะเบียนการกำหนดค่าเซสชัน NewShell

ในตัวอย่างนี้ เราลงทะเบียนการกำหนดค่าเซสชัน NewShell พารามิเตอร์ AssemblyName และ ApplicationBase ระบุตำแหน่งของไฟล์ MyShell.dll ซึ่งระบุ cmdlets และผู้ให้บริการในการกำหนดค่าเซสชัน พารามิเตอร์ ConfigurationTypeName ระบุคลาสการกำหนดค่าที่จะใช้จากแอสเซมบลี

$sessionConfiguration = @{
    Name='NewShell'
    ApplicationBase='c:\MyShells\'
    AssemblyName='MyShell.dll'
    ConfigurationTypeName='MyClass'
}
Register-PSSessionConfiguration @sessionConfiguration

หากต้องการใช้การกำหนดค่านี้ ให้พิมพ์ New-PSSession -ConfigurationName newshell

ตัวอย่างที่ 2: ลงทะเบียนการกำหนดค่าเซสชัน MaintenanceShell

ตัวอย่างนี้จะลงทะเบียนการกำหนดค่าเซสชัน MaintenanceShell บนเครื่องคอมพิวเตอร์ พารามิเตอร์ StartupScript ระบุสคริปต์ Maintenance.ps1

Register-PSSessionConfiguration -Name MaintenanceShell -StartupScript C:\ps-test\Maintenance.ps1

เมื่อผู้ใช้ใช้คำสั่ง New-PSSession และเลือกการกำหนดค่า MaintenanceShell สคริปต์ Maintenance.ps1 จะทำงานในเซสชันใหม่ สคริปต์สามารถกำหนดค่าเซสชันได้ ซึ่งรวมถึงการนำเข้าโมดูลและการตั้งค่านโยบายการดำเนินการสำหรับเซสชัน หากสคริปต์สร้างข้อผิดพลาดใดๆ รวมถึงข้อผิดพลาดที่ไม่สิ้นสุด คำสั่ง New-PSSession จะล้มเหลว

ตัวอย่างที่ 3: ลงทะเบียนการกำหนดค่าเซสชัน

ตัวอย่างนี้จะลงทะเบียนการกำหนดค่าเซสชัน AdminShell

ตัวแปร $sessionParams เป็นแฮชเทเบิลที่มีค่าพารามิเตอร์ทั้งหมด แฮชเทเบิลนี้ถูกส่งไปยัง cmdlet โดยใช้การสลับ PowerShell คำสั่ง Register-PSSessionConfiguration ใช้พารามิเตอร์ SecurityDescritorSDDL เพื่อระบุ SDDL ในค่าของตัวแปร $sddl และ MaximumReceivedObjectSizeMB เพื่อเพิ่มขีดจำกัดขนาดวัตถุ นอกจากนี้ยังใช้พารามิเตอร์ StartupScript เพื่อระบุสคริปต์ที่กำหนดค่าเซสชัน

$sddl = "O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;FASA;GWGX;;;WD)"
$sessionParams = @{
    Name="AdminShell"
    SecurityDescriptorSDDL=$sddl
    MaximumReceivedObjectSizeMB=20
    StartupScript="C:\scripts\AdminShell.ps1"
}
Register-PSSessionConfiguration @sessionParams

ตัวอย่างที่ 4: ส่งคืนองค์ประกอบคอนเทนเนอร์การกำหนดค่า

ตัวอย่างนี้แสดงวิธีการลงทะเบียนการกำหนดค่า MaintenanceShell Register-PSSessionConfiguration ส่งกลับวัตถุ WSManConfigContainerElement ที่เก็บไว้ในตัวแปร $s Format-List แสดงคุณสมบัติทั้งหมดของวัตถุที่ส่งคืน คุณสมบัติ PSPath แสดงว่าออบเจ็กต์ถูกจัดเก็บไว้ในไดเร็กทอรีของไดรฟ์ WSMan: Get-ChildItem (นามแฝง dir) แสดงรายการในเส้นทาง WSMan:\LocalHost\PlugIn ซึ่งรวมถึงการกำหนดค่า MaintenanceShell ใหม่และการกำหนดค่าเริ่มต้นสองรายการที่มาพร้อมกับ PowerShell

$s = Register-PSSessionConfiguration -Name MaintenanceShell -StartupScript C:\ps-test\Maintenance.ps1
$s | Format-List -Property *
dir WSMan:\LocalHost\Plugin

PSPath            : Microsoft.WSMan.Management\WSMan::localhost\Plugin\MaintenanceShell
PSParentPath      : Microsoft.WSMan.Management\WSMan::localhost\Plugin
PSChildName       : MaintenanceShell
PSDrive           : WSMan
PSProvider        : Microsoft.WSMan.Management\WSMan
PSIsContainer     : True
Keys              : {Name=MaintenanceShell}
Name              : MaintenanceShell
TypeNameOfElement : Container

Name                      Type                 Keys
----                      ----                 ----
MaintenanceShell          Container            {Name=MaintenanceShell}
microsoft.powershell      Container            {Name=microsoft.powershell}
microsoft.powershell32    Container            {Name=microsoft.powershell32}

ตัวอย่างที่ 5: ลงทะเบียนการกำหนดค่าเซสชันด้วยสคริปต์เริ่มต้น

ในตัวอย่างนี้ เราสร้างและลงทะเบียนการกำหนดค่าเซสชัน WithProfile พารามิเตอร์ StartupScript กำหนดให้ PowerShell เรียกใช้สคริปต์ที่ระบุสำหรับเซสชันใดๆ ที่ใช้การกำหนดค่าเซสชัน

Register-PSSessionConfiguration -Name WithProfile -StartupScript Add-Profile.ps1

สคริปต์ประกอบด้วยคำสั่งเดียวที่ใช้ dot sourcing เพื่อเรียกใช้โปรไฟล์ CurrentUserAllHosts ของผู้ใช้ในขอบเขตปัจจุบันของเซสชัน

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับโปรไฟล์ โปรดดูที่ about_Profiles สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการจัดหาดอท โปรดดูที่ about_Scopes

พารามิเตอร์

-AccessMode

เปิดใช้งานและปิดใช้งานการกำหนดค่าเซสชันและกำหนดว่าสามารถใช้สำหรับเซสชันระยะไกลหรือภายในเครื่องบนคอมพิวเตอร์ได้หรือไม่ ค่าที่ยอมรับได้สำหรับพารามิเตอร์นี้คือ:

  • พิการ. ปิดใช้งานการกำหนดค่าเซสชัน ไม่สามารถใช้สำหรับการเข้าถึงคอมพิวเตอร์จากระยะไกลหรือในพื้นที่
  • ท้องถิ่น. อนุญาตให้ผู้ใช้เครื่องคอมพิวเตอร์เฉพาะที่สามารถใช้การกำหนดค่าเซสชันเพื่อสร้างเซสชันย้อนกลับในเครื่องบนคอมพิวเตอร์เครื่องเดียวกัน แต่ปฏิเสธการเข้าถึงของผู้ใช้ระยะไกล
  • ระยะไกล. อนุญาตให้ผู้ใช้ภายในและระยะไกลใช้การกำหนดค่าเซสชันเพื่อสร้างเซสชันและเรียกใช้คำสั่งบนคอมพิวเตอร์เครื่องนี้

ค่าเริ่มต้นคือระยะไกล

cmdlet อื่นๆ สามารถแทนที่ค่าของพารามิเตอร์นี้ได้ในภายหลัง ตัวอย่างเช่น Enable-PSRemoting cmdlet อนุญาตให้มีการเข้าถึงระยะไกลไปยังการกำหนดค่าเซสชันทั้งหมด Enable-PSSessionConfiguration cmdlet เปิดใช้งานการกำหนดค่าเซสชัน และ Disable-PSRemoting cmdlet ป้องกันการเข้าถึงการกำหนดค่าเซสชันทั้งหมดจากระยะไกล

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

PSSessionConfigurationAccessMode

ค่าที่ยอมรับ:

ปิดการใช้งาน, ท้องถิ่น, ระยะไกล

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ApplicationBase

ระบุเส้นทางของไฟล์แอสเซมบลี (*.dll) ที่ระบุไว้ในค่าของพารามิเตอร์ AssemblyName ใช้พารามิเตอร์นี้เมื่อค่าของพารามิเตอร์ AssemblyName ไม่รวมเส้นทาง ค่าเริ่มต้นคือไดเร็กทอรีปัจจุบัน

พิมพ์ :

String

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-AssemblyName

ระบุชื่อของไฟล์แอสเซมบลี (*.dll) ซึ่งมีการกำหนดชนิดการกำหนดค่า คุณสามารถระบุเส้นทางของ .dll ในพารามิเตอร์นี้หรือในค่าของพารามิเตอร์ ApplicationBase

จำเป็นต้องใช้พารามิเตอร์นี้เมื่อคุณระบุพารามิเตอร์ ConfigurationTypeName

พิมพ์ :

String

ตำแหน่ง:

1

ค่าเริ่มต้น:

None

ที่จำเป็น:

True

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ConfigurationTypeName

ระบุชื่อแบบเต็มของชนิด Microsoft .NET Framework ที่ใช้สำหรับการกำหนดค่านี้ ประเภทที่คุณระบุต้องใช้คลาส System.Management.Automation.Remoting.PSSessionConfiguration

หากต้องการระบุไฟล์แอสเซมบลี (*.dll) ที่ใช้ประเภทการกำหนดค่า ให้ระบุพารามิเตอร์ AssemblyName และ ApplicationBase

การสร้างประเภทช่วยให้คุณสามารถควบคุมลักษณะต่างๆ ของการกำหนดค่าเซสชันได้มากขึ้น เช่น การเปิดเผยหรือซ่อนพารามิเตอร์บางอย่างของ cmdlets หรือการตั้งค่าขนาดข้อมูลและการจำกัดขนาดออบเจ็กต์ที่ผู้ใช้ไม่สามารถแทนที่ได้

หากคุณละเว้นพารามิเตอร์นี้ คลาส DefaultRemotePowerShellConfiguration จะใช้สำหรับการกำหนดค่าเซสชัน

พิมพ์ :

String

ตำแหน่ง:

2

ค่าเริ่มต้น:

None

ที่จำเป็น:

True

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-Confirm

แจ้งให้คุณยืนยันก่อนเรียกใช้ cmdlet

พิมพ์ :

SwitchParameter

นามแฝง :

cf

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

False

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-Force

ระงับการแจ้งผู้ใช้ทั้งหมดและเริ่มบริการ WinRM ใหม่โดยไม่แจ้ง การเริ่มบริการใหม่จะทำให้การเปลี่ยนแปลงการกำหนดค่ามีผล

เพื่อป้องกันการรีสตาร์ทและระงับพรอมต์การรีสตาร์ท ให้ระบุพารามิเตอร์ NoServiceRestart

พิมพ์ :

SwitchParameter

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-MaximumReceivedDataSizePerCommandMB

ระบุขีดจำกัดสำหรับจำนวนข้อมูลที่สามารถส่งไปยังคอมพิวเตอร์เครื่องนี้ได้โดยใช้คำสั่งระยะไกลคำสั่งเดียว ป้อนขนาดข้อมูลเป็นเมกะไบต์ (MB) ค่าเริ่มต้นคือ 50 MB

หากมีการกำหนดขีดจำกัดขนาดข้อมูลในประเภทการกำหนดค่าที่ระบุในพารามิเตอร์ ConfigurationTypeName ระบบจะใช้ขีดจำกัดในประเภทการกำหนดค่าและค่าของพารามิเตอร์นี้จะถูกละเว้น

พิมพ์ :

มีค่าเป็นศูนย์[สองเท่า]

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-MaximumReceivedObjectSizeMB

ระบุขีดจำกัดสำหรับจำนวนข้อมูลที่สามารถส่งไปยังคอมพิวเตอร์เครื่องนี้ในวัตถุเดียวได้ ป้อนขนาดข้อมูลเป็นเมกะไบต์ ค่าเริ่มต้นคือ 10 MB

หากมีการกำหนดขีดจำกัดขนาดออบเจ็กต์ในประเภทการกำหนดค่าที่ระบุไว้ในพารามิเตอร์ ConfigurationTypeName ระบบจะใช้ขีดจำกัดในประเภทการกำหนดค่าและค่าของพารามิเตอร์นี้จะถูกละเว้น

พิมพ์ :

มีค่าเป็นศูนย์[สองเท่า]

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

10

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ModulesToImport

ระบุโมดูลที่นำเข้าโดยอัตโนมัติไปยังเซสชันที่ใช้การกำหนดค่าเซสชัน

ตามค่าเริ่มต้น เฉพาะ Microsoft.PowerShell.Core เท่านั้นที่จะถูกนำเข้าเข้าสู่เซสชัน ยกเว้นว่าไม่รวม cmdlets คุณสามารถใช้ Import-Module เพื่อเพิ่มโมดูลในเซสชันได้

โมดูลที่ระบุในค่าพารามิเตอร์นี้จะถูกนำเข้าเพิ่มเติมจากโมดูลที่ระบุโดยพารามิเตอร์ SessionType และโมดูลที่อยู่ในคีย์ ModulesToImport ในไฟล์การกำหนดค่าเซสชัน ( ใหม่-PSSessionConfigurationFile) อย่างไรก็ตาม การตั้งค่าในไฟล์การกำหนดค่าเซสชันสามารถซ่อนคำสั่งที่ส่งออกโดยโมดูลหรือป้องกันไม่ให้ผู้ใช้ใช้งานได้

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

Object[]

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-Name

ระบุชื่อสำหรับการกำหนดค่าเซสชัน จำเป็นต้องมีพารามิเตอร์นี้

พิมพ์ :

String

ตำแหน่ง:

0

ค่าเริ่มต้น:

None

ที่จำเป็น:

True

ยอมรับอินพุตไปป์ไลน์:

True

ยอมรับอักขระตัวแทน:

False

-NoServiceRestart

จุดประสงค์ของพารามิเตอร์นี้คือเพื่อป้องกันการรีสตาร์ทบริการ WinRM ยังไม่ได้ใช้ฟังก์ชันนี้

ฟังก์ชันนี้ถูกนำมาใช้ใน PowerShell 7.5.0-preview.4

พิมพ์ :

SwitchParameter

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-Path

ระบุเส้นทางและชื่อไฟล์ของไฟล์การกำหนดค่าเซสชัน (.pssc) เช่น ไฟล์ที่สร้างโดย New-PSSessionConfigurationFile หากคุณละเว้นเส้นทาง ค่าเริ่มต้นจะเป็นไดเร็กทอรีปัจจุบัน

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

String

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

True

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ProcessorArchitecture

กำหนดว่ากระบวนการ PowerShell รุ่น 32 บิตหรือ 64 บิตเริ่มต้นในเซสชันที่ใช้การกำหนดค่าเซสชันนี้ ค่าที่ยอมรับได้สำหรับพารามิเตอร์นี้คือ: x86 (32 บิต) และ AMD64 (64 บิต) ค่าเริ่มต้นถูกกำหนดโดยสถาปัตยกรรมตัวประมวลผลของคอมพิวเตอร์ที่โฮสต์การกำหนดค่าเซสชัน

คุณสามารถใช้พารามิเตอร์นี้เพื่อสร้างเซสชัน 32 บิตบนคอมพิวเตอร์ 64 บิต ความพยายามที่จะสร้างกระบวนการ 64 บิตบนคอมพิวเตอร์ 32 บิตล้มเหลว

พิมพ์ :

String

นามแฝง :

PA

ค่าที่ยอมรับ:

x86, amd64

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-PSVersion

ระบุเวอร์ชันของ PowerShell ในเซสชันที่ใช้การกำหนดค่าเซสชันนี้

ค่าของพารามิเตอร์นี้มีความสำคัญมากกว่าค่าของคีย์ PowerShellVersion ในไฟล์การกำหนดค่าเซสชัน

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

เวอร์ชัน

นามแฝง :

PowerShellVersion

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-RunAsCredential

ระบุข้อมูลรับรองสำหรับคำสั่งในเซสชัน ตามค่าเริ่มต้น คำสั่งจะทำงานโดยมีสิทธิ์ของผู้ใช้ปัจจุบัน

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

PSCredential

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-SecurityDescriptorSddl

ระบุสตริง Security Descriptor Definition Language (SDDL) สำหรับการกำหนดค่า

สตริงนี้กำหนดสิทธิ์ที่จำเป็นในการใช้การกำหนดค่าเซสชันใหม่ หากต้องการใช้การกำหนดค่าเซสชันในเซสชัน ผู้ใช้ต้องมีสิทธิ์ดำเนินการ (เรียกใช้) เป็นอย่างน้อยสำหรับการกำหนดค่า

หากตัวบอกเกี่ยวกับความปลอดภัยมีความซับซ้อน ให้พิจารณาใช้พารามิเตอร์ ShowSecurityDescriptorUI แทนพารามิเตอร์นี้ คุณไม่สามารถใช้ทั้งสองพารามิเตอร์ในคำสั่งเดียวกันได้

หากคุณละเว้นพารามิเตอร์นี้ SDDL รากสำหรับบริการ WinRM จะใช้สำหรับการกำหนดค่านี้ หากต้องการดูหรือเปลี่ยน SDDL รูท ให้ใช้ผู้ให้บริการ WSMan ตัวอย่างเช่น รับรายการ wsman:\localhost\service\rootSDDL สำหรับข้อมูลเพิ่มเติมเกี่ยวกับผู้ให้บริการ WSMan ให้พิมพ์ รับความช่วยเหลือ wsman

พิมพ์ :

String

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-SessionTypeOption

ระบุตัวเลือกเฉพาะประเภทสำหรับการกำหนดค่าเซสชัน ป้อนออบเจ็กต์ตัวเลือกประเภทเซสชัน เช่น ออบเจ็กต์ PSWorkflowExecutionOption ที่ cmdlet New-PSWorkflowExecutionOption ส่งคืน

ตัวเลือกของเซสชันที่ใช้การกำหนดค่าเซสชันจะถูกกำหนดโดยค่าของตัวเลือกเซสชันและตัวเลือกการกำหนดค่าเซสชัน เว้นแต่จะระบุไว้ ตัวเลือกที่ตั้งค่าไว้ในเซสชัน เช่น โดยใช้ cmdlet New-PSSessionOption จะมีความสำคัญเหนือกว่าตัวเลือกที่ตั้งค่าในการกำหนดค่าเซสชัน อย่างไรก็ตาม ค่าตัวเลือกเซสชันต้องไม่เกินค่าสูงสุดที่ตั้งไว้ในการกำหนดค่าเซสชัน

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

PSSessionTypeตัวเลือก

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ShowSecurityDescriptorUI

บ่งชี้ว่า cmdlet นี้แสดงแผ่นคุณสมบัติที่ช่วยคุณสร้าง SDDL สำหรับการกำหนดค่าเซสชัน แผ่นคุณสมบัติปรากฏขึ้นหลังจากที่คุณป้อนคำสั่ง Register-PSSessionConfiguration จากนั้นเริ่มบริการ WinRM ใหม่

เมื่อตั้งค่าสิทธิ์สำหรับการกำหนดค่า โปรดจำไว้ว่าผู้ใช้ต้องมีสิทธิ์ดำเนินการ (เรียกใช้) เป็นอย่างน้อยจึงจะใช้การกำหนดค่าเซสชันในเซสชันได้

คุณไม่สามารถใช้พารามิเตอร์ SecurityDescriptorSDDL และพารามิเตอร์นี้ในคำสั่งเดียวกัน

พิมพ์ :

SwitchParameter

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-StartupScript

ระบุเส้นทางแบบเต็มของสคริปต์ PowerShell สคริปต์ที่ระบุทำงานในเซสชันใหม่ที่ใช้การกำหนดค่าเซสชัน

คุณสามารถใช้สคริปต์เพื่อกำหนดค่าเซสชันเพิ่มเติมได้ หากสคริปต์สร้างข้อผิดพลาด แม้แต่ข้อผิดพลาดที่ไม่สิ้นสุด เซสชันจะไม่ถูกสร้างขึ้นและคำสั่ง New-PSSession จะล้มเหลว

พิมพ์ :

String

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ThreadApartmentState

ระบุสถานะอพาร์ทเมนต์ของโมดูลเธรดที่จะใช้ ค่าที่ยอมรับได้คือ:

  • ไม่ทราบ
  • เอ็มทีเอ
  • บมจ
พิมพ์ :

ApartmentState

ค่าที่ยอมรับ:

STA, MTA, ไม่ทราบ

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-ThreadOptions

ระบุวิธีการสร้างและใช้เธรดเมื่อคำสั่งรันในเซสชัน ค่าที่ยอมรับได้สำหรับพารามิเตอร์นี้คือ:

  • ค่าเริ่มต้น
  • ReuseThread
  • ใช้ CurrentThread
  • ใช้NewThread

ค่าเริ่มต้นคือ UseCurrentThread

สำหรับข้อมูลเพิ่มเติม โปรดดูการแจงนับ PSThreadOptions

พิมพ์ :

PSThreadOptions

ค่าที่ยอมรับ:

ค่าเริ่มต้น UseNewThread, ReuseThread, UseCurrentThread

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-TransportOption

ระบุตัวเลือกการขนส่ง

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

PSตัวเลือกการขนส่ง

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-UseSharedProcess

ใช้เพียงกระบวนการเดียวในการโฮสต์เซสชันทั้งหมดที่เริ่มต้นโดยผู้ใช้คนเดียวกัน และใช้การกำหนดค่าเซสชันเดียวกัน ตามค่าเริ่มต้น แต่ละเซสชันจะโฮสต์อยู่ในกระบวนการของตัวเอง

พารามิเตอร์นี้ถูกนำมาใช้ใน PowerShell 3.0

พิมพ์ :

SwitchParameter

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

None

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

-WhatIf

แสดงสิ่งที่จะเกิดขึ้นหาก cmdlet ทำงาน cmdlet ไม่ทำงาน

พิมพ์ :

SwitchParameter

นามแฝง :

wi

ตำแหน่ง:

ตั้งชื่อ

ค่าเริ่มต้น:

False

ที่จำเป็น:

False

ยอมรับอินพุตไปป์ไลน์:

False

ยอมรับอักขระตัวแทน:

False

อินพุต

ไม่มี

คุณไม่สามารถไปป์วัตถุกับ cmdlet นี้

เอาท์พุต

WSManConfigContainerElement

หมายเหตุ

cmdlet นี้ใช้ได้เฉพาะบนแพลตฟอร์ม Windows เท่านั้น

หากต้องการเรียกใช้ cmdlet นี้ คุณต้องเริ่ม PowerShell โดยใช้ตัวเลือก เรียกใช้ในฐานะผู้ดูแลระบบ

cmdlet นี้สร้าง XML ที่แสดงถึงการกำหนดค่าปลั๊กอิน Web Services for Management (WS-Management) และส่ง XML ไปยัง WS-Management ซึ่งจะลงทะเบียนปลั๊กอินบนคอมพิวเตอร์เฉพาะที่ (New-Item wsman:\localhost \ปลั๊กอิน)

คุณสมบัติของออบเจ็กต์การกำหนดค่าเซสชันจะแตกต่างกันไปตามตัวเลือกที่ตั้งไว้สำหรับการกำหนดค่าเซสชันและค่าของตัวเลือกเหล่านั้น นอกจากนี้ การกำหนดค่าเซสชันที่ใช้ไฟล์การกำหนดค่าเซสชันจะมีคุณสมบัติเพิ่มเติม

บทความที่เกี่ยวข้อง