Get-Acl
Mendapatkan pendeskripsi keamanan untuk sumber daya, seperti file atau kunci registri.
Sintaks
Get-Acl
[[-Path] <String[]>]
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Acl
-InputObject <PSObject>
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Get-Acl
[-LiteralPath <String[]>]
[-Audit]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[<CommonParameters>]
Deskripsi
Cmdlet ini hanya tersedia di platform Windows.
Get-Acl
Cmdlet mendapatkan objek yang mewakili pendeskripsi keamanan file atau sumber daya. Deskriptor keamanan berisi daftar kontrol akses (ACL) sumber daya. ACL menentukan izin yang harus diakses pengguna dan grup pengguna.
Dimulai di Windows PowerShell 3.0, Anda dapat menggunakan parameter Get-Acl
InputObject untuk mendapatkan deskriptor keamanan objek yang tidak memiliki jalur.
Contoh
Contoh 1- Dapatkan ACL untuk folder
Contoh ini mendapatkan deskriptor C:\Windows
keamanan direktori.
Get-Acl C:\Windows
Contoh 2 - Mendapatkan ACL untuk folder menggunakan kartubebas
Contoh ini mendapatkan jalur PowerShell dan SDDL untuk semua .log
file di C:\Windows
direktori yang namanya dimulai dengan s
.
Get-Acl C:\Windows\s*.log | Format-List -Property PSPath, Sddl
Perintah menggunakan Get-Acl
cmdlet untuk mendapatkan objek yang mewakili deskriptor keamanan setiap file log. Ini menggunakan operator alur (|
) untuk mengirim hasil ke Format-List
cmdlet. Perintah menggunakan parameter Format-List
Properti untuk hanya menampilkan properti PsPath dan SDDL dari setiap objek deskriptor keamanan.
Daftar sering digunakan di PowerShell, karena nilai panjang muncul terpotong dalam tabel.
Nilai SDDL berharga bagi administrator sistem, karena merupakan string teks sederhana yang berisi semua informasi dalam deskriptor keamanan. Dengan demikian, mereka mudah diteruskan dan disimpan, dan mereka dapat diurai ketika diperlukan.
Contoh 3 - Dapatkan jumlah entri Audit untuk ACL
Contoh ini mendapatkan deskriptor .log
keamanan file di C:\Windows
direktori yang namanya dimulai dengan s
.
Get-Acl C:\Windows\s*.log -Audit | ForEach-Object { $_.Audit.Count }
Ini menggunakan parameter Audit untuk mendapatkan catatan audit dari SACL di deskriptor keamanan.
Kemudian menggunakan ForEach-Object
cmdlet untuk menghitung jumlah rekaman audit yang terkait dengan setiap file. Hasilnya adalah daftar angka yang menunjukkan jumlah catatan audit untuk setiap file log.
Contoh 4 - Dapatkan ACL untuk kunci registri
Contoh ini menggunakan Get-Acl
cmdlet untuk mendapatkan deskriptor keamanan subkuntang Kontrol (HKLM:\SYSTEM\CurrentControlSet\Control
) registri.
Get-Acl -Path HKLM:\System\CurrentControlSet\Control | Format-List
Parameter Jalur menentukan subkunjuk Kontrol. Operator alur (|
) meneruskan deskriptor keamanan yang Get-Acl
masuk ke Format-List
perintah, yang memformat properti deskriptor keamanan sebagai daftar sehingga mudah dibaca.
Contoh 5 - Dapatkan ACL menggunakan **InputObject**
Contoh ini menggunakan parameter Get-Acl
InputObject untuk mendapatkan deskriptor keamanan objek subsistem penyimpanan.
Get-Acl -InputObject (Get-StorageSubSystem -Name S087)
Parameter
-Audit
Mendapatkan data audit untuk pendeskripsi keamanan dari daftar kontrol akses sistem (SACL).
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Exclude
Menghilangkan item yang ditentukan. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti *.txt
. Kartubebas diizinkan.
Jenis: | String[] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
-Filter
Menentukan filter dalam format atau bahasa penyedia. Nilai parameter ini memenuhi syarat parameter Path . Sintaks filter, termasuk penggunaan wildcard, tergantung pada penyedia. Filter lebih efisien daripada parameter lain, karena penyedia menerapkannya saat mendapatkan objek, daripada meminta PowerShell memfilter objek setelah diambil.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
-Include
Hanya mendapatkan item yang ditentukan. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti *.txt
. Kartubebas diizinkan.
Jenis: | String[] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | True |
-InputObject
Mendapatkan deskriptor keamanan untuk objek yang ditentukan. Masukkan variabel yang berisi objek atau perintah yang mendapatkan objek.
Anda tidak dapat menyalurkan objek, selain jalur, ke Get-Acl
. Sebagai gantinya , gunakan parameter InputObject secara eksplisit dalam perintah .
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | PSObject |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-LiteralPath
Menentukan jalur ke sumber daya. Tidak seperti Path, nilai parameter LiteralPath digunakan persis seperti yang ditik. Tidak ada karakter yang ditafsirkan sebagai kartubebas. Jika jalur menyertakan karakter escape, sertakan dalam tanda kutip tunggal. Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | String[] |
Alias: | PSPath |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Path
Menentukan jalur ke sumber daya. Get-Acl
mendapatkan pendeskripsi keamanan sumber daya yang ditunjukkan oleh jalur. Kartubebas diizinkan. Jika Anda menghilangkan parameter Jalur , Get-Acl
mendapatkan deskriptor keamanan direktori saat ini.
Nama parameter ("Jalur") bersifat opsional.
Jenis: | String[] |
Position: | 1 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | True |
Input
Anda dapat menyalurkan string yang berisi jalur ke cmdlet ini.
Output
Cmdlet ini mengembalikan objek yang mewakili ACL yang didapatkannya. Jenis objek tergantung pada jenis ACL.
Catatan
Cmdlet ini hanya tersedia di platform Windows.
Secara default, Get-Acl
menampilkan jalur PowerShell ke sumber daya (<provider>::<resource-path>
), pemilik sumber daya, dan "Access", daftar (array) entri kontrol akses dalam daftar kontrol akses diskresi (DACL) untuk sumber daya. Daftar DACL dikendalikan oleh pemilik sumber daya.
Saat Anda memformat hasilnya sebagai daftar, (Get-Acl | Format-List
), selain jalur, pemilik, dan daftar akses, PowerShell menampilkan properti dan nilai properti berikut:
- Grup: Grup keamanan pemilik.
- Audit: Daftar (array) entri dalam daftar kontrol akses sistem (SACL). SACL menentukan jenis upaya akses di mana Windows menghasilkan catatan audit.
- Sddl: Deskriptor keamanan sumber daya yang ditampilkan dalam string teks tunggal dalam format Bahasa Definisi Deskriptor Keamanan. PowerShell menggunakan metode Deskriptor keamanan GetSddlForm untuk mendapatkan data ini.
Karena Get-Acl
didukung oleh sistem file dan penyedia registri, Anda dapat menggunakan Get-Acl
untuk melihat ACL objek sistem file, seperti file dan direktori, dan objek registri, seperti kunci dan entri registri.