รับ PSSessionConfiguration (Microsoft.PowerShell.Core)
รับ-PSSessionConfiguration
- โมดูล :
- Microsoft.PowerShell.Core
รับการกำหนดค่าเซสชันที่ลงทะเบียนไว้บนคอมพิวเตอร์
ไวยากรณ์
Get-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[<CommonParameters>]คำอธิบาย
Get-PSSessionConfiguration cmdlet รับการกำหนดค่าเซสชันที่ได้รับการลงทะเบียนบนคอมพิวเตอร์เฉพาะที่ นี่คือ cmdlet ขั้นสูงที่ผู้ดูแลระบบออกแบบมาเพื่อใช้ในการจัดการการกำหนดค่าเซสชันที่กำหนดเองสำหรับผู้ใช้
เริ่มต้นใน PowerShell 3.0 คุณสามารถกำหนดคุณสมบัติของการกำหนดค่าเซสชันได้โดยใช้ไฟล์การกำหนดค่าเซสชัน (.pssc) คุณสมบัตินี้ช่วยให้คุณสร้างเซสชันที่กำหนดเองและจำกัดได้โดยไม่ต้องเขียนโปรแกรมคอมพิวเตอร์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไฟล์คอนฟิกูเรชันเซสชัน โปรดดูที่ about_Session_Configuration_Files
นอกจากนี้ เริ่มต้นใน PowerShell 3.0 คุณสมบัติบันทึกย่อใหม่ได้ถูกเพิ่มไปยังออบเจ็กต์การกำหนดค่าเซสชันที่ Get-PSSessionConfiguration ส่งคืน คุณสมบัติเหล่านี้ช่วยให้ผู้ใช้และผู้เขียนการกำหนดค่าเซสชันสามารถตรวจสอบและเปรียบเทียบการกำหนดค่าเซสชันได้ง่ายขึ้น
หากต้องการสร้างและลงทะเบียนการกำหนดค่าเซสชัน ให้ใช้ Register-PSSessionConfiguration cmdlet สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่าเซสชัน โปรดดู about_Session_Configurations
ตัวอย่าง
ตัวอย่างที่ 1 - รับการกำหนดค่าเซสชันบนเครื่องคอมพิวเตอร์
Get-PSSessionConfigurationตัวอย่างที่ 2 - รับการกำหนดค่าเซสชันเริ่มต้นสองรายการ
คำสั่งใช้พารามิเตอร์ ชื่อ ของ Get-PSSessionConfiguration เพื่อรับเฉพาะการกำหนดค่าเซสชันที่มีชื่อที่ขึ้นต้นด้วย "Microsoft"
Get-PSSessionConfiguration -Name Microsoft*
Name PSVersion StartupScript Permission
---- --------- ------------- ----------
microsoft.powershell 5.1 BUILTIN\Administrators AccessAll...
microsoft.powershell32 5.1 BUILTIN\Administrators AccessAll...ตัวอย่างที่ 3 - รับคุณสมบัติและค่าของการกำหนดค่าเซสชัน
ตัวอย่างนี้แสดงคุณสมบัติและค่าคุณสมบัติของการกำหนดค่าเซสชันที่สร้างขึ้นโดยใช้ไฟล์การกำหนดค่าเซสชัน
Get-PSSessionConfiguration -Name Full | Format-List -Property *
Copyright : (c) 2011 User01. All rights reserved.
AliasDefinitions : {System.Collections.Hashtable}
SessionType : Default
CompanyName : Unknown
GUID : 1e9cb265-dae0-4bd3-89a9-8338a47698a1
Author : User01
ExecutionPolicy : Restricted
SchemaVersion : 1.0.0.0
LanguageMode : FullLanguage
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : http://schemas.microsoft.com/powershell/Full
MaxConcurrentCommandsPerShell : 1500
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 10
lang : en-US
SupportsOptions : true
ExactMatch : true
configfilepath : C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Full_1e9cb265-dae0-4bd3-89a9-8338a47698a1.pssc
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
MaxShells : 300
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 43200000
SDKVersion : 1
Name : Full
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 25
Enabled : True
MaxShellsPerUser : 30
Permission :ตัวอย่างใช้ Get-PSSessionConfiguration cmdlet เพื่อรับการกำหนดค่าเซสชันแบบเต็ม ตัวดำเนินการไปป์ไลน์ส่งการกำหนดค่าเซสชันแบบเต็มไปที่ Format-List cmdlet พารามิเตอร์ คุณสมบัติ ที่มีค่า * (ทั้งหมด) กำหนดให้ Format-List เพื่อแสดงคุณสมบัติและค่าทั้งหมดของออบเจ็กต์ในรายการ
ผลลัพธ์ประกอบด้วยข้อมูลที่เป็นประโยชน์ รวมถึงผู้สร้างการกำหนดค่าเซสชัน ประเภทเซสชัน โหมดภาษา และนโยบายการดำเนินการของเซสชันที่สร้างขึ้นด้วยการกำหนดค่าเซสชันนี้ โควต้าเซสชัน และเส้นทางแบบเต็มไปยังไฟล์การกำหนดค่าเซสชัน
มุมมองการกำหนดค่าเซสชันนี้ใช้สำหรับเซสชันที่มีไฟล์การกำหนดค่าเซสชัน สำหรับข้อมูลเพิ่มเติมเกี่ยวกับไฟล์คอนฟิกูเรชันเซสชัน โปรดดู about_Session_Configuration_Files
ตัวอย่างที่ 4 - อีกวิธีหนึ่งในการดูการกำหนดค่าเซสชัน
ตัวอย่างนี้ใช้ Get-ChildItem cmdlet (นามแฝง dir) ในไดรฟ์ผู้ให้บริการ WSMan: เพื่อดูเนื้อหาของโหนดปลั๊กอิน นี่เป็นอีกวิธีหนึ่งในการดูการกำหนดค่าเซสชันบนคอมพิวเตอร์
dir wsman:\localhost\plugin
Type Keys Name
---- ---- ----
Container {Name=Event Forwarding Plugin} Event Forwarding Plugin
Container {Name=Full} Full
Container {Name=microsoft.powershell} microsoft.powershell
Container {Name=microsoft.powershell.workf... microsoft.powershell.workflow
Container {Name=microsoft.powershell32} microsoft.powershell32
Container {Name=microsoft.ServerManager} microsoft.ServerManager
Container {Name=WMI Provider} WMI Providerโหนด PlugIn มีออบเจ็กต์ ContainerElement (Microsoft.WSMan.Management.WSManConfigContainerElement) ที่แสดงถึงการกำหนดค่าเซสชัน PowerShell ที่ลงทะเบียนไว้ พร้อมด้วยปลั๊กอินอื่นๆ สำหรับ WS-Management
ตัวอย่างที่ 6 - ดูการกำหนดค่าเซสชันบนคอมพิวเตอร์ระยะไกล
ตัวอย่างนี้แสดงวิธีการใช้ผู้ให้บริการ WSMan เพื่อดูการกำหนดค่าเซสชันบนคอมพิวเตอร์ระยะไกล วิธีการนี้ไม่ได้ให้ข้อมูลมากเท่ากับคำสั่ง Get-PSSessionConfiguration แต่ผู้ใช้ไม่จำเป็นต้องเป็นสมาชิกของกลุ่มผู้ดูแลระบบเพื่อเรียกใช้ cmdlet นี้
Connect-WSMan -ComputerName Server01
dir WSMan:\Server01\Plugin
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
Type Keys Name
---- ---- ----
Container {Name=Empty} Empty
Container {Name=Event Forwarding Plugin} Event Forwarding Plugin
Container {Name=Full} Full
Container {Name=microsoft.powershell} microsoft.powershell
Container {Name=microsoft.powershell.workf... microsoft.powershell.workflow
Container {Name=microsoft.powershell32} microsoft.powershell32
Container {Name=microsoft.ServerManager} microsoft.ServerManager
Container {Name=NoLanguage} NoLanguage
Container {Name=RestrictedLang} RestrictedLang
Container {Name=RRS} RRS
Container {Name=SEL Plugin} SEL Plugin
Container {Name=WithProfile} WithProfile
Container {Name=WMI Provider} WMI Providercmdlet Connect-WSMan เชื่อมต่อกับบริการ WinRM บนคอมพิวเตอร์ระยะไกล Server01 Get-ChildItem cmdlet (นามแฝง dir) ของไดรฟ์ WSMan: รับรายการในเส้นทาง Server01\Plugin ผลลัพธ์แสดงรายการในไดเรกทอรีปลั๊กอินบนคอมพิวเตอร์ Server01 รายการต่างๆ รวมถึงการกำหนดค่าเซสชัน ซึ่งเป็นปลั๊กอินประเภท WSMan พร้อมด้วยปลั๊กอินประเภทอื่นๆ บนคอมพิวเตอร์
ตัวอย่างที่ 7 - รับการกำหนดค่าเซสชันโดยละเอียดจากคอมพิวเตอร์ระยะไกล
ตัวอย่างนี้แสดงวิธีการเรียกใช้คำสั่ง Get-PSSessionConfiguration บนคอมพิวเตอร์ระยะไกล คำสั่งต้องการให้เปิดใช้งานการมอบหมาย CredSSP ในการตั้งค่าไคลเอ็นต์บนเครื่องคอมพิวเตอร์เฉพาะที่และในการตั้งค่าบริการบนคอมพิวเตอร์ระยะไกล
หากต้องการเรียกใช้คำสั่งในตัวอย่างนี้ คุณต้องเป็นสมาชิกของกลุ่มผู้ดูแลระบบบนคอมพิวเตอร์ภายในเครื่องและระยะไกล และคุณต้องเริ่ม PowerShell ด้วยตัวเลือก เรียกใช้ในฐานะผู้ดูแลระบบ
Enable-WSManCredSSP -Delegate Server02
Connect-WSMan Server02
Set-Item WSMan:\Server02*\Service\Auth\CredSSP -Value $true
Invoke-Command -ScriptBlock {Get-PSSessionConfiguration} -ComputerName Server02 -Authentication CredSSP -Credential Domain01\Admin01
Name PSVersion StartupScript Permission PSComputerName
---- --------- ------------- ---------- --------------
microsoft.powershell 5.1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
microsoft.powershell32 5.1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
MyX86Shell 5.1 c:\test\x86Shell.ps1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.comEnable-WSManCredSSP cmdlet เปิดใช้งานการมอบหมาย CredSSP บน Server01 ซึ่งเป็นคอมพิวเตอร์เฉพาะที่ cmdlet Connect-WSMan เชื่อมต่อกับคอมพิวเตอร์ Server02 การดำเนินการนี้จะเพิ่มโหนดสำหรับ Server02 ให้กับไดรฟ์ WSMan: บนเครื่องคอมพิวเตอร์ ทำให้คุณสามารถดูและเปลี่ยนแปลงการตั้งค่า WS-Management บนคอมพิวเตอร์ Server02 ได้ cmdlet Set-Item เปลี่ยนค่าของรายการ CredSSP ในโหนดบริการของคอมพิวเตอร์ Server02 เป็น True ซึ่งจะกำหนดการตั้งค่าบริการบนคอมพิวเตอร์ระยะไกล Invivo-Command cmdlet รันคำสั่ง Get-PSSessionConfiguration บนคอมพิวเตอร์ Server02 คำสั่งใช้พารามิเตอร์ ข้อมูลรับรอง และใช้พารามิเตอร์ การตรวจสอบสิทธิ์ ที่มีค่า CredSSP ผลลัพธ์จะแสดงการกำหนดค่าเซสชันบนคอมพิวเตอร์ระยะไกล Server02
ตัวอย่างที่ 8 - รับ URI ทรัพยากรของการกำหนดค่าเซสชัน
ตัวอย่างนี้มีประโยชน์สำหรับการตั้งค่าของตัวแปรการกำหนดค่าตามความชอบ $PSSessionConfigurationName ซึ่งรับ URI ของทรัพยากร
(Get-PSSessionConfiguration -Name CustomShell).resourceURI
http://schemas.microsoft.com/powershell/microsoft.CustomShellตัวแปร $PSSessionConfigurationName ระบุการกำหนดค่าเริ่มต้นที่ใช้เมื่อคุณสร้างเซสชัน ตัวแปรนี้ถูกตั้งค่าบนคอมพิวเตอร์เฉพาะที่ แต่ระบุการกำหนดค่าบนคอมพิวเตอร์ระยะไกล สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวแปร $PSSessionConfiguration โปรดดู about_Preference_Variables
พารามิเตอร์
-Force
ระงับพร้อมท์ให้เริ่มบริการ WinRM ใหม่ หากบริการไม่ได้ทำงานอยู่
- พิมพ์ :
SwitchParameter
- ตำแหน่ง:
ตั้งชื่อ
- ค่าเริ่มต้น:
None
- ที่จำเป็น:
False
- ยอมรับอินพุตไปป์ไลน์:
False
- ยอมรับอักขระตัวแทน:
-
False
-Name
รับเฉพาะการกำหนดค่าเซสชันที่มีชื่อหรือรูปแบบชื่อที่ระบุ ป้อนชื่อการกำหนดค่าเซสชันอย่างน้อยหนึ่งชื่อ อนุญาตให้ใช้ไวด์การ์ดได้
- พิมพ์ :
String[]
- ตำแหน่ง:
0
- ค่าเริ่มต้น:
การกำหนดค่าเซสชันทั้งหมดบนเครื่องคอมพิวเตอร์
- ที่จำเป็น:
False
- ยอมรับอินพุตไปป์ไลน์:
False
- ยอมรับอักขระตัวแทน:
True
อินพุต
ไม่มี
คุณไม่สามารถไปป์วัตถุกับ cmdlet นี้
เอาท์พุต
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
หมายเหตุ
หากต้องการเรียกใช้ cmdlet นี้ ให้เริ่ม PowerShell ด้วยตัวเลือก เรียกใช้ในฐานะผู้ดูแลระบบ
หากต้องการดูการกำหนดค่าเซสชันบนคอมพิวเตอร์ คุณต้องเป็นสมาชิกของกลุ่มผู้ดูแลระบบบนคอมพิวเตอร์
เมื่อต้องการเรียกใช้คำสั่ง
Get-PSSessionConfigurationบนคอมพิวเตอร์ระยะไกล การรับรองความถูกต้องของผู้ให้บริการความปลอดภัยข้อมูลประจำตัว (CredSSP) ต้องเปิดใช้งานในการตั้งค่าไคลเอนต์บนคอมพิวเตอร์เฉพาะที่ (โดยใช้Enable-WSManCredSSPcmdlet) และในการตั้งค่าบริการบนคอมพิวเตอร์ระยะไกล นอกจากนี้ คุณต้องใช้ค่า CredSSP ของพารามิเตอร์ Authentication เมื่อสร้างเซสชันระยะไกล มิฉะนั้น การเข้าถึงจะถูกปฏิเสธคุณสมบัติบันทึกย่อของวัตถุที่ส่งคืน
Get-PSSessionConfigurationปรากฏบนวัตถุเฉพาะเมื่อมีค่าเท่านั้น เฉพาะการกำหนดค่าเซสชันที่สร้างขึ้นโดยใช้ไฟล์การกำหนดค่าเซสชันเท่านั้นที่มีคุณสมบัติที่กำหนดไว้ทั้งหมดคุณสมบัติของออบเจ็กต์การกำหนดค่าเซสชันจะแตกต่างกันไปตามตัวเลือกที่ตั้งไว้สำหรับการกำหนดค่าเซสชันและค่าของตัวเลือกเหล่านั้น นอกจากนี้ การกำหนดค่าเซสชันที่ใช้ไฟล์การกำหนดค่าเซสชันจะมีคุณสมบัติเพิ่มเติม
คุณสามารถใช้คำสั่งในไดรฟ์ WSMan: เพื่อเปลี่ยนคุณสมบัติของการกำหนดค่าเซสชัน อย่างไรก็ตาม คุณไม่สามารถใช้ WSMan: ไดรฟ์ใน PowerShell 2.0 เพื่อเปลี่ยนคุณสมบัติการกำหนดค่าเซสชันที่นำมาใช้ใน PowerShell 3.0 เช่น OutputBufferingMode คำสั่ง PowerShell 2.0 ไม่สร้างข้อผิดพลาด แต่ไม่ได้ผล หากต้องการเปลี่ยนคุณสมบัติที่แนะนำใน PowerShell 3.0 ให้ใช้ WSMan: ไดรฟ์ใน PowerShell 3.0