Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> 電腦軟件教程 >> 關於電腦軟件教程 >> Cmd下修改文件訪問控制權限

Cmd下修改文件訪問控制權限

日期:2017/2/10 13:30:34      編輯:關於電腦軟件教程
如何使用Cmd修改文件訪問控制權限,一起來看看吧!

保證自己的磁盤分區格式是NTFS.FAT32是不行的.
一、Cacls.exe命令的使用
這是一個在Windows 2000/XP/Server 2003操作系統下都可以使用的命令,作用是顯示或者修改
文件的訪問控制表,在命令中可以使用通配符指定多個文件,也可以在命令中指定多個用戶。
命令語法如下:

Cacls filename [/T] [/E] [/C] [/G usererm] [/R user [...]] [/P usererm [...]] [/D user [...]]

Filename:顯示訪問控制列表(以下簡稱ACL)

/T:更改當前目錄及其所有子目錄中指定文件的ACL

/E:編輯ACL而不替換

/C:在出現拒絕訪問錯誤時繼續   

/G Userer:perm:賦予指定用戶訪問權限,Perm代表不同級別的訪問權限,其值可以是R(讀取)、W(寫入)、C(更改,寫入)、F(完全控制)等。

/R user:撤銷指定用戶的訪問權限,注意該參數僅在與“/E”一起使用時有效。

/P user:perm:替換指定用戶的訪問權限,perm的含義同前,但增加了“N(無)”的選項。

/D user:拒絕指定用戶的訪問。



①:查看文件夾的訪問控制權限

查看C:\ruery文件夾的訪問控制權限,那麼只需要在"開始→運行"對話框或切換到命令提示符模式下,鍵入如下命令:
Cacls C:\ruery

此時,我們會看到所有用戶組和用戶對C:\ruery文件夾的訪問控制權限項目.
CI表示ACE會由目錄繼承.
OI表示ACE會由文件繼承.
IO表示ACI不適用於當前文件或目錄.
每行末尾的字母表示控制權限,例如"F"表示完全控制,"C"表示更改,"W"表示寫入."R"表示讀取

如果你希望查看該文件夾中所有文件(包括子文件夾中的文件)的訪問控制權限(見圖1),可以鍵入"Cacls C:\ruery ."命令.



②:修改文件夾的訪問控制權限

假如你希望給予本地用戶ruery完全控制C:\ruery文件夾及子文件夾中所有文件的訪問權限,只需要鍵入如下命令:
Cacls C:\ruery /t /e /c /g ruery:F
"/t"表示修改文件夾及子文件夾中所有文件的ACL.
"/e"表示僅做編輯工作而不替換.
"/c"表示在出現拒絕訪問錯誤時繼續.
"/g ruery:F"表示給予本地用戶ruery以完全控制的權限.
"f"代表完全控制,如果只是希望給予讀取權限,那麼應當是"r"



③:撤銷用戶的訪問控制權限

如果你希望撤銷ruery用戶對C:\ruery文件夾及其子文件夾的訪問控制權限,可以鍵入如下命令:
cacls C:\ruery /t /e /c /r ruery

如果只是拒絕用戶的訪問,那麼可以鍵入如下命令:
cacls C:\ruery /t /e /c /d ruery



cacls.exe c:\windows\system32\net.exe /c /e /t /g administrators:F
cacls.exe c:\windows\system32\dllcache\net.exe /c /e /t /g administrators:F

cacls.exe c:\windows\system32\net.exe /c /e /t /g everyone:F
cacls.exe c:\windows\system32\dllcache\net.exe /c /e /t /g everyone:F

cacls.exe c:\windows\system32\net.exe /c /e /t /g system:F
cacls.exe c:\windows\system32\dllcache\net.exe /c /e /t /g system:F

cacls.exe c:\windows\system32\net.exe /c /e /t /g administrator:F
cacls.exe c:\windows\system32\dllcache\net.exe /c /e /t /g administrator:F


cacls.exe c: /e /t /g everyone:F    #把d盤設置為everyone可以浏覽
cacls.exe d: /e /t /g everyone:F    #把d盤設置為everyone可以浏覽
cacls.exe e: /e /t /g everyone:F     #把e盤設置為everyone可以浏覽
cacls.exe f: /e /t /g everyone:F     #把f盤設置為everyone可以浏覽



二、使用增強工具xcals.exe

在windows 2000資源工具包中,微軟還提供了一個名為xcacls.exe的文件控制權限修改工具,其功能較cacls.exe更為強大,可以通過命令行設置所有可以在windows資源管理器中訪問到的文件系統安全選項,我們可以從[url]http: //www.microsoft.com/windows2000/techinfo/reskit/tools/existing/xcacls-o.asp [/url]下載,安裝後即可使用。

xcacls.exe命令的語法和參數與cacls.exe基本相同,但不同的是它通過顯示和修改件的訪問控制列表(acl)執行此操作。在“/g”參數後除保持原有的perm權限外,還增加了spec(特殊訪問權限)的選項,另外還增加了“/y”的參數,表示禁止在替換用戶訪問權限時出現確認提示,而默認情況下,cacls.exe是要求確認的,這樣在批處理中調用cacls.exe命令時,程序將停止響應並等待輸入正確的答案,引入“/y”參數後將可以取消此確認,這樣我們就可以在批處理中使用xcacls.exe命令了。

①:查看文件或文件夾的權限

在“開始→運行”對話框或切換到命令提示符模式下,注意請事先將“c:\program files\resource kit”添加到“系統屬性→高級→環境變量→系統變量”中,或者通過cd命令將其設置為當前路徑,否則會提示找不到文件,然後鍵入如下命令:

xcacls C:\ruery


此時,我們會看到圖2所示的窗口,這裡可以查看到所有用戶組或用戶對C:\ruery文件夾的訪問控制權限,io表示此ace不應用於當前對象,ci表示從屬窗口將繼承此ace,oi表示從屬文件將繼承該ace,np表示從屬對象不繼續傳播繼承的ace,而每行末尾的字母表示不同級別的權限,
f表示完全控制.
c表示更改.
w表示寫入.


②:替換文件夾中的acl而不確認
xcacls C:\ruery /g administrator:rw/y
以上命令將替換C:\ruery文件夾中所有文件和文件夾的acl,而不掃描子文件夾,也不會要求用戶確認.


③:賦予某用戶對文件夾的控制權限
xcacls h:\temp /g administrator:rwed;rw /e

以上命令將賦予用戶ruery對C:\ruery文件夾中所有新建文件的讀取、寫入、運行和刪除權限,但需要說明的是,這條命令只是賦予了用戶對文件夾本身的讀寫權限,而不包括子文件夾下的文件。

對普通用戶來說,cals.exe和xcacls.exe的作用可能不是那麼明顯,這在windows 2000/xp/server 2003的無人值守安裝中特別有用,管理員可以為操作系統所在的文件夾設置初始訪問權限;在將軟件分發到服務器或工作站時,還可以借助 xcacls.exe提供單步保護,以防止用戶誤刪除文件夾或文件。

Copyright © Windows教程網 All Rights Reserved