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).

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Exclude

Menghilangkan item yang ditentukan. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti *.txt. Kartubebas diizinkan.

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Include

Hanya mendapatkan item yang ditentukan. Nilai parameter ini memenuhi syarat parameter Path . Masukkan elemen atau pola jalur, seperti *.txt. Kartubebas diizinkan.

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

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

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

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

Input

String

Anda dapat menyalurkan string yang berisi jalur ke cmdlet ini.

Output

FileSecurity

DirectorySecurity

RegistrySecurity

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.