Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Anda harus menerapkan penyedia Windows PowerShell jika produk atau konfigurasi Anda mengekspos sekumpulan data yang disimpan, seperti database yang ingin dinavigasi atau dijelajahi pengguna. Selain itu, jika produk Anda menyediakan kontainer, meskipun bukan kontainer multitingkat, masuk akal untuk menerapkan penyedia Windows PowerShell. Misalnya, Anda mungkin ingin menerapkan penyedia kontainer Windows PowerShell jika cmdlet kata kerja Salin, Pindahkan, Ganti Nama, Baru, atau Hapus masuk akal sebagai operasi pada data produk atau konfigurasi Anda.
Jalur Windows PowerShell Mengidentifikasi Penyedia Anda
Runtime Windows PowerShell menggunakan jalur Windows PowerShell untuk mengakses penyedia Windows PowerShell yang sesuai. Ketika cmdlet menentukan salah satu jalur ini, runtime mengetahui penyedia mana yang akan digunakan untuk mengakses penyimpanan data terkait. Jalur ini mencakup jalur yang memenuhi syarat drive, jalur yang memenuhi syarat penyedia, jalur langsung penyedia, dan jalur penyedia-internal. Setiap penyedia Windows PowerShell harus mendukung satu atau beberapa jalur ini.
Untuk informasi selengkapnya tentang jalur Windows PowerShell, lihat Cara Kerja Windows PowerShell.
Menentukan Jalur Drive-Qualified
Untuk mengizinkan pengguna mengakses data yang terletak di drive fisik, penyedia Windows PowerShell Anda harus mendukung jalur yang memenuhi syarat drive. Jalur ini dimulai dengan nama drive diikuti dengan titik dua (:), misalnya, mydrive:\abc\bar.
Menentukan Jalur Provider-Qualified
Untuk mengizinkan runtime Windows PowerShell menginisialisasi dan tidak menginisialisasi penyedia, penyedia Windows PowerShell Anda harus mendukung jalur yang memenuhi syarat penyedia. Misalnya, FileSystem::\\uncshare\abc\bar adalah jalur yang memenuhi syarat penyedia untuk penyedia FileSystem yang dilengkapi oleh Windows PowerShell.
Menentukan Jalur Provider-Direct
Untuk mengizinkan akses jarak jauh ke penyedia Windows PowerShell Anda, penyedia harus mendukung jalur langsung penyedia untuk meneruskan langsung ke penyedia Windows PowerShell untuk lokasi saat ini. Misalnya, penyedia Windows PowerShell registri dapat menggunakan \\server\regkeypath sebagai jalur langsung penyedia.
Menentukan Jalur Provider-Internal
Untuk mengizinkan cmdlet penyedia mengakses data menggunakan antarmuka pemrograman aplikasi (API) Non-Windows PowerShell, penyedia Windows PowerShell Anda harus mendukung jalur penyedia-internal. Jalur ini ditunjukkan setelah "::" di jalur yang memenuhi syarat penyedia. Misalnya, jalur penyedia-internal untuk penyedia FileSystem Windows PowerShell adalah \\uncshare\abc\bar.
Mengubah Data Tersimpan
Saat menimpa metode yang memodifikasi penyimpanan data yang mendasar, selalu panggil metode System.Management.Automation.Provider.CmdletProvider.WriteItemObject* dengan versi item yang paling up-to-date yang diubah oleh metode tersebut. Infrastruktur penyedia menentukan apakah objek item perlu diteruskan ke alur, seperti ketika pengguna menentukan parameter -PassThru. Jika mengambil item -tanggal yang paling up-toadalah operasi yang mahal (bijaksana performa,) Anda dapat menguji properti Context.PassThru untuk menentukan apakah Anda benar-benar perlu menulis item yang dihasilkan.
Pilih Kelas Dasar untuk Penyedia Anda
Windows PowerShell menyediakan sejumlah kelas dasar yang dapat Anda gunakan untuk mengimplementasikan penyedia Windows PowerShell Anda sendiri. Saat merancang penyedia, pilih kelas dasar, yang dijelaskan di bagian ini, yang paling sesuai dengan kebutuhan Anda.
Setiap kelas dasar penyedia Windows PowerShell menyediakan satu set cmdlet. Bagian ini menjelaskan cmdlet, tetapi tidak menjelaskan parameternya.
Dengan menggunakan status sesi, runtime Windows PowerShell membuat beberapa cmdlet lokasi tersedia untuk penyedia Windows PowerShell tertentu, seperti cmdlet Get-Location
, Set-Location
, Pop-Location
, dan Push-Location
. Anda dapat menggunakan cmdlet Get-Help
untuk mendapatkan informasi tentang cmdlet lokasi ini.
Kelas Dasar CmdletProvider
Kelas System.Management.Automation.Provider.CmdletProvider menentukan penyedia Windows PowerShell dasar. Kelas ini mendukung deklarasi penyedia dan menyediakan sejumlah properti dan metode yang tersedia untuk semua penyedia Windows PowerShell.
Kelas dipanggil oleh cmdlet Get-PSProvider
untuk mencantumkan semua penyedia yang tersedia untuk sesi.
Implementasi cmdlet ini dilengkapi dengan keadaan sesi.
Nota
Penyedia Windows PowerShell tersedia untuk semua cakupan bahasa Windows PowerShell.
Kelas Dasar DriveCmdletProvider
Kelas System.Management.Automation.Provider.DriveCmdletProvider menentukan penyedia drive Windows PowerShell yang mendukung operasi untuk menambahkan drive baru, menghapus drive yang ada, dan menginisialisasi drive default. Misalnya, penyedia FileSystem yang disediakan oleh Windows PowerShell menginisialisasi drive untuk semua volume yang dipasang, seperti hard drive dan drive perangkat CD/DVD.
Kelas ini berasal dari kelas dasar System.Management.Automation.Provider.CmdletProvider. Tabel berikut mencantumkan cmdlet yang diekspos oleh kelas ini. Selain yang tercantum, cmdlet Get-PSDrive
(diekspos oleh status sesi) adalah cmdlet terkait yang digunakan untuk mengambil drive yang tersedia.
Cmdlet | Definisi |
---|---|
New-PSDrive |
Membuat drive baru untuk sesi, dan mengalirkan informasi drive. |
Remove-PSDrive |
Menghapus drive dari sesi. |
Kelas Dasar ItemCmdletProvider
Kelas System.Management.Automation.Provider.ItemCmdletProvider menentukan penyedia item Windows PowerShell yang melakukan operasi pada item individual penyimpanan data, dan tidak mengasumsikan kemampuan kontainer atau navigasi apa pun. Kelas ini berasal dari System.Management.Automation.Provider.DriveCmdletProvider kelas dasar. Tabel berikut mencantumkan cmdlet yang diekspos oleh kelas ini.
Kelas Dasar ContainerCmdletProvider
Kelas System.Management.Automation.Provider.ContainerCmdletProvider menentukan penyedia kontainer Windows PowerShell yang mengekspos kontainer, untuk item penyimpanan data, kepada pengguna. Ketahuilah bahwa penyedia kontainer Windows PowerShell hanya dapat digunakan ketika ada satu kontainer (tidak ada kontainer berlapis) dengan item di dalamnya. Jika ada kontainer berlapis, maka Anda harus menerapkan penyedia navigasi Windows PowerShell .
Kelas ini berasal dari kelas dasar System.Management.Automation.Provider.ItemCmdletProvider. Tabel berikut menentukan cmdlet yang diterapkan oleh kelas ini.
Cmdlet | Definisi |
---|---|
Copy-Item |
Menyalin item dari satu lokasi ke lokasi lainnya. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Get-ChildItem |
Mengambil item anak di lokasi yang ditentukan, dan mengalirkannya sebagai objek. |
New-Item |
Membuat item baru di lokasi yang ditentukan, dan mengalirkan objek yang dihasilkan. |
Remove-Item |
Menghapus item dari lokasi yang ditentukan. |
Rename-Item |
Mengganti nama item di lokasi yang ditentukan. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Kelas Dasar NavigationCmdletProvider
Kelas System.Management.Automation.Provider.NavigationCmdletProvider menentukan penyedia navigasi Windows PowerShell yang melakukan operasi untuk item yang menggunakan lebih dari satu kontainer. Kelas ini berasal dari System.Management.Automation.Provider.ContainerCmdletProvider kelas dasar. Tabel berikut mencantumkan cmdlet yang diekspos oleh kelas ini.
Cmdlet | Definisi |
---|---|
Combine-Path |
Menggabungkan dua jalur ke dalam satu jalur, menggunakan pemisah khusus penyedia di antara jalur. Cmdlet ini mengalirkan string. |
Move-Item |
Memindahkan item ke lokasi yang ditentukan. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Cmdlet terkait adalah cmdlet Parse-Path dasar yang dilengkapi oleh Windows PowerShell. Cmdlet ini dapat digunakan untuk mengurai jalur Windows PowerShell untuk mendukung parameter Parent
. Ini mengalirkan string jalur induk.
Pilih Antarmuka Penyedia untuk Didukung
Selain berasal dari salah satu kelas dasar Windows PowerShell, penyedia Windows PowerShell Anda dapat mendukung fungsionalitas lain dengan berasal dari satu atau beberapa antarmuka penyedia berikut. Bagian ini mendefinisikan antarmuka tersebut dan cmdlet yang didukung oleh masing-masing. Ini tidak menjelaskan parameter untuk cmdlet yang didukung antarmuka. Informasi parameter cmdlet tersedia secara online menggunakan cmdlet Get-Command
dan Get-Help
.
IContentCmdletProvider
Antarmuka System.Management.Automation.Provider.IContentCmdletProvider menentukan penyedia konten yang melakukan operasi pada konten item data. Tabel berikut mencantumkan cmdlet yang diekspos oleh antarmuka ini.
Cmdlet | Definisi |
---|---|
Add-Content |
Menambahkan panjang nilai yang ditunjukkan ke konten item yang ditentukan. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Clear-Content |
Mengatur konten item yang ditentukan ke nilai "hapus". Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Get-Content |
Mengambil konten item yang ditentukan dan mengalirkan objek yang dihasilkan. |
Set-Content |
Menggantikan isi yang ada untuk item yang ditentukan. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
IPropertyCmdletProvider
Antarmuka System.Management.Automation.Provider.IPropertyCmdletProvider menentukan properti penyedia Windows PowerShell yang melakukan operasi pada properti item di penyimpanan data. Tabel berikut mencantumkan cmdlet yang diekspos oleh antarmuka ini.
Nota
Parameter Path
pada cmdlet ini menunjukkan jalur ke item alih-alih mengidentifikasi properti.
Cmdlet | Definisi |
---|---|
Clear-ItemProperty |
Mengatur properti item yang ditentukan ke nilai "hapus". Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Get-ItemProperty |
Mengambil properti dari item yang ditentukan dan mengalirkan objek yang dihasilkan. |
Set-ItemProperty |
Mengatur properti item yang ditentukan dengan nilai yang ditunjukkan. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
IDynamicPropertyCmdletProvider
Antarmuka System.Management.Automation.Provider.IDynamicPropertyCmdletProvider, berasal dari antarmuka System.Management.Automation.Provider.IPropertyCmdletProvider, menentukan penyedia yang menentukan parameter dinamis untuk cmdlet yang didukung. Jenis penyedia ini menangani operasi yang propertinya dapat ditentukan pada waktu proses, misalnya, operasi properti baru. Operasi tersebut tidak dimungkinkan pada item yang memiliki properti yang ditentukan secara statis. Tabel berikut mencantumkan cmdlet yang diekspos oleh antarmuka ini.
Cmdlet | Definisi |
---|---|
Copy-ItemProperty |
Menyalin properti dari item yang ditentukan ke item lain. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
Move-ItemProperty |
Memindahkan properti dari item yang ditentukan ke item lain. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
New-ItemProperty |
Membuat properti pada item yang ditentukan dan mengalirkan objek yang dihasilkan. |
Remove-ItemProperty |
Menghapus properti untuk item yang ditentukan. |
Rename-ItemProperty |
Mengganti nama properti item yang ditentukan. Cmdlet ini tidak melewati objek output melalui alur kecuali parameter PassThru ditentukan. |
ISecurityDescriptorCmdletProvider
Antarmuka System.Management.Automation.Provider.ISecurityDescriptorCmdletProvider menambahkan fungsionalitas deskriptor keamanan ke penyedia. Antarmuka ini memungkinkan pengguna untuk mendapatkan dan mengatur informasi pendeskripsi keamanan untuk item di penyimpanan data. Tabel berikut mencantumkan cmdlet yang diekspos oleh antarmuka ini.
Cmdlet | Definisi |
---|---|
Get-Acl |
Mengambil informasi yang terkandung dalam daftar kontrol akses (ACL), yang merupakan bagian dari deskriptor keamanan yang digunakan untuk menjaga sumber daya sistem operasi, misalnya, file atau objek. |
Set-Acl |
Mengatur informasi untuk ACL. Ini dalam bentuk instans System.Security.AccessControl.ObjectSecurity pada item yang ditunjuk untuk jalur yang ditentukan. Cmdlet ini dapat mengatur informasi tentang file, kunci, dan subkunci dalam registri, atau item penyedia lainnya, jika penyedia Windows PowerShell mendukung pengaturan informasi keamanan. |