标题: 关于cacls命令详细用法(大家可否关注一下吖)
[打印本页]
作者: dosmania
时间: 2007-9-20 04:46
标题: 关于cacls命令详细用法(大家可否关注一下吖)
本次贴子主要请教cacls 用法。
CACLS filename [/T] [/E] [/C] [/G user:perm] [/R user [...]]
[/P user:perm [...]] [/D user [...]]
filename 显示 ACL。
/T 更改当前目录及其所有子目录中
指定文件的 ACL。
/E 编辑 ACL 而不替换。
/C 在出现拒绝访问错误时继续。
/G user:perm 赋予指定用户访问权限。
Perm 可以是: R 读取
W 写入
C 更改(写入)
F 完全控制
/R user 撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。
/P user:perm 替换指定用户的访问权限。
Perm 可以是: N 无
R 读取
W 写入
C 更改(写入)
F 完全控制
/D user 拒绝指定用户的访问。
在命令中可以使用通配符指定多个文件。
也可以在命令中指定多个用户。
缩写:
CI - 容器继承。
ACE 会由目录继承。
OI - 对象继承。
ACE 会由文件继承。
IO - 只继承。
ACE 不适用于当前文件/目录。
赋予、撤消、替换、拒绝 这四个的含义及区别令我头疼几天,望达人指点,快疯掉了我。
1. 赋予:
cacls test.txt /c /g everyone:f
这个自然没有疑问
cacls test.txt /c /g everyone:c
cacls test.txt /c /g everyone:w
这两个有什么区别,请指教!
cacls test.txt /c /g everyone:r
cacls test.txt /c /g everyone:w
在执行以上两条命令中的任意一条命令后,test 是否还可以被是删除?
2.撤消 。。。。。。。
3.替换 。。。。。。。
4.拒绝 。。。。。。。
1、2、3、4 的用法以及区别联系等我都不清楚。请详细举例解释啊,感谢啊!
我觉得是该命令缺少一些特殊权限
比如我现在要 设置everyone 对 test.txt 文件拥有权限是: 只读并且不能删除test.txt
是否能用cacls做到?
举例为证才是王道,多谢合作!
[
Last edited by dosmania on 2007-9-21 at 02:37 PM ]
作者: HAT
时间: 2007-9-20 05:01
//比如我现在要 设置everyone 对 test.txt 文件拥有权限是: 只读并且不能删除test.txt
cacls test.txt /g everyone:r /e
作者: dosmania
时间: 2007-9-20 05:15
这样是不行的,我绝对能删掉test.txt
我就知道很多人想当然以为这能行得通!
执行 cacls test.txt /g everyone:r /e 之后查询test.txt 的访问权限情况如下:
D:\test.txt BUILTIN\Administrators:F
NT AUTHORITY\SYSTEM:F
KIMHOO-117AB90\kimhoo:F
BUILTIN\Users:R
Everyone:R
我查阅了微软操作系统中的常见安全标识符技术信息,引用一部分:
http://support.microsoft.com/default.aspx?scid=kb;zh-cn;Q243330
SID:S-1-1-0
名称:Everyone
说明:包括所有用户(甚至匿名用户和来宾)的组。成员身份由操作系统控制。
默认情况下,在运行 Windows XP Service Pack 2 (SP2) 的计算机上,Everyone 组不再包括匿名用户。
那么按照上面所说的,Administrators 也是属于 Everyone 的,kimhoo 是我的用户名,也是属于Administrators 组的,那么必然也属于Everyone的。
为什么执行 cacls test.txt /g everyone:r /e 之后情况如下:
D:\test.txt BUILTIN\Administrators:F
NT AUTHORITY\SYSTEM:F
KIMHOO-117AB90\kimhoo:F
显然,我(kimhoo) 还是能够删掉 test.txt 的
[
Last edited by dosmania on 2007-9-20 at 05:28 AM ]
作者: HAT
时间: 2007-9-20 06:02
试试这个
cacls test.txt /d everyone /e
作者: HAT
时间: 2007-9-20 06:03
如果还是不行的话,就把/e参数去掉。
cacls test.txt /d everyone
作者: dosmania
时间: 2007-9-20 13:12
TO HAT:
呵呵,你真幽默吖``我说了只读,不让删
你却给我拒绝访问,想要拒绝访问还不简单么
代码你都不测试就贴上来
作者: HAT
时间: 2007-9-20 21:17
汗水
这周一直值夜班
脑袋晕晕的
见谅呵呵
作者: rubik
时间: 2007-9-20 23:53
NTFS权限是挺奇怪的。我这个例子有人帮我试一下吗:
在桌面上新建一个文件 新建文件夹
右键看它的 属性-》安全
里面全是继承的权限,如administrator,system,creator,everyone等
再点 高级 ,将“允许父项的继承权限”复选框清除,
提示复制或删除时,按提示选择“删除”
这是 权限项目里为空
再点确定,提示是“您拒绝了所有用户访问 新建文件夹,没有人
能访问 新建文件夹,继续吗?”
选 是 继续,并确定。
再双击 新建文件夹,已经无权访问了。
怪事在后头:
再右键点这个 新建文件夹 看 属性-》安全,
是空的,然后加上 administrator 的只读权限
从权限项目中可以看到只有一项,
就是
允许 administrator 读取和运行 不是继承的 应用于该文件夹 子文件夹及文件
确定 之后,再双击 新建文件夹,又可以访问了。
怪事来了,
现在只有administrator可以访问 新建文件夹,且只读,
但我试了一下,对这个 新建文件夹 进行改名或删除操作均可以成功进行。
-------------
上面说得很啰嗦,其实就是描述一下了操作。
主要就是想知道,
为什么只有 只读 权限的 administrator 可以行使改名或删除等功能呢
怎么也没想通。
作者: dosmania
时间: 2007-9-21 01:36
8楼和我有相同的疑惑
作者: rubik
时间: 2007-9-21 09:56
在上面那个 新建文件夹 的属性里可以看到,
虽然 administrator 只有 只读 的权限,但 查看 “有效权限”(属性-安全-高级-有效权限)时,
发现 administrator 的权限 比 只读 多出了一个 更改 权限。
---
但是,如果我在 安全属性里 把 新建文件夹的“所有者”指派给另外一个用户,
则 “有效权限”里列出的 administrator 也只有 只读 权限,
但是,依然能对 新建文件夹 进行改名或删除操作。
--
究竟超级用户 administrator 为什么有这个删除的特权呢?
而且删除权限也不是一直都有的,
如果administrator有 只读 权限,它就有了改名或删除的权限,
如果administrator连 只读 权限都没有,它就没有了改名或删除的权限
真的是怪事,只要能读就能删。
--
当然这对其他用户是不成立的
即使也是一个 administrators用户组的成员也不行,
只读就是只读,不会说 只读==只读+改名+删除
作者: dosmania
时间: 2007-9-21 14:36
建议楼上补一下访问控制概念以及其他一些相关的知识:
http://www.microsoft.com/technet ... e2dc7.mspx?mfr=true
作者: rubik
时间: 2007-9-21 15:12
完全不相干的东西