New-PSTransportOption
Membuat objek yang berisi opsi tingkat lanjut untuk konfigurasi sesi.
Sintaks
New-PSTransportOption
[-MaxIdleTimeoutSec <Int32>]
[-ProcessIdleTimeoutSec <Int32>]
[-MaxSessions <Int32>]
[-MaxConcurrentCommandsPerSession <Int32>]
[-MaxSessionsPerUser <Int32>]
[-MaxMemoryPerSessionMB <Int32>]
[-MaxProcessesPerSession <Int32>]
[-MaxConcurrentUsers <Int32>]
[-IdleTimeoutSec <Int32>]
[-OutputBufferingMode <OutputBufferingMode>]
[<CommonParameters>]
Deskripsi
New-PSTransportOption
Cmdlet membuat objek yang berisi opsi transportasi untuk konfigurasi sesi. Anda dapat menggunakan objek sebagai nilai parameter TransportOption cmdlet yang membuat atau mengubah konfigurasi sesi, seperti Register-PSSessionConfiguration
cmdlet dan Set-PSSessionConfiguration
.
Anda juga dapat mengubah pengaturan opsi transportasi dengan mengedit nilai properti konfigurasi sesi di drive WSMan: . Untuk informasi selengkapnya, lihat Penyedia WSMan.
Opsi konfigurasi sesi mewakili nilai sesi yang diatur di sisi server, atau menerima akhir koneksi jarak jauh. Sisi klien, atau mengirim akhir koneksi, dapat mengatur nilai opsi sesi saat sesi dibuat, atau ketika klien terputus dari atau terhubung kembali ke sesi. Kecuali dinyatakan lain, ketika nilai pengaturan bertentangan, nilai sisi klien lebih diutamakan. Namun, nilai sisi klien tidak dapat melanggar nilai dan kuota maksimum yang ditetapkan dalam konfigurasi sesi.
Tanpa parameter, New-PSTransportOption
menghasilkan objek opsi transportasi yang memiliki nilai null untuk semua opsi. Jika Anda menghilangkan parameter, objek memiliki nilai null untuk properti yang diwakili parameter. Nilai null tidak memengaruhi konfigurasi sesi.
Untuk informasi selengkapnya tentang opsi sesi, lihat New-PSSessionOption
. Untuk informasi selengkapnya tentang konfigurasi sesi, lihat about_Session_Configurations.
Cmdlet ini diperkenalkan di Windows PowerShell 3.0.
Contoh
Contoh 1: Buat opsi transportasi default
New-PSTransportOption
ProcessIdleTimeoutSec :
MaxIdleTimeoutSec :
MaxSessions :
MaxConcurrentCommandsPerSession :
MaxSessionsPerUser :
MaxMemoryPerSessionMB :
MaxProcessesPerSession :
MaxConcurrentUsers :
IdleTimeoutSec :
OutputBufferingMode :
Perintah ini menjalankan New-PSTransportOption
tanpa parameter. Output menunjukkan bahwa cmdlet menghasilkan objek opsi transportasi yang memiliki nilai null untuk semua properti.
Contoh 2: Mendapatkan opsi konfigurasi sesi
Contoh ini menunjukkan cara menggunakan objek opsi transportasi untuk mengatur opsi konfigurasi sesi.
$t = New-PSTransportOption -MaxSessions 40
Register-PSSessionConfiguration -Name ITTasks -TransportOption $t
Get-PSSessionConfiguration -Name ITTasks | Format-List -Property *
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : http://schemas.microsoft.com/powershell/ITTasks
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 5
lang : en-US
SupportsOptions : true
ExactMatch : true
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
MaxShells : 40
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 43200000
SDKVersion : 2
Name : ITTasks
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 15
Enabled : True
MaxShellsPerUser : 25
Permission :
Perintah pertama menggunakan New-PSTransportOption
cmdlet untuk membuat objek opsi transportasi, yang disimpannya dalam $t
variabel. Perintah menggunakan parameter MaxSessions untuk meningkatkan jumlah maksimum sesi menjadi 40.
Perintah kedua menggunakan Register-PSSessionConfiguration
cmdlet membuat konfigurasi sesi ITTasks. Perintah menggunakan parameter TransportOption untuk menentukan objek opsi transportasi dalam $t
variabel.
Perintah ketiga menggunakan Get-PSSessionConfiguration
cmdlet untuk mendapatkan konfigurasi sesi ITTasks dan Format-List
cmdlet untuk menampilkan semua properti objek konfigurasi sesi dalam daftar. Output menunjukkan bahwa nilai properti MaxShells dari konfigurasi sesi adalah 40.
Contoh 3: Mengatur opsi transportasi
Perintah ini menunjukkan efek pengaturan opsi transportasi dalam konfigurasi sesi pada sesi yang menggunakan konfigurasi sesi.
$t = New-PSTransportOption -IdleTimeoutSec 3600
Set-PSSessionConfiguration -Name ITTasks -TransportOption $t
$s = New-PSSession -Name MyITTasks -ConfigurationName ITTasks
$s | Format-List -Property *
State : Opened
IdleTimeout : 3600000
OutputBufferingMode : Block
ComputerName : localhost
ConfigurationName : ITTasks
InstanceId : 4110c3f5-68ea-40fa-9bbf-04a433dbb02d
Id : 1
Name : MyITTasks
Availability : Available
ApplicationPrivateData : {PSVersionTable}
Runspace : System.Management.Automation.RemoteRunspace
Perintah pertama menggunakan New-PSTransportOption
cmdlet untuk membuat objek opsi transportasi. Perintah menggunakan parameter IdleTimeoutSec untuk mengatur nilai properti IdleTimeoutSec objek menjadi satu jam (3600 detik). Perintah menyimpan objek transportasi dalam $t
variabel.
Perintah kedua menggunakan Set-PSSessionConfiguration
cmdlet untuk mengubah opsi transportasi konfigurasi sesi ITTasks. Perintah menggunakan parameter TransportOption untuk menentukan objek opsi transportasi dalam $t
variabel.
Perintah ketiga menggunakan New-PSSession
cmdlet untuk membuat sesi MyITTasks di komputer lokal. Perintah menggunakan properti ConfigurationName untuk menentukan konfigurasi sesi ITTasks. Perintah menyimpan sesi dalam variabel $s. Perhatikan bahwa perintah tidak menggunakan parameter SessionOption untuk New-PSSession
mengatur batas waktu menganggur kustom untuk sesi. Jika ya, nilai batas waktu diam yang ditetapkan dalam opsi sesi akan lebih diutamakan daripada batas waktu diam yang ditetapkan dalam konfigurasi sesi.
Perintah keempat menggunakan Format-List
cmdlet untuk menampilkan semua properti sesi dalam $s
variabel dalam daftar. Output menunjukkan bahwa sesi memiliki batas waktu menganggur satu jam (360.000 milidetik).
Parameter
-IdleTimeoutSec
Menentukan berapa lama setiap sesi tetap terbuka jika komputer jarak jauh tidak menerima komunikasi apa pun dari komputer lokal. Ini termasuk sinyal heartbeat. Ketika interval kedaluwarsa, sesi ditutup.
Nilai batas waktu diam sangat penting ketika pengguna berniat untuk memutuskan sambungan dan menyambungkan kembali ke sesi. Pengguna dapat tersambung kembali hanya jika sesi belum kehabisan waktu.
Parameter IdleTimeoutSec sesuai dengan properti IdleTimeoutMs dari konfigurasi sesi.
Masukkan nilai dalam detik. Nilai default adalah 7200 (2 jam). Nilai minimum adalah 60 (1 menit).
Maksimum adalah nilai properti IdleTimeout objek Shell dalam konfigurasi WSMan (WSMan:\\\<ComputerName\>\Shell\IdleTimeout
). Nilai defaultnya adalah 7200000 milidetik (2 jam).
Jika nilai batas waktu diam diatur dalam opsi sesi dan dalam konfigurasi sesi, nilai yang diatur dalam opsi sesi lebih diutamakan, tetapi tidak dapat melebihi nilai properti MaxIdleTimeoutMs dari konfigurasi sesi. Untuk mengatur nilai properti MaxIdleTimeoutMs , gunakan parameter MaxIdleTimeoutSec .
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxConcurrentCommandsPerSession
Membatasi jumlah perintah yang dapat berjalan pada saat yang sama di setiap sesi ke nilai yang ditentukan. Nilai defaultnya adalah 1000.
Parameter MaxConcurrentCommandsPerSession sesuai dengan properti MaxConcurrentCommandsPerShell dari konfigurasi sesi.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxConcurrentUsers
Membatasi jumlah pengguna yang dapat menjalankan perintah secara bersamaan di setiap sesi ke nilai yang ditentukan. Nilai defaultnya adalah 5.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxIdleTimeoutSec
Membatasi waktu habis menganggur yang ditetapkan untuk setiap sesi ke nilai yang ditentukan. Nilai defaultnya adalah [Int]::MaxValue
(~25 hari).
Nilai batas waktu diam sangat penting ketika pengguna berniat untuk memutuskan sambungan dan menyambungkan kembali ke sesi. Pengguna dapat tersambung kembali hanya jika sesi belum kehabisan waktu.
Parameter MaxIdleTimeoutSec sesuai dengan properti MaxIdleTimeoutMs dari konfigurasi sesi.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxMemoryPerSessionMB
Membatasi memori yang digunakan oleh setiap sesi ke nilai yang ditentukan. Masukkan nilai dalam megabyte. Nilai defaultnya adalah 1024 megabyte (1 GB).
Parameter MaxMemoryPerSessionMB sesuai dengan properti MaxMemoryPerShellMB dari konfigurasi sesi.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxProcessesPerSession
Membatasi jumlah proses yang berjalan di setiap sesi ke nilai yang ditentukan. Nilai default-nya adalah 15.
Parameter MaxProcessesPerSession sesuai dengan properti MaxProcessesPerShell dari konfigurasi sesi.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxSessions
Membatasi jumlah sesi yang menggunakan konfigurasi sesi. Nilai defaultnya adalah 25.
Parameter MaxSessions sesuai dengan properti MaxShells dari konfigurasi sesi.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-MaxSessionsPerUser
Membatasi jumlah sesi yang menggunakan konfigurasi sesi dan berjalan dengan kredensial pengguna tertentu ke nilai yang ditentukan. Nilai defaultnya adalah 25.
Saat Anda menentukan nilai ini, pertimbangkan bahwa banyak pengguna mungkin menggunakan kredensial eksekusi sebagai pengguna.
Parameter MaxSessionsPerUser sesuai dengan properti MaxShellsPerUser dari konfigurasi sesi.
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-OutputBufferingMode
Menentukan bagaimana output perintah dikelola dalam sesi yang terputus saat buffer output menjadi penuh. Nilai yang dapat diterima untuk parameter ini adalah:
Block
Ketika buffer output penuh, eksekusi ditangguhkan hingga buffer jelas.Drop
Ketika buffer output penuh, eksekusi berlanjut. Saat output baru disimpan, output terlama dibuang.None
Tidak ada mode buffering output yang ditentukan.
Nilai default properti OutputBufferingMode sesi adalah Blokir.
Jenis: | Nullable<T>[OutputBufferingMode] |
Nilai yang diterima: | None, Drop, Block |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-ProcessIdleTimeoutSec
Membatasi batas waktu untuk setiap proses host ke nilai yang ditentukan. Nilai default, 0, berarti bahwa tidak ada nilai waktu habis untuk proses tersebut.
Konfigurasi sesi lainnya memiliki nilai batas waktu per proses. Misalnya, konfigurasi sesi Microsoft.PowerShell.Workflow memiliki nilai waktu habis per proses 28800 detik (8 jam).
Jenis: | Nullable<T>[Int32] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
Input
None
Anda tidak dapat menyalurkan objek ke cmdlet ini.
Output
Catatan
- Properti objek konfigurasi sesi bervariasi menurut opsi yang diatur untuk konfigurasi sesi dan nilai opsi tersebut. Selain itu, konfigurasi sesi yang menggunakan file konfigurasi sesi memiliki properti tambahan.