NTFS 檔案系統的 ACL(存取控制清單)通常透過 GUI「安全性」索引標籤設定,但命令列工具 Cacls.exe 同樣強大,適合批次作業、腳本自動化或遠端管理場景。
Cacls filename [/T] [/E] [/C] [/G user:perm] [/R user [...]] [/P user:perm [...]] [/D user [...]]
| 參數 | 說明 |
|---|---|
/T | 遞迴處理目前目錄及所有子目錄下的指定檔案 |
/E | 編輯 ACL 而非取代(保留現有項目) |
/C | 發生「拒絕存取」錯誤時繼續處理 |
/G user:perm | 授與指定使用者權限:R(讀取)、W(寫入)、C(變更)、F(完全控制) |
/R user | 撤銷指定使用者權限(需搭配 /E) |
/P user:perm | 取代指定使用者權限 |
/D user | 拒絕指定使用者存取 |
Cacls CCE
列出 E:\CCE 目錄的所有使用者/群組權限項目。
Cacls D:\Data /T /E /G "DOMAIN\Developers":F
保留現有 ACL,遞迴授予開發人員群組完全控制權。
Cacls D:\Data /E /R "Guest"
從 ACL 中移除 Guest 帳號的所有權限項目。
Cacls D:\Secrets /E /D "Everyone"
設定明確拒絕,覆蓋任何允許規則。
for 迴圈批次處理多個目錄:for /d %i in (D:\Projects\*) do Cacls "%i" /T /E /G "DOMAIN\Team":CCacls D:\Data /T > C:\Logs\ACL_Backup_%date%.txt/save//restore)、完整性層級控制等。掌握 Cacls 指令,讓 NTFS 權限管理不再侷限於滑鼠點擊,提升自動化與標準化能力。