New-PSRoleCapabilityFile
Membuat file yang menentukan serangkaian kemampuan yang akan diekspos melalui konfigurasi sesi.
Sintaks
New-PSRoleCapabilityFile
[-Path] <String>
[-Guid <Guid>]
[-Author <String>]
[-Description <String>]
[-CompanyName <String>]
[-Copyright <String>]
[-ModulesToImport <Object[]>]
[-VisibleAliases <String[]>]
[-VisibleCmdlets <Object[]>]
[-VisibleFunctions <Object[]>]
[-VisibleExternalCommands <String[]>]
[-VisibleProviders <String[]>]
[-ScriptsToProcess <String[]>]
[-AliasDefinitions <IDictionary[]>]
[-FunctionDefinitions <IDictionary[]>]
[-VariableDefinitions <Object>]
[-EnvironmentVariables <IDictionary>]
[-TypesToProcess <String[]>]
[-FormatsToProcess <String[]>]
[-AssembliesToLoad <String[]>]
[<CommonParameters>]
Deskripsi
New-PSRoleCapabilityFile
Cmdlet membuat file yang menentukan serangkaian kemampuan pengguna yang dapat diekspos melalui file konfigurasi sesi. Ini termasuk menentukan cmdlet, fungsi, dan skrip mana yang tersedia untuk pengguna. File kemampuan adalah file teks yang dapat dibaca manusia yang berisi tabel hash properti dan nilai konfigurasi sesi. File memiliki ekstensi nama file .psrc, dan dapat digunakan oleh lebih dari satu konfigurasi sesi.
Semua parameter New-PSRoleCapabilityFile
bersifat opsional kecuali untuk parameter Jalur , yang menentukan jalur untuk file. Jika Anda tidak menyertakan parameter saat menjalankan cmdlet, kunci yang sesuai dalam file konfigurasi sesi akan dikomentari, kecuali jika dicatat dalam deskripsi parameter. Misalnya, jika Anda tidak menyertakan parameter AssembliesToLoad , bagian tersebut dari file konfigurasi sesi akan dikomentari.
Untuk menggunakan file kemampuan peran dalam konfigurasi sesi, pertama-tama tempatkan file dalam subfolder RoleCapabilities dari folder modul PowerShell yang valid. Kemudian referensikan file menurut nama di bidang RoleDefinitions dalam file Konfigurasi Sesi PowerShell (.pssc).
Cmdlet ini diperkenalkan di Windows PowerShell 5.0.
Contoh
Contoh 1: Membuat file kemampuan peran kosong
Contoh ini membuat file kemampuan peran baru yang menggunakan nilai default (kosong). File nantinya dapat diedit di editor teks untuk mengubah pengaturan konfigurasi ini.
New-PSRoleCapabilityFile -Path ".\ExampleFile.psrc"
Contoh 2: Membuat file kemampuan peran yang memungkinkan pengguna untuk memulai ulang layanan dan komputer VDI apa pun
Contoh ini membuat file kemampuan peran sampel yang memungkinkan pengguna untuk memulai ulang layanan dan komputer yang cocok dengan pola nama tertentu. Pemfilteran nama ditentukan dengan mengatur parameter ValidatePattern ke ekspresi VDI\d+
reguler .
$roleParameters = @{
Path = ".\Maintenance.psrc"
Author = "User01"
CompanyName = "Fabrikam Corporation"
Description = "This role enables users to restart any service and restart any VDI computer."
ModulesToImport = "Microsoft.PowerShell.Core"
VisibleCmdlets = "Restart-Service", @{
Name = "Restart-Computer"
Parameters = @{ Name = "ComputerName"; ValidatePattern = "VDI\d+" }
}
}
New-PSRoleCapabilityFile @roleParameters
Parameter
-AliasDefinitions
Menambahkan alias yang ditentukan ke sesi yang menggunakan file kemampuan peran. 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 default-nya 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"}
Type: | IDictionary[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AssembliesToLoad
Menentukan rakitan yang akan dimuat ke dalam sesi yang menggunakan file kemampuan peran.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Author
Menentukan pengguna yang membuat file kemampuan peran.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompanyName
Mengidentifikasi perusahaan yang membuat file kemampuan peran. Nilai defaultnya adalah Tidak Diketahui.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Copyright
Menentukan hak cipta untuk file kemampuan peran. Jika Anda menghilangkan parameter ini, New-PSRoleCapabilityFile
buat pernyataan hak cipta menggunakan nilai parameter Penulis .
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Menentukan deskripsi untuk file kemampuan peran.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnvironmentVariables
Menentukan variabel lingkungan untuk sesi yang mengekspos file kemampuan peran ini. Masukkan tabel hash di mana kunci adalah nama variabel lingkungan dan nilainya adalah nilai variabel lingkungan.
Misalnya: EnvironmentVariables=@{TestShare="\\\\Server01\TestShare"}
Type: | IDictionary |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatsToProcess
Menentukan file pemformatan (.ps1xml
) yang berjalan dalam sesi yang menggunakan file kemampuan peran.
Nilai parameter ini harus berupa jalur penuh atau absolut dari file pemformatan.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FunctionDefinitions
Menambahkan fungsi yang ditentukan ke sesi yang mengekspos kemampuan peran. 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 default-nya adalah Tidak Ada. Nilai yang dapat diterima untuk parameter ini adalah: tidak ada, ReadOnly, Konstanta, Privat, atau AllScope.
Contohnya:
@{Name="Get-PowerShellProcess";ScriptBlock={Get-Process PowerShell};Options="AllScope"}
Type: | IDictionary[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Guid
Menentukan pengidentifikasi unik untuk file kemampuan peran. Jika Anda menghilangkan parameter ini, New-PSRoleCapabilityFile
menghasilkan GUID untuk file tersebut. Untuk membuat GUID baru di PowerShell, ketik [guid]::NewGuid()
.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModulesToImport
Menentukan modul yang secara otomatis diimpor ke dalam sesi yang menggunakan file kemampuan peran. Secara default, semua perintah dalam modul yang tercantum terlihat. Saat digunakan dengan VisibleCmdlets atau VisibleFunctions, perintah yang terlihat dari modul yang ditentukan dapat dibatasi.
Setiap modul yang digunakan dalam nilai parameter ini dapat diwakili oleh string atau oleh tabel hash. String modul hanya terdiri dari nama modul. Tabel hash modul dapat mencakup kunci ModuleName, ModuleVersion, dan 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"}
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Menentukan jalur dan nama file file kemampuan peran. File harus memiliki .psrc
ekstensi nama file.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptsToProcess
Menentukan skrip untuk ditambahkan ke sesi yang menggunakan file kemampuan peran. Masukkan jalur dan nama file skrip. Nilai parameter ini harus berupa jalur lengkap atau absolut dari nama file skrip.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypesToProcess
Menentukan file jenis (.ps1xml
) untuk ditambahkan ke sesi yang menggunakan file kemampuan peran. Masukkan nama file jenis. Nilai parameter ini harus berupa jalur lengkap atau absolut dari nama file jenis.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VariableDefinitions
Menentukan variabel untuk ditambahkan ke sesi yang menggunakan file kemampuan peran. Masukkan tabel hash dengan kunci berikut:
- Nama. Nama variabel. Kunci ini diperlukan.
- Nilai. Nilai variabel. Kunci ini diperlukan.
Misalnya: @{Name="WarningPreference";Value="SilentlyContinue"}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VisibleAliases
Membatasi alias dalam sesi ke alias 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, untuk membatasi alias yang tersedia ke gm dan gcm, gunakan sintaks ini: VisibleAliases="gcm", "gp"
Ketika parameter Terlihat disertakan dalam file kemampuan peran, PowerShell menghapus Import-Module
cmdlet dan aliasnya ipmo
dari sesi.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-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 ModulesToImport yang mengekspos cmdlet, New-PSRoleCapabilityFile
coba muat modul yang sesuai.
Ketika parameter Terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus Import-Module
cmdlet dan aliasnya ipmo
dari sesi.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleExternalCommands
Membatasi biner eksternal, skrip, dan perintah yang dapat dijalankan dalam sesi dengan yang ditentukan dalam nilai parameter ini.
Secara default, tidak ada perintah eksternal yang terlihat dalam sesi ini.
Ketika parameter Terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus Import-Module
cmdlet dan aliasnya ipmo
dari sesi.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VisibleFunctions
Membatasi fungsi dalam sesi ke yang ditentukan dalam nilai parameter ini, ditambah fungsi apa pun yang Anda tentukan dalam parameter FunctionDefinitions . Karakter kartubebas didukung.
Secara default, semua fungsi yang diekspor oleh modul dalam sesi terlihat dalam sesi tersebut. Gunakan parameter SessionType dan ModulesToImport untuk menentukan modul mana yang diimpor ke dalam sesi.
Ketika parameter Terlihat disertakan dalam file konfigurasi sesi, PowerShell menghapus Import-Module
cmdlet dan aliasnya ipmo
dari sesi.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleProviders
Membatasi penyedia PowerShell dalam sesi dengan yang ditentukan dalam nilai parameter ini. Karakter kartubebas didukung.
Secara default, semua penyedia yang diekspor oleh modul dalam 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 Import-Module
cmdlet dan aliasnya ipmo
dari sesi.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Link Terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk