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

รับ 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 Provider

cmdlet 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.com

Enable-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-WSManCredSSP cmdlet) และในการตั้งค่าบริการบนคอมพิวเตอร์ระยะไกล นอกจากนี้ คุณต้องใช้ค่า CredSSP ของพารามิเตอร์ Authentication เมื่อสร้างเซสชันระยะไกล มิฉะนั้น การเข้าถึงจะถูกปฏิเสธ

  • คุณสมบัติบันทึกย่อของวัตถุที่ส่งคืน Get-PSSessionConfiguration ปรากฏบนวัตถุเฉพาะเมื่อมีค่าเท่านั้น เฉพาะการกำหนดค่าเซสชันที่สร้างขึ้นโดยใช้ไฟล์การกำหนดค่าเซสชันเท่านั้นที่มีคุณสมบัติที่กำหนดไว้ทั้งหมด

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

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

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