Windows: แสดงรายการไฟล์และการอนุญาต (การเข้าถึง) ในบรรทัดคำสั่ง


55

ใน linux ls -lแสดงรายการการอนุญาตของไฟล์เช่นนี้

-rw-r--r--  1 user user      924 2011-07-01 20:23 test.txt

ใน Windows คำสั่งtreeและdirไม่มีตัวเลือกในการแสดงรายการการอนุญาต เป็นไปได้อย่างไรที่จะแสดงรายการไฟล์และการอนุญาตโดยใช้บรรทัดคำสั่งเท่านั้น


เอ่อบางที%~aXถ้ามันอยู่ในชุด? d----------มันก็เหมือนกับ
КонстантинВан

คำตอบ:


63

ใช้icacls :

> icacls Music
Music SNOW\grawity:(I)(F)
      CREATOR OWNER:(I)(OI)(CI)(IO)(F)
      SNOW\grawity:(I)(OI)(CI)(IO)(F)
      NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F)

เครื่องมือcaclsรุ่นเก่าเป็นตัวเลือกเดียวใน Windows XP [แม้ว่าคุณสามารถคัดลอกicacls.exeจาก Server 2003] caclsไม่ทราบเกี่ยวกับโหมด ACL บางโหมด แต่แสดงส่วนใหญ่ของพวกเขาได้ดี

> cacls Music
F:\Users\Mantas\Music SNOW\grawity:F
                      CREATOR OWNER:(OI)(CI)(IO)F
                      SNOW\grawity:(OI)(CI)(IO)F
                      NT AUTHORITY\SYSTEM:(OI)(CI)F

ในเอาต์พุตทั้งสอง(OI)หมายถึง "object สืบทอด" (ไฟล์จะสืบทอด ACE นี้) (CI)คือ "container สืบทอด" (คอนเทนเนอร์ - เช่นโฟลเดอร์ - จะสืบทอด ACE นี้) (IO)คือ "สืบทอดเท่านั้น"

ไมโครซอฟท์ยังใช้เพื่อให้xcaclsเครื่องมือแยกกัน แต่การทำงานในขณะนี้เป็นส่วนหนึ่งของicacls


28

คุณสามารถใช้ Powershell และGet-Aclคำสั่ง

PS C:\> Get-Acl

   Directory:

Path              Owner                            Access  
----              -----                            ------  
C:\               NT SERVICE\TrustedInstaller      Everyone Allow  FullControl

ใช้ร่วมกับGet-ChildItem(นามแฝงด้วยdirและls) เพื่อรับสิทธิ์สำหรับไฟล์

PS C:\> Get-ChildItem | Get-Acl

หรือใช้นามแฝง:

PS C:\> Dir | Get-Acl

13
PS C:\> Get-Acl | flสำหรับรายการที่ดีกว่า
AWippler

ฉันสามารถแก้ไขสิ่งนี้เพื่อข้ามโฟลเดอร์ที่ฉันไม่มีสิทธิ์เข้าถึงได้หรือไม่? ตัวอย่างเช่นเมื่อฉันเรียกใช้งานนี้ (ไม่ใช่ผู้ดูแลระบบ) ฉันได้รับข้อผิดพลาด ("การดำเนินการที่ไม่ได้รับอนุญาต") และรายงานหยุดลงที่โฟลเดอร์ฉันไม่สามารถเข้าถึงได้
Ben

14

คุณอาจลองดูที่AccessChkจาก Sysinternals สามารถแยกวิเคราะห์ผลลัพธ์ได้ง่ายขึ้นมาก

C:\Users\jeremy>accesschk myad\simmonsj c:\inetpub

Accesschk v5.11 - Reports effective permissions for securable objects
Copyright (C) 2006-2012 Mark Russinovich
Sysinternals - www.sysinternals.com

RW c:\inetpub\custerr
RW c:\inetpub\history
RW c:\inetpub\logs
RW c:\inetpub\Roadkill
RW c:\inetpub\smartadmin
RW c:\inetpub\temp
RW c:\inetpub\wwwroot

มันทำสิ่งที่แตกต่างกัน มันแสดงรายการการเข้าถึงที่มีประสิทธิภาพสำหรับผู้ใช้ (หรือที่ระบุ) ปัจจุบันแทนที่จะเป็นรายการเข้าถึงที่กำหนดค่าแบบเต็ม
grawity

1
ฉันเชื่อว่าคำถามของ OP สามารถตีความได้ทั้งสองทาง ตัดสินโดยการโหวตของฉันเมื่อเร็ว ๆ นี้นี่เป็นประโยชน์กับคนอื่นอย่างน้อยหนึ่งคนนอกเหนือจากฉัน คำตอบของฉันไม่ได้มีไว้เพื่อโต้เถียงหรือหักล้างคำตอบของคุณ มันเป็นวิธีที่แตกต่างในการเข้าถึงปัญหาเพื่อให้ได้คำตอบที่คล้ายกันมาก
JJS

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.