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 .

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxConcurrentUsers

Membatasi jumlah pengguna yang dapat menjalankan perintah secara bersamaan di setiap sesi ke nilai yang ditentukan. Nilai defaultnya adalah 5.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxSessions

Membatasi jumlah sesi yang menggunakan konfigurasi sesi. Nilai defaultnya adalah 25.

Parameter MaxSessions sesuai dengan properti MaxShells dari konfigurasi sesi.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:Nullable<T>[OutputBufferingMode]
Accepted values:None, Drop, Block
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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).

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Input

None

Anda tidak dapat menyalurkan objek ke cmdlet ini.

Output

WSManConfigurationOption

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.