cacls

cacls

cacls,計算機編程函式,可顯示或修改任意訪問控制列表 (ACL) 檔案。

概念

cacls cacls

顯示或修改任意訪問控制列表 (ACL) 檔案。

語法

cacls FileName [/t] [/e] [/c] [/g User:permission] [/r User [...]] [/p User:permission [...]] [/d User [...]]

參數

FileName

必需。顯示指定檔案的 ACL。

/t

更改當前目錄和所有子目錄中指定檔案的 ACL。

/e

編輯 ACL,而不是替換它。

/c

忽略錯誤,繼續修改 ACL。

/g User:permission

將訪問許可權授予指定用戶。下表列出了 permission 的有效值。 值 說明

n 無

r 閱讀順序

w 寫入

c 更改(寫入)

F 完全控制

/r user

取消指定用戶的訪問許可權。

/p User:permission

替代指定用戶的訪問許可權。下表列出了 permission 的有效值。 值 說明

n 無

r 閱讀順序

w 寫入

c 更改(寫入)

F 完全控制

/d user

拒絕指定用戶的訪問。

/?

在命令提示符顯示幫助。

注釋

使用下表解釋輸出結果。 輸出 ACE 的適用於

OI 此資料夾和檔案

CI 此資料夾和子資料夾

IO ACE 不適用於當前檔案/目錄。

沒有輸出訊息 僅此資料夾

(IO)(CI) 此資料夾、子資料夾和檔案

(OI)(CI)(IO) 僅子資料夾和檔案

(CI)(IO) 僅子資料夾

(OI)(IO) 僅檔案

使用通配符(? 和 *)可以指定多個檔案。

可以指定多個用戶。

例如:cacls d:\game /p everyone:n

cacls c:\windows\system32\cmd.exe /e /d guests //禁止guests組用戶使用cmd.exe

cacls c:\windows\system32\cmd.exe /e /r users //解禁。

允許guests組用戶使用cmd.exe /d user /e /r user 拒絕指定用戶的訪問。

編輯 ACL,而不是替換它。取消指定用戶的訪問許可權。

cacls c:\test /p administrator :N 拒絕 administrator 用戶(超及管理用戶)訪問C糟下的test資料夾

cacls c:\test /p administrator:F 恢復 administrator用戶對其的訪問

值得注意的是,在使用cacls命令對某一盤符設定了對administrator拒絕訪問後,如

cacls c:\ /p administrator:N

再使用 cacls c: /p administrator:F 命令恢復許可權已經不可行了,這時可以用後面的一個方法進行解決,恢復其操作權.

ICACLS name /save aclfile [/T] [/C] [/L] [/Q]

將匹配名稱的檔案和資料夾的 DACL 存儲到 aclfile 中以便將來與 /restore 一起使用。請注意,未保存 SACL、所有者或完整性標籤。

ICACLS directory [/substitute SidOld SidNew [...]] /restore aclfile

[/C] [/L] [/Q] 將存儲的 DACL 套用於目錄中的檔案。

ICACLS name /setowner user [/T] [/C] [/L] [/Q] 更改所有匹配名稱的所有者。該選項不會強制更改所有身份; 使用 takeown.exe 實用程式可實現該目的。

ICACLS name /findsid Sid [/T] [/C] [/L] [/Q] 查找包含顯式提及 SID 的 ACL 的所有匹配名稱。 ICACLS name /verify [/T] [/C] [/L] [/Q] 查找其 ACL 不規範或長度與 ACE 計數不一致的所有檔案。

ICACLS name /reset [/T] [/C] [/L] [/Q] 為所有匹配檔案使用默認繼承的 ACL 替換 ACL。

ICACLS name [/grant[:r] Sid:perm[...]]

[/deny Sid:perm [...]]

[/remove[:g|:d]] Sid[...]] [/T] [/C] [/L]

[/setintegritylevel Level:policy[...]]

/grant[:r] Sid:perm 授予指定的用戶訪問許可權。如果使用 :r,

這些許可權將替換以前授予的所有顯式許可權。

如果不使用 :r,這些許可權將添加到以前授予的所有顯式許可權。

/deny Sid:perm 顯式拒絕指定的用戶訪問許可權。

將為列出的許可權添加顯式拒絕 ACE,

並刪除所有顯式授予的許可權中的相同許可權。

/remove[:[g|d]] Sid 刪除 ACL 中所有出現的 SID。使用

:g,將刪除授予該 SID 的所有許可權。使用

:d,將刪除拒絕該 SID 的所有許可權。

/setintegritylevel [(CI)(OI)] 級別將完整性 ACE 顯式添加到所有匹配檔案。

要指定的級別為以下級別之一:

L[ow]

M[edium]

H[igh]

完整性 ACE 的繼承選項可以優先於級別,但只套用於目錄。

/inheritance:e|d|r

e - 啟用繼承

d - 禁用繼承並複製 ACE

r - 刪除所有繼承的 ACE

注意:

Sid 可以採用數字格式或友好的名稱格式。如果給定數字格式,那么請在 SID 的開頭添加一個 *。

/T 指示在以該名稱指定的目錄下的所有匹配檔案/目錄上執行此操作。

/C 指示此操作將在所有檔案錯誤上繼續進行。仍將顯示錯誤訊息。

/L 指示此操作在符號連結本身而不是其目標上執行。

/Q 指示 icacls 應該禁止顯示成功訊息。

ICACLS 保留 ACE 項的規範順序:

顯式拒絕

顯式授予

繼承的拒絕

繼承的授予

perm 是許可權掩碼,可以兩種格式之一指定:

簡單許可權序列: N - 無訪問許可權 F - 完全訪問許可權 M - 修改許可權 RX - 讀取和執行許可權 R - 唯讀許可權 W - 只寫許可權 D - 刪除許可權

在括弧中以逗號分隔的特定許可權列表:

DE - 刪除 RC - 讀取控制 WDAC - 寫入 DAC

WO - 寫入所有者 S - 同步 AS - 訪問系統安全性 MA - 允許的最大值 GR - 一般性讀取 GW - 一般性寫入 GE - 一般性執行 GA - 全為一般性 RD - 讀取數據/列出目錄 WD - 寫入數據/添加檔案 AD - 附加數據/添加子目錄

REA - 讀取擴展屬性 WEA - 寫入擴展屬性 X - 執行/遍歷 DC - 刪除子項 RA - 讀取屬性 WA - 寫入屬性

繼承許可權可以優先於每種格式,但只套用於目錄:

(OI) - 對象繼承 (CI) - 容器繼承 (IO) - 僅繼承 (NP) - 不傳播繼承 (I) - 從父容器繼承的許可權

示例:

icacls c:\windows\* /save AclFile /T

- 將 c:\windows 及其子目錄下所有檔案的ACL 保存到 AclFile。

icacls c:\windows\ /restore AclFile

- 將還原 c:\windows 及其子目錄下存在的 AclFile 內所有檔案的 ACL。

icacls file /grant Administrator:(D,WDAC)

- 將授予用戶對檔案刪除和寫入 DAC 的管理員許可權。

icacls file /grant *S-1-1-0:(D,WDAC)

- 將授予由 sid S-1-1-0 定義的用戶對檔案刪除和寫入 DAC 的許可權。

關於C糟整個盤符被鎖定的解決辦法

當使用這個命令 cacls c:\ /p administrator:N 後,你將失去對系統C糟控制權.這時,一般的方法

cacls c: /p administrator:F 命令恢復許可權已經不可行了,可以用下面的一個方法嘗試:

1、首先打開Windows中的任何一個視窗,執行“工具”選單下的“資料夾選項”命令,選擇“查看”標籤,將“使用簡單檔案共享(推薦)”複選框前的(√)清除掉,單擊“確定”或“套用”;

2、用滑鼠右鍵單擊已設定了拒絕訪問的資料夾或驅動器,執行右鍵選單中的“屬性”命令,選擇“安全”標籤,單擊“高級”按鈕,選擇“審核”標籤,(win7 或 vista用戶中有許可權時,點“繼續”)

單擊“添加”按鈕,單擊“高級”按鈕,單擊“立即查找”——選擇“Administrator”計算機管理員用戶,單擊“確定”,再單擊“確定”;設定該用戶下的訪問許可權完全控制,再“確定”。過程中彈出 更改許可權視窗 時,點是,出錯再點取消,

3、重複以上操作步驟,選擇用戶為:everyone,設定其訪問許可權完全控制.並套用即可取消驅動器或資料夾的拒絕訪問了

4、如果在做完後,再查看許可權,變為全為拒絕時,再重複2,3就可以了

使用WinPE系統取回完全控制許可權

拒絕訪問控制編輯器 拒絕訪問控制編輯器

如果出現對於按照 關於C糟整個盤符被鎖定的解決辦法”操作還是不行的情況,即在第二步點擊“繼續”之後,彈出的對話框是“ 無法打開訪問控制編輯器。拒絕訪問。”如圖,

則可以嘗試重啟電腦,並運行winPE系統(能夠安裝win7系統所使用的winPE),進入系統之後,在C糟上右鍵,選擇屬性——>安全——>組或用戶名中選中Administrators——>編輯——>高級——>更改許可權——>選擇Administrators——>編輯——>選中“完全控制”複選框,確定之後,重啟電腦即可擁有對C糟的完全控制許可權,當然,前提是以Administrator的身份登錄。

相關詞條

相關搜尋

熱門詞條

聯絡我們