New-PSSessionConfigurationFile
Membuat file yang menentukan konfigurasi sesi.
Sintaks
Default (Default)
New-PSSessionConfigurationFile
[-Path] <String>
[-SchemaVersion <Version>]
[-Guid <Guid>]
[-Author <String>]
[-Description <String>]
[-CompanyName <String>]
[-Copyright <String>]
[-SessionType <SessionType>]
[-TranscriptDirectory <String>]
[-RunAsVirtualAccount]
[-RunAsVirtualAccountGroups <String[]>]
[-MountUserDrive]
[-UserDriveMaximumSize <Int64>]
[-GroupManagedServiceAccount <String>]
[-ScriptsToProcess <String[]>]
[-RoleDefinitions <IDictionary>]
[-RequiredGroups <IDictionary>]
[-LanguageMode <PSLanguageMode>]
[-ExecutionPolicy <ExecutionPolicy>]
[-PowerShellVersion <Version>]
[-ModulesToImport <Object[]>]
[-VisibleAliases <String[]>]
[-VisibleCmdlets <Object[]>]
[-VisibleFunctions <Object[]>]
[-VisibleExternalCommands <String[]>]
[-VisibleProviders <String[]>]
[-AliasDefinitions <IDictionary[]>]
[-FunctionDefinitions <IDictionary[]>]
[-VariableDefinitions <Object>]
[-EnvironmentVariables <IDictionary>]
[-TypesToProcess <String[]>]
[-FormatsToProcess <String[]>]
[-AssembliesToLoad <String[]>]
[-Full]
[<CommonParameters>]
Deskripsi
cmdlet New-PSSessionConfigurationFile membuat file pengaturan yang menentukan konfigurasi sesi dan lingkungan sesi yang dibuat dengan menggunakan konfigurasi sesi.
Untuk menggunakan file dalam konfigurasi sesi, gunakan parameter Jalur cmdlet Register-PSSessionConfiguration atau Set-PSSessionConfiguration.
File konfigurasi sesi yang New-PSSessionConfigurationFile buat adalah file teks yang dapat dibaca manusia yang berisi tabel hash properti dan nilai konfigurasi sesi. File memiliki ekstensi nama file .pssc.
Semua parameter New-PSSessionConfigurationFile bersifat opsional, kecuali untuk parameter Jalur.
Jika Anda menghilangkan parameter, kunci yang sesuai dalam file konfigurasi sesi dikomentari, kecuali jika dicatat dalam deskripsi parameter.
Konfigurasi sesi, juga dikenal sebagai titik akhir, adalah kumpulan pengaturan di komputer lokal yang menentukan lingkungan untuk sesi PowerShell (PSSessions) yang terhubung ke komputer. Semua PSSessions menggunakan konfigurasi sesi. Untuk menentukan konfigurasi sesi tertentu, gunakan parameter ConfigurationName cmdlet yang membuat sesi, seperti cmdlet New-PSSession.
File konfigurasi sesi memudahkan untuk menentukan konfigurasi sesi tanpa skrip kompleks atau rakitan kode. Pengaturan dalam file digunakan dengan skrip startup opsional dan rakitan apa pun dalam konfigurasi sesi.
Untuk informasi selengkapnya tentang konfigurasi sesi dan file konfigurasi sesi, lihat about_Session_Configurations dan about_Session_Configuration_Files.
Cmdlet ini diperkenalkan di PowerShell 3.0. Dimulai dengan PowerShell 6.0, cmdlet ini hanya tersedia di platform Windows. PowerShell 7.3 membuat cmdlet ini tersedia di semua platform yang didukung.
Contoh
Contoh 1: Membuat dan menggunakan sesi NoLanguage
Contoh ini menunjukkan cara membuat dan efek menggunakan sesi tanpa bahasa.
Langkah-langkahnya meliputi:
- Buat file konfigurasi baru.
- Daftarkan konfigurasi.
- Buat sesi baru yang menggunakan konfigurasi.
- Jalankan perintah dalam sesi baru tersebut.
Untuk menjalankan perintah dalam contoh ini, mulai PowerShell dengan menggunakan opsi Jalankan sebagai administrator. Opsi ini diperlukan untuk menjalankan cmdlet Register-PSSessionConfiguration.
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode NoLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name NoLanguage -Force
$NoLanguageSession = New-PSSession -ComputerName Srv01 -ConfigurationName NoLanguage
Invoke-Command -Session $NoLanguageSession -ScriptBlock {
if ((Get-Date) -lt '1January2099') {'Before'} else {'After'}
}
The syntax is not supported by this runspace. This might be because it is in no-language mode.
+ CategoryInfo : ParserError: (if ((Get-Date) ...') {'Before'} :String) [], ParseException
+ FullyQualifiedErrorId : ScriptsNotAllowed
+ PSComputerName : localhost
Dalam contoh ini, Invoke-Command gagal karena LanguageMode diatur ke NoLanguage.
Contoh 2: Membuat dan menggunakan sesi RestrictedLanguage
Contoh ini menunjukkan cara membuat dan efek menggunakan sesi tanpa bahasa.
Langkah-langkahnya meliputi:
- Buat file konfigurasi baru.
- Daftarkan konfigurasi.
- Buat sesi baru yang menggunakan konfigurasi.
- Jalankan perintah dalam sesi baru tersebut.
Untuk menjalankan perintah dalam contoh ini, mulai PowerShell dengan menggunakan opsi Jalankan sebagai administrator. Opsi ini diperlukan untuk menjalankan cmdlet Register-PSSessionConfiguration.
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode RestrictedLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name RestrictedLanguage -Force
$RestrictedSession = New-PSSession -ComputerName Srv01 -ConfigurationName RestrictedLanguage
Invoke-Command -Session $RestrictedSession -ScriptBlock {
if ((Get-Date) -lt '1January2099') {'Before'} else {'After'}
}
Before
Dalam contoh ini, Invoke-Command berhasil karena LanguageMode diatur ke RestrictedLanguage.
Contoh 3: Mengubah File Konfigurasi Sesi
Contoh ini menunjukkan cara mengubah file konfigurasi sesi yang digunakan dalam sesi yang sudah ada bernama "ITTasks". Sebelumnya, sesi ini hanya memiliki modul inti dan modul ITTasks internal. Administrator ingin menambahkan modul PSScheduledJob ke sesi yang dibuat dengan menggunakan konfigurasi sesi ITTasks.
New-PSSessionConfigurationFile -Path .\New-ITTasks.pssc -ModulesToImport Microsoft*, ITTasks, PSScheduledJob
Set-PSSessionConfiguration -Name ITTasks -Path .\New-ITTasks.pssc
cmdlet New-PSSessionConfigurationFile untuk membuat file konfigurasi sesi yang mengimpor modul yang diperlukan. Cmdlet Set-PSSessionConfiguration menggantikan file konfigurasi saat ini dengan yang baru. Konfigurasi baru ini hanya memengaruhi sesi baru yang dibuat setelah perubahan.
Sesi "ITTasks" yang ada tidak terpengaruh.
Contoh 4: Mengedit File Konfigurasi Sesi
Contoh ini menunjukkan cara mengubah konfigurasi sesi dengan mengedit salinan konfigurasi sesi aktif dari file konfigurasi. Untuk mengubah salinan konfigurasi sesi file konfigurasi, Anda harus memiliki akses kontrol penuh ke file. Ini mungkin mengharuskan Anda mengubah izin pada file.
Dalam skenario ini, kami ingin menambahkan alias baru untuk cmdlet Select-String dengan mengedit file konfigurasi aktif.
Contoh kode di bawah ini melakukan langkah-langkah berikut untuk membuat perubahan ini:
- Dapatkan jalur file konfigurasi untuk sesi ITConfig.
- Pengguna mengedit file konfigurasi menggunakan Notepad.exe untuk mengubah nilai AliasDefinisi sebagai berikut:
AliasDefinitions = @(@{Name='slst';Value='Select-String'}). - Uji file konfigurasi yang diperbarui.
$ITConfig = Get-PSSessionConfiguration -Name ITConfig
notepad.exe $ITConfig.ConfigFilePath
Test-PSSessionConfigurationFile -Path $ITConfig.ConfigFilePath
True
Gunakan parameter Verbose dengan Test-PSSessionConfigurationFile untuk menampilkan kesalahan apa pun yang terdeteksi. Cmdlet mengembalikan $true jika tidak ada kesalahan yang terdeteksi dalam file.
Contoh 5: Membuat file konfigurasi sampel
Contoh ini menunjukkan perintah New-PSSessionConfigurationFile yang menggunakan semua parameter cmdlet.
Ini disertakan untuk menunjukkan format input yang benar untuk setiap parameter.
SampleFile.pssc yang dihasilkan ditampilkan dalam output.
$configSettings = @{
Path = '.\SampleFile.pssc'
SchemaVersion = '1.0.0.0'
Author = 'User01'
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
CompanyName = 'Fabrikam Corporation'
Description = 'This is a sample file.'
ExecutionPolicy = 'AllSigned'
PowerShellVersion = '3.0'
LanguageMode = 'FullLanguage'
SessionType = 'Default'
EnvironmentVariables = @{TESTSHARE='\\Test2\Test'}
ModulesToImport = @{ModuleName='PSScheduledJob'; ModuleVersion='1.0.0.0'; GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'},'PSDiagnostics'
AssembliesToLoad = 'System.Web.Services','FSharp.Compiler.CodeDom.dll'
TypesToProcess = 'Types1.ps1xml','Types2.ps1xml'
FormatsToProcess = 'CustomFormats.ps1xml'
ScriptsToProcess = 'Get-Inputs.ps1'
AliasDefinitions = @{Name='hlp';Value='Get-Help';Description='Gets help.';Options='AllScope'},
@{Name='Update';Value='Update-Help';Description='Updates help';Options='ReadOnly'}
FunctionDefinitions = @{Name='Get-Function';ScriptBlock={Get-Command -CommandType Function};Options='ReadOnly'}
VariableDefinitions = @{Name='WarningPreference';Value='SilentlyContinue'}
VisibleAliases = 'c*','g*','i*','s*'
VisibleCmdlets = 'Get*'
VisibleFunctions = 'Get*'
VisibleProviders = 'FileSystem','Function','Variable'
RunAsVirtualAccount = $true
RunAsVirtualAccountGroups = 'Backup Operators'
}
New-PSSessionConfigurationFile @configSettings
Get-Content SampleFile.pssc
@{
# Version number of the schema used for this document
SchemaVersion = '1.0.0.0'
# ID used to uniquely identify this document
GUID = '1caeff7f-27ca-4360-97cf-37846f594235'
# Author of this document
Author = 'User01'
# Description of the functionality provided by these settings
Description = 'This is a sample file.'
# Company associated with this document
CompanyName = 'Fabrikam Corporation'
# Copyright statement for this document
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
# Session type defaults to apply for this session configuration. Can be
# 'RestrictedRemoteServer' (recommended), 'Empty', or 'Default'
SessionType = 'Default'
# Directory to place session transcripts for this session configuration
# TranscriptDirectory = 'C:\Transcripts\'
# Whether to run this session configuration as the machine's (virtual) administrator
# account
RunAsVirtualAccount = $true
# Groups associated with machine's (virtual) administrator account
RunAsVirtualAccountGroups = 'Backup Operators'
# Scripts to run when applied to a session
ScriptsToProcess = 'Get-Inputs.ps1'
# User roles (security groups), and the role capabilities that should be applied to them
# when applied to a session
# RoleDefinitions = @{ 'CONTOSO\SqlAdmins' = @{ RoleCapabilities = 'SqlAdministration' }; 'CONTOSO\SqlManaged' = @{ RoleCapabilityFiles = 'C:\RoleCapability\SqlManaged.psrc' }; 'CONTOSO\ServerMonitors' = @{ VisibleCmdlets = 'Get-Process' } }
# Language mode to apply when applied to a session. Can be 'NoLanguage' (recommended),
# 'RestrictedLanguage', 'ConstrainedLanguage', or 'FullLanguage'
LanguageMode = 'FullLanguage'
# Execution policy to apply when applied to a session
ExecutionPolicy = 'AllSigned'
# Version of the PowerShell engine to use when applied to a session
PowerShellVersion = '3.0'
# Modules to import when applied to a session
ModulesToImport = @{
'GUID' = '50cdb55f-5ab7-489f-9e94-4ec21ff51e59'
'ModuleName' = 'PSScheduledJob'
'ModuleVersion' = '1.0.0.0' }, 'PSDiagnostics'
# Aliases to make visible when applied to a session
VisibleAliases = 'c*', 'g*', 'i*', 's*'
# Cmdlets to make visible when applied to a session
VisibleCmdlets = 'Get*'
# Functions to make visible when applied to a session
VisibleFunctions = 'Get*'
# Providers to make visible when applied to a session
VisibleProviders = 'FileSystem', 'Function', 'Variable'
# Aliases to be defined when applied to a session
AliasDefinitions = @{
'Description' = 'Gets help.'
'Name' = 'hlp'
'Options' = 'AllScope'
'Value' = 'Get-Help' }, @{
'Description' = 'Updates help'
'Name' = 'Update'
'Options' = 'ReadOnly'
'Value' = 'Update-Help' }
# Functions to define when applied to a session
FunctionDefinitions = @{
'Name' = 'Get-Function'
'Options' = 'ReadOnly'
'ScriptBlock' = {Get-Command -CommandType Function} }
# Variables to define when applied to a session
VariableDefinitions = @{
'Name' = 'WarningPreference'
'Value' = 'SilentlyContinue' }
# Environment variables to define when applied to a session
EnvironmentVariables = @{
'TESTSHARE' = '\\Test2\Test' }
# Type files (.ps1xml) to load when applied to a session
TypesToProcess = 'Types1.ps1xml', 'Types2.ps1xml'
# Format files (.ps1xml) to load when applied to a session
FormatsToProcess = 'CustomFormats.ps1xml'
# Assemblies to load when applied to a session
AssembliesToLoad = 'System.Web.Services', 'FSharp.Compiler.CodeDom.dll'
}
Parameter
-AliasDefinitions
Menambahkan alias yang ditentukan ke sesi yang menggunakan konfigurasi sesi. Masukkan tabel hash dengan kunci berikut:
- Nama - Nama alias. Kunci ini diperlukan.
- Nilai - Perintah yang diwakili alias. Kunci ini diperlukan.
- Deskripsi - String teks yang menjelaskan alias. Kunci ini bersifat opsional.
- Opsi - Opsi alias. Kunci ini bersifat opsional. Nilai defaultnya adalah Tidak Ada. Nilai yang dapat diterima untuk parameter ini adalah: None, ReadOnly, Constant, Private, atau AllScope.
Misalnya: @{Name='hlp';Value='Get-Help';Description='Gets help';Options='ReadOnly'}
Properti parameter
| Jenis: | |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-AssembliesToLoad
Menentukan rakitan yang akan dimuat ke dalam sesi yang menggunakan konfigurasi sesi.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Author
Menentukan penulis konfigurasi sesi atau file konfigurasi. Defaultnya adalah pengguna saat ini. Nilai parameter ini terlihat dalam file konfigurasi sesi, tetapi bukan properti objek konfigurasi sesi.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-CompanyName
Menentukan perusahaan yang membuat konfigurasi sesi atau file konfigurasi. Nilai defaultnya adalah Tidak Diketahui . Nilai parameter ini terlihat dalam file konfigurasi sesi, tetapi bukan properti objek konfigurasi sesi.
Properti parameter
| Jenis: | String |
| Nilai default: | Unknown |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Copyright
Menentukan hak cipta file konfigurasi sesi. Nilai parameter ini terlihat dalam file konfigurasi sesi, tetapi bukan properti objek konfigurasi sesi.
Jika Anda menghilangkan parameter ini, New-PSSessionConfigurationFile menghasilkan pernyataan hak cipta dengan menggunakan nilai parameter Penulis.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Description
Menentukan deskripsi konfigurasi sesi atau file konfigurasi sesi. Nilai parameter ini terlihat dalam file konfigurasi sesi, tetapi bukan properti objek konfigurasi sesi.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-EnvironmentVariables
Menambahkan variabel lingkungan ke sesi. Masukkan tabel hash di mana kunci adalah nama variabel lingkungan dan nilainya adalah nilai variabel lingkungan.
Misalnya: EnvironmentVariables=@{TestShare='\\Server01\TestShare'}
Properti parameter
| Jenis: | IDictionary |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ExecutionPolicy
Menentukan kebijakan eksekusi sesi yang menggunakan konfigurasi sesi. Jika Anda menghilangkan parameter ini, nilai kunci ExecutionPolicy dalam file konfigurasi sesi Terbatas. Untuk informasi tentang kebijakan eksekusi di PowerShell, lihat about_Execution_Policies.
Properti parameter
| Jenis: | ExecutionPolicy |
| Nilai default: | None |
| Nilai yang diterima: | Unrestricted, RemoteSigned, AllSigned, Restricted, Default, Bypass, Undefined |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-FormatsToProcess
Menentukan file pemformatan (.ps1xml) yang berjalan dalam sesi yang menggunakan konfigurasi sesi.
Nilai parameter ini harus berupa jalur penuh atau absolut dari file pemformatan.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Full
Menunjukkan bahwa operasi ini mencakup semua kemungkinan properti konfigurasi dalam file konfigurasi sesi.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-FunctionDefinitions
Menambahkan fungsi yang ditentukan ke sesi yang menggunakan konfigurasi sesi. Masukkan tabel hash dengan kunci berikut:
- Nama - Nama fungsi. Kunci ini diperlukan.
- ScriptBlock - Isi fungsi. Masukkan blok skrip. Kunci ini diperlukan.
- Opsi - Opsi fungsi. Kunci ini bersifat opsional. Nilai defaultnya adalah Tidak Ada. Nilai yang dapat diterima untuk parameter ini adalah: None, ReadOnly, Constant, Private, atau AllScope.
Misalnya: @{Name='Get-PowerShellProcess';ScriptBlock={Get-Process powershell};Options='AllScope'}
Properti parameter
| Jenis: | |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-GroupManagedServiceAccount
Mengonfigurasi sesi menggunakan konfigurasi sesi ini untuk berjalan di bawah konteks Akun Layanan Terkelola Grup yang ditentukan. Komputer tempat konfigurasi sesi ini terdaftar harus memiliki izin untuk meminta kata sandi gMSA agar sesi berhasil dibuat. Bidang ini tidak dapat digunakan dengan parameter RunAsVirtualAccount.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Guid
Menentukan pengidentifikasi unik untuk file konfigurasi sesi. Jika Anda menghilangkan parameter ini, New-PSSessionConfigurationFile menghasilkan GUID untuk file tersebut. Untuk membuat GUID baru di PowerShell, ketik New-Guid.
Properti parameter
| Jenis: | Guid |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-LanguageMode
Menentukan elemen bahasa PowerShell mana yang diizinkan dalam sesi yang menggunakan konfigurasi sesi ini. Anda dapat menggunakan parameter ini untuk membatasi perintah yang dapat dijalankan pengguna tertentu di komputer.
Nilai yang dapat diterima untuk parameter ini adalah:
- FullLanguage - Semua elemen bahasa diizinkan.
- ConstrainedLanguage - Perintah yang berisi skrip yang akan dievaluasi tidak diizinkan. Mode ConstrainedLanguage membatasi akses pengguna ke jenis, objek, atau metode Microsoft .NET Framework.
- NoLanguage - Pengguna dapat menjalankan cmdlet dan fungsi, tetapi tidak diizinkan untuk menggunakan elemen bahasa apa pun, seperti blokir skrip, variabel, atau operator.
- RestrictedLanguage - Pengguna dapat menjalankan cmdlet dan fungsi, tetapi tidak diizinkan untuk menggunakan blok skrip atau variabel kecuali untuk variabel yang diizinkan berikut:
$PSCulture, ,$PSUICulture,$true$false, dan$null. Pengguna hanya dapat menggunakan operator perbandingan dasar (-eq,-gt,-lt). Pernyataan penugasan, referensi properti, dan panggilan metode tidak diizinkan.
Nilai default parameter LanguageMode bergantung pada nilai parameter SessionType.
- Kosong - NoLanguage
- RestrictedRemoteServer - NoLanguage
- Default - FullLanguage
Properti parameter
| Jenis: | PSLanguageMode |
| Nilai default: | None |
| Nilai yang diterima: | FullLanguage, RestrictedLanguage, NoLanguage, ConstrainedLanguage |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ModulesToImport
Menentukan modul dan snap-in yang secara otomatis diimpor ke dalam sesi yang menggunakan konfigurasi sesi.
Secara default, hanya snap-in Microsoft.PowerShell.Core yang diimpor ke sesi jarak jauh, tetapi kecuali cmdlet dikecualikan, pengguna dapat menggunakan cmdlet Import-Module dan Add-PSSnapin untuk menambahkan modul dan snap-in ke sesi.
Setiap modul atau snap-in dalam nilai parameter ini dapat diwakili oleh string atau sebagai tabel hash. String modul hanya terdiri dari nama modul atau snap-in. Tabel hash modul dapat menyertakan ModuleName, ModuleVersion, dan kunci GUID. Hanya kunci ModuleName yang diperlukan.
Misalnya, nilai berikut terdiri dari string dan tabel hash. Kombinasi string dan tabel hash apa pun, dalam urutan apa pun, valid.
'TroubleshootingPack', @{ModuleName='PSDiagnostics'; ModuleVersion='1.0.0.0';GUID='c61d6278-02a3-4618-ae37-a524d40a7f44'}
Nilai parameter ModulesToImport cmdlet Register-PSSessionConfiguration lebih diutamakan daripada nilai kunci ModulesToImport dalam file konfigurasi sesi.
Properti parameter
| Jenis: | Object[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-MountUserDrive
Mengonfigurasi sesi yang menggunakan konfigurasi sesi ini untuk mengekspos User: PSDrive. Drive pengguna unik untuk setiap pengguna yang menghubungkan dan memungkinkan pengguna menyalin data ke dan dari titik akhir PowerShell meskipun penyedia FileSystem tidak terekspos. Akar drive pengguna dibuat di bawah $Env:LOCALAPPDATA\Microsoft\PowerShell\DriveRoots\. Untuk setiap pengguna yang terhubung ke titik akhir, folder dibuat dengan nama $Env:USERDOMAIN\$Env:USERNAME. Untuk komputer dalam grup kerja, nilai $Env:USERDOMAIN adalah nama host.
Konten dalam drive pengguna bertahan di seluruh sesi pengguna dan tidak dihapus secara otomatis. Secara default, pengguna hanya dapat menyimpan hingga 50MB data di drive pengguna. Ini dapat dikustomisasi dengan parameter UserDriveMaximumSize.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Path
Menentukan jalur dan nama file file konfigurasi sesi. File harus memiliki ekstensi nama file .pssc.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | 0 |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-PowerShellVersion
Menentukan versi mesin PowerShell dalam sesi yang menggunakan konfigurasi sesi. Nilai yang dapat diterima untuk parameter ini adalah: 2.0 dan 3.0. Jika Anda menghilangkan parameter ini, kunci PowerShellVersion dikomentari dan versi terbaru PowerShell berjalan dalam sesi.
Nilai parameter PSVersion cmdlet Register-PSSessionConfiguration lebih diutamakan daripada nilai kunci PowerShellVersion dalam file konfigurasi sesi.
Properti parameter
| Jenis: | Version |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-RequiredGroups
Menentukan aturan akses bersyar bagi pengguna yang tersambung ke sesi yang menggunakan konfigurasi sesi ini.
Masukkan hashtable untuk menyusun daftar aturan Anda hanya menggunakan 1 kunci per hashtable, 'And' atau 'Or', dan atur nilai ke array nama grup keamanan atau hashtable tambahan.
Contoh yang mengharuskan pengguna untuk menjadi anggota satu grup: @{ And = 'MyRequiredGroup' }
Contoh mengharuskan pengguna berada dalam grup A, atau kedua grup B dan C, untuk mengakses titik akhir: @{ Or = 'GroupA', @{ And = 'GroupB', 'GroupC' } }
Properti parameter
| Jenis: | IDictionary |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-RoleDefinitions
Menentukan pemetaan antara kelompok keamanan (atau pengguna) dan kemampuan peran. Pengguna akan diberikan akses ke semua kemampuan peran yang berlaku untuk keanggotaan grup mereka pada saat sesi dibuat.
Masukkan tabel hash di mana kunci adalah nama grup keamanan dan nilainya adalah tabel hash yang berisi daftar kemampuan peran yang harus disediakan untuk grup keamanan.
Misalnya: @{'Contoso\Level 2 Helpdesk Users' = @{ RoleCapabilities = 'Maintenance', 'ADHelpDesk' }}
Properti parameter
| Jenis: | IDictionary |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-RunAsVirtualAccount
Mengonfigurasi sesi menggunakan konfigurasi sesi ini untuk dijalankan sebagai akun administrator komputer (virtual). Bidang ini tidak dapat digunakan dengan parameter GroupManagedServiceAccount.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-RunAsVirtualAccountGroups
Menentukan grup keamanan yang akan dikaitkan dengan akun virtual saat sesi yang menggunakan konfigurasi sesi dijalankan sebagai akun virtual. Jika dihilangkan, akun virtual milik Admin Domain pada pengendali domain dan Administrator di semua komputer lain.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-SchemaVersion
Menentukan versi skema file konfigurasi sesi. Nilai defaultnya adalah "1.0.0.0".
Properti parameter
| Jenis: | Version |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ScriptsToProcess
Menambahkan skrip yang ditentukan ke sesi yang menggunakan konfigurasi sesi. Masukkan jalur dan nama file skrip. Nilai parameter ini harus berupa jalur lengkap atau absolut dari nama file skrip.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-SessionType
Menentukan jenis sesi yang dibuat dengan menggunakan konfigurasi sesi. Nilai defaultnya adalah Default. Nilai yang dapat diterima untuk parameter ini adalah:
- Kosong - Tidak ada modul yang ditambahkan ke sesi secara default. Gunakan parameter cmdlet ini untuk menambahkan modul, fungsi, skrip, dan fitur lainnya ke sesi. Opsi ini dirancang bagi Anda untuk membuat sesi kustom dengan menambahkan perintah yang dipilih. Jika Anda tidak menambahkan perintah ke sesi kosong, sesi terbatas pada ekspresi dan mungkin tidak dapat digunakan.
- Default - Menambahkan modul Microsoft.PowerShell.Core ke sesi. Modul ini mencakup cmdlet
Import-Moduleyang dapat digunakan pengguna untuk mengimpor modul lain kecuali Anda secara eksplisit melarang cmdlet ini. - TerbatasRemoteServer. Hanya mencakup fungsi proksi berikut:
Exit-PSSession,Get-Command,Get-FormatData,Get-Help,Measure-Object,Out-Default, danSelect-Object. Gunakan parameter cmdlet ini untuk menambahkan modul, fungsi, skrip, dan fitur lainnya ke sesi.
Properti parameter
| Jenis: | SessionType |
| Nilai default: | None |
| Nilai yang diterima: | Empty, RestrictedRemoteServer, Default |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-TranscriptDirectory
Menentukan direktori untuk menempatkan transkrip sesi untuk sesi menggunakan konfigurasi sesi ini.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-TypesToProcess
Menambahkan file jenis .ps1xml yang ditentukan ke sesi yang menggunakan konfigurasi sesi. Masukkan nama file jenis. Nilai parameter ini harus berupa jalur penuh atau absolut untuk mengetik nama file.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-UserDriveMaximumSize
Menentukan ukuran maksimum untuk drive pengguna yang diekspos dalam sesi yang menggunakan konfigurasi sesi ini.
Saat dihilangkan, ukuran default setiap akar drive User: adalah 50MB.
Parameter ini harus digunakan dengan MountUserDrive.
Properti parameter
| Jenis: | Int64 |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-VariableDefinitions
Menambahkan variabel yang ditentukan ke sesi yang menggunakan konfigurasi sesi. Masukkan tabel hash dengan kunci berikut:
- Nama - Nama variabel. Kunci ini diperlukan.
- Nilai - Nilai variabel. Kunci ini diperlukan.
Misalnya: @{Name='WarningPreference';Value='SilentlyContinue'}
Properti parameter
| Jenis: | Object |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-VisibleAliases
Membatasi alias dalam sesi untuk yang ditentukan dalam nilai parameter ini, ditambah alias apa pun yang Anda tentukan dalam parameter AliasDefinition. Karakter kartubebas didukung. Secara default, semua alias yang ditentukan oleh mesin PowerShell dan semua alias yang diekspor modul terlihat dalam sesi.
Misalnya: VisibleAliases='gcm', 'gp'
Ketika parameter terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus cmdlet Import-Module dan alias ipmo-nya dari sesi.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | True |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-VisibleCmdlets
Membatasi cmdlet dalam sesi untuk yang ditentukan dalam nilai parameter ini. Karakter kartubebas dan Nama Yang Memenuhi Syarat Modul didukung.
Secara default, semua cmdlet yang modul dalam ekspor sesi terlihat dalam sesi. Gunakan parameter SessionType dan ModulesToImport untuk menentukan modul dan snap-in mana yang diimpor ke dalam sesi. Jika tidak ada modul dalam modul ToImport mengekspos cmdlet, modul yang sesuai akan mencoba dimuat otomatis.
Ketika parameter terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus cmdlet Import-Module dan alias ipmo-nya dari sesi.
Properti parameter
| Jenis: | Object[] |
| Nilai default: | None |
| Mendukung wildcard: | True |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-VisibleExternalCommands
Membatasi biner eksternal, skrip, dan perintah yang dapat dijalankan dalam sesi untuk yang ditentukan dalam nilai parameter ini. Karakter kartubebas didukung.
Secara default, tidak ada perintah eksternal yang terlihat dalam sesi.
Ketika parameter Terlihat disertakan dalam file konfigurasi sesi, PowerShell, menghapus cmdlet Import-Module dan alias ipmo-nya dari sesi.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | True |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-VisibleFunctions
Membatasi fungsi dalam sesi ke yang ditentukan dalam nilai parameter ini, ditambah fungsi apa pun yang Anda tentukan dalam parameter FunctionDefinition. Karakter kartubebas didukung.
Secara default, semua fungsi yang modul dalam ekspor sesi terlihat dalam sesi. Gunakan parameter SessionType dan ModulesToImport untuk menentukan modul dan snap-in mana yang diimpor ke dalam sesi.
Ketika parameter terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus cmdlet Import-Module dan alias ipmo-nya dari sesi.
Properti parameter
| Jenis: | Object[] |
| Nilai default: | None |
| Mendukung wildcard: | True |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-VisibleProviders
Membatasi penyedia PowerShell dalam sesi dengan yang ditentukan dalam nilai parameter ini. Karakter kartubebas didukung.
Secara default, semua penyedia yang modul dalam ekspor sesi terlihat dalam sesi. Gunakan parameter SessionType dan ModulesToImport untuk menentukan modul mana yang diimpor ke dalam sesi.
Ketika parameter Terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus cmdlet Import-Module dan alias ipmo dari sesi.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | True |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
CommonParameters
Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.
Input
None
Anda tidak dapat menyalurkan objek ke cmdlet ini.
Output
None
Cmdlet ini tidak mengembalikan output.
Catatan
Parameter, seperti VisibleCmdlets dan VisibleProviders, jangan impor item ke dalam sesi. Sebagai gantinya, mereka memilih dari antara item yang diimpor ke dalam sesi. Misalnya, jika nilai parameter VisibleProviders adalah penyedia Sertifikat, tetapi parameter ModulesToImport tidak menentukan modul Microsoft.PowerShell.Security yang berisi Penyedia sertifikat, penyedia Sertifikat tidak terlihat dalam sesi.
New-PSSessionConfigurationFilemembuat file konfigurasi sesi yang memiliki ekstensi nama file.psscdi jalur yang Anda tentukan di parameter Jalur. Saat Anda menggunakan file konfigurasi sesi untuk membuat konfigurasi sesi, cmdletRegister-PSSessionConfigurationmenyalin file konfigurasi dan menyimpan salinan aktif file di subdirektori SessionConfig direktori$PSHOME.Properti ConfigFilePath konfigurasi sesi berisi jalur yang sepenuhnya memenuhi syarat dari file konfigurasi sesi aktif. Anda dapat mengubah file konfigurasi aktif di direktori
$PSHOMEkapan saja menggunakan editor teks apa pun. Perubahan yang Anda buat memengaruhi semua sesi baru yang menggunakan konfigurasi sesi, tetapi bukan sesi yang ada.Sebelum menggunakan file konfigurasi sesi yang diedit, gunakan cmdlet
Test-PSSessionConfigurationFileuntuk memverifikasi bahwa entri file konfigurasi valid.
Link Terkait
- Disable-PSSessionConfiguration (Nonaktifkan Konfigurasi Sesi PS)
- Mengaktifkan Konfigurasi PSSession (Enable-PSSessionConfiguration)
- Get-PSSessionConfiguration
- Register-PSSessionConfiguration
- Set-PSSessionConfiguration
- Test-PSSessionConfigurationFile (Pengujian Berkas Konfigurasi PSSession)
- Unregister-PSSessionConfiguration
- Penyedia WSMan
- tentang_Konfigurasi_Sesi
- tentang_File_Konfigurasi_Sesi