ntfs文件系统的权限设定

   公司最近要过 [ISO 27001 信息安全管理体系],项目文件服务器的每个目录都要设权限,本来以为不是什么大不了的事情,没有通知组员直接开始操作。噩梦开始了,不知道什么原因,设完以后发现大概有1/3的文件没有任何权限,连administrator都没有权限。还要快到下班时间了,没有太大的影响组员的工作。

  调查以后发现大部分丢失权限的文件都是后copy到服务器上的,文件的所有者都不是administrator。可能是文件所有者的访问权限丢失后,导致文件的所有用户的权限都丢失了。原因查清了,就开始找办法。

  1、删除所有文件,重新从服务器上拉新的。影响太大,好多人的最新式样还没有提交,真搞以下估计好多人都要翻脸。算了。

  2、画面操作添加权限。太痛苦了,打开右键菜单要10分钟,再打开属性又要10分钟。但是还是找到了方法,在文件的所有者中添加另一个管理员用户,用这个用户再给文件添加权限。痛苦的是需要一层一层的添加,速度奇慢。

  3、最好只有找命令行了。发现两个有用的一个takeown,将当前用户设定为文件的所有者,另一个XCACLS.vbs,可以设定文件的权限。可是发现XCACLS.vbs无法添加administrators的权限。最后只能谁定一个用户的权限后,再使用ntfs文件系统的继承功能,将所有权限恢复。操作流程如下:

    1)takeown /r /f dir

          设定目录dir的所有者为当前用户(包括子目录)

    2)cscript xcacls dir /t /e /g administrators.f

          设定目录dir中所有文件的权限中添加,admi的完全控制权限

    3)再文件目录属性中设定所有子目录继承父目录的权限

 

 

 

完美解决!下面列出两个命令的说明。

TAKEOWN [/S system [/U username [/P [password]]]] /F filename [/A] [/R [/D prompt]]
描述:
    该工具以重新分配文件所有权的方式允许管理员重新获取先前被拒绝访问的文件访问权。
参数列表:
    /S system          指定要连接到的远程系统。
    /U [domain/]user   指定用户上下文,命令在此上下文中执行。
    /P [password]      指定给定用户上下文的密码。如果省略,提示输入。
    /F filename        指定文件名或目录名模式。可以用通配符 "*"指定模式。允许共享名/文件名。
    /A                 将所有权给于管理员组,而不是当前用户。
    /R                 递归: 指示工具运行于指定的目录和子目录里的文件上。
    /D prompt          当前用户在一个目录里没有“列出文件夹”权限时,使用默认答案。当在子目录里进行递归 (/R) 操作时会发生这种情况。用有效值 "Y" 获取所有权或用 "N" 跳过。显示此帮助消息。
    注意: 1) 如果指定了 /A,文件所有权会给与当前登录的用户。
          2) 不支持用 "?" 和 "*" 混合的模式。
          3) /D 用于抑制确认提示。

 

XCacls.vbs 语法
xcacls 文件名 [/T] [/E] [/C] [/G user:perm;spec] [/R 用户] [/P user:perm;spec [...]] [/D 用户 [...]] [/Y]
其中文件名表示 ACL 或访问控制项 (ACE) 通常应用于的文件或文件夹的名称。所有标准通配符均可使用。
/T 递归检查当前文件夹及其所有子文件夹,对匹配的文件或文件夹应用所选的访问权限。
/E 编辑 ACL 而不替换它。例如,如果您运行 XCACLS test.dat /G Administrator:F 命令,则只有管理员拥有对 Test.dat 文件的访问权限。之前应用的所有 ACE 都会丢失。
/C 使 XCacls.vbs 在出现“拒绝访问”错误信息时继续执行。如果未指定 /C,则 XCacls.vbs 在出现此错误时停止执行。
/G user:perm;spec 授予用户对匹配文件或文件夹的访问权限。
• perm(权限)变量对文件应用指定的访问权限,并代表文件夹的特殊文件访问权限掩码。perm 变量接受下列值:
      • R 读取
      • C 更改(写入)
      • F 完全控制
      • P 更改权限(特殊访问权限)
      • O 取得所有权(特殊访问权限)
      • X 执行(特殊访问权限)
      • E 读取(特殊访问权限)
      • W 写入(特殊访问权限)
      • D 删除(特殊访问权限)
• spec(特殊访问权限)变量仅应用于文件夹,它除了接受与 perm 相同的值以外,还接受以下特殊值:
      • T 未指定。为目录本身设置 ACE,而不指定应用于在该目录中创建的新文件的 ACE。至少存在一个要遵循的访问权限。分号 (;) 和 T 之间的项将被忽略。注意:
          • 文件的访问权限选项(针对文件夹、特殊文件和文件夹访问)是完全相同的。有关这些选项的详细说明,请参阅 Windows 2000 操作系统的文档。
          • 所有其他选项(它们也可以在 Windows 资源管理器中设置)都是基本访问权限的所有可能组合的子集。因此,不存在文件夹访问权限(如 LIST 或 READ)的特殊选项。
/R 用户为指定用户调用所有访问权限。
/P user:perm;spec 替换用户的访问权限。指定 perm 和 spec 的规则与 /G 选项相同。请参阅本文的“XCacls.vbs 示例”部分。
/D 用户拒绝用户访问文件或目录。
/Y 禁止在替换用户访问权限时出现确认提示。默认情况下,CACLS 要求确认。由于存在此功能,在批处理例程中使用 CACLS 时,例程将停止响应并等待输入正确答案。引入 /Y 选项后可消除此确认,从而可以在批处理模式下使用 XCacls.vbs。
使用 XCacls.vbs 查看权限
XCacls.vbs 还可用于查看文件或文件夹的权限。例如,在命令提示符处键入 xcacls C:winnt,然后按 Enter 键。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值