所有交易的 geek 从命令行设置权限

Greg Shields

内容

很多 Cacls
随着时间的推移管理权限
构想的权限

一个旧的友元和其他 IT 专业人员有这指向说我发现自己重复了很多最近)。 它与如何着手完成您的日常工作任务和您的职业。 他说在空中接头程序,与"IT 专业人员不了解如何完成其任务从命令行不是 IT 专业人员在下一个五年。

fig01.gif

图 1 的示例文件服务器文件夹结构

现在这一个显著的语句,但它是每个 IT 专业人员应注意。 无论无论您是一个 jack-of-all-trades 还是您深入深度为特定焦点,获取手关闭的鼠标和键盘上是认为必须母版如果您成功地在未来年数字一技能。 为什么在命令行? 简单地说: 提高效率、 repeatability 和保证。

如果您管理一种技术通过其 GUI,实现有效的任何操作 evaporates 一次完成。 您只需重复不能使用鼠标单击。 相反,完成该操作通过命令行) 是否通过一个命令或脚本,使您能够不断重复使用您的工作。

根本是比使用设置和管理 Windows 文件系统权限我们做的所有时间任务更明显。 我们设置权限的文件和文件夹。 我们将更新,并管理我们鍏变韩鏉冮檺。 时,我们甚至可能更新注册表中的对象权限。 所有这些都可以通过浏览器或 regedit 图形界面来完成的操作。 但使用这些接口是很麻烦,容易出错,硬盘上您的手腕。 如果您已经通过长的权限更改只将它故障以往任何时候都变方式的大部分对您在中间与访问被拒绝"的某处,您知道此问题。

通过 GUI 的权限修改是由于到全部的参与者在播放特别有问题。 在小型环境可能上千个单独的文件夹和数百个的任何可以有多个分配的权限的用户。 管理潜在的配置造成巨大数是不方便的任务。 如果与多个管理员共享工作负荷,您可以确信内容将更改第二个非常和您最后完善在上一个复杂的文件夹结构权限。

杩欎簺闂   周围,方法是从命令行管理文件系统权限提交您自己。 通过采用手鼠标关闭和投资自己熟悉几个工具中的某些工作,您将被 rewarded 与完成保证成功的无限重复的效率更高的解决方案。

很多 Cacls

我们来看,第一个工具是"更改访问控制列表,或 cacls,其中包含了很长且 fruitful 历史记录与 Windows 操作系统的命令行工具。 原始的 cacls 附带 Windows NT 4.0 和启用一组基本功能的更改在命令行上的权限,但它可以完成的任务的限制。 若要解决这些限制,Microsoft 随后发布的 Windows NT 资源工具包中的展开的 xcacls。 但一个不受支持的 xcacls.vbs 发布更多的功能的更高版本,但在性能方面向后。

最新和完全特色版本,icacls,附带 Windows Vista 和 Windows Server 2008 以及可以下载 Windows XP,在 Windows Server 2003 support.microsoft.com/kb/919240. Icacls 包含添加的功能在实验性的 VBScript 中找到的很多,但作为一个明显更快的 EXE 到达。 Icacls 还添加了对管理 Windows 完整性级别,我们不会在本文中的访问控制的第二层支持。

让我们假设您负责管理使用文件夹结构与 图 1 中的文件服务器上的权限。 那里您将看到一个名为包含在财务的共享和市场的子文件夹,根文件夹包含其他子文件夹。 您还会注意到的文件夹的配置,使越来越较小的用户组可以访问较低级别的共享资源。 渚嬪的方式  财务用户可以读取该预算文件夹中的信息,但只预算用户可以向其中写入。 一个受限制的文件夹也是出现在底部的没有人能够看到除具有受限访问权限。 现在这是在多个文件服务器上的一个公共结构。

可以使用 icacls 设置类似于 图 1 中的权限,但如何执行此操作不立即。 要设置为只是标准文件夹指定的权限,可以使用以下语法:

icacls C:\Shared\Finance\Metrics /grant:r "Finance Users":(OI)(CI)M /grant:r "Metrics Users":(OI)(CI)M

遗憾的是,具有很好的能力是很好的复杂性。 您可以看到 icacls 的语法可以非常 impenetrable,至少直到您将了解如何使用 Windows 权限。 请记住一个单独的权限可以应用到单个文件夹对象或对象以及其子文件夹和文件。 这是继承的概念。 在资源管理器 GUI 中的将简单修改权限应用于为中 图 2 的一个文件夹时要实际上将它应用于该文件夹,以及所有子文件夹和文件。

fig02.gif

图 2 将 自动应用简单的权限集继承的子文件夹和 文件。

在在上面的命令行,您可以看到每个组,修改为 M 提供后 (OI)(CI),突出显示的对象继承和容器继承分别。 二者均需要应用该简单 icacls 如果要修改权限。 还将发现的": r"之后 /grant 开关添加。 此修饰符指示 icacls 以添加在命令行中设置的权限之前清除对象上的任何直接应用的权限。

复杂,是,但 Windows 权限很复杂。 请记住,最终目标 — — 可重复使用的命令,实际上会使事情变得更加简单。

若要继续该示例,让我们遍历整个 icacls 命令行,将用于重置和正确应用财务文件夹结构,以及其根的规定的权限集:

Icacls C:\Shared /inheritance:r /grant:r "Domain Users":(OI)(CI)R /grant:r 
   "File Admins":(OI)(CI)F

Icacls C:\Shared\Finance /inheritance:r /grant:r "Finance Users":(OI)(CI)R /grant:r 
   "File Admins":(OI)(CI)F

Icacls C:\Shared\Finance\Budget /grant:r "Budget Users":(OI)(CI)M
Icacls C:\Shared\Finance\Metrics /grant:r "Metrics Users":(OI)(CI)M

第一行真正实现了两个任务。 它将启动,"/ 继承: r"切换到完全所有继承的权限从中删除上面的文件夹,这样,共享文件夹不继承。 这会从它紧上方的文件夹的共享文件夹的继承。 在完成之后,为域用户和完全控制权限的文件管理设置的读取权限。

由于我们不想要访问财务文件夹在所有域用户,两行中断,并再次清除该权限继承。 它然后将完全控制权限应用于文件管理员和财务用户读取权限中。

具有行第三个和第四个我们不想中断权限继承,因为该文件的管理员和财务用户组应相同的访问这些子文件夹。 这些两个行中我们只需授予其他权限 — — 除了现有的继承权限,以便预算用户和标准用户可以写入这些文件夹。

设置市场文件夹的权限是稍有不同。 我们使用相同的权限流产品文件夹为我们的子文件夹在财务,下,但受限文件夹将被视为有点不同。 假设该文件夹中包含高度机密文档应该通过只看到一个很少的人员。 您的第一个想法可能,"A-具有! 此处,我将使用所拒绝的权限以防止错误的用户访问此文件夹!"

但请记住拒绝权限是实际上相当强大在大多数情况下的设置为自动重写所有其他权限。 因此,向市场营销用户组对此文件夹添加拒绝权限意味着任何限制也市场营销用户的用户将被关闭出。 更合适的解决方案是断开继承再次,只需消除市场营销用户组的所有权限。 因此,三个 icacls 命令行设置为此结构的权限所需的是

Icacls C:\Shared\Marketing /inheritance:r /grant:r 
  "Finance Users":(OI)(CI)R /grant:r "File Admins":(OI)(CI)F

Icacls C:\Shared\Marketing\Product /grant:r "Product Users":(OI)(CI)M

Icacls C:\Shared\Marketing\Restricted /inheritance:r /grant:r 
   "File Admins":(OI)(CI)F /grant:r "Restricted Users":(OI)(CI)M

随着时间的推移管理权限

因此,它将在这种简单的文件夹结构上设置权限命令提示符七行。 看似大量完成相对较少,但考虑您的 IT 环境,以及内容如何随时间变化的工作。 多少次您配置了一个文件夹结构仅对某些缺少经验的同行管理员您离开时进行更改? 多少次您帮助台响应到电话呼叫通过盲目地修改该 whim 的用户在您 exquisitely 设计的权限结构? 这些是特别挑战性,如果您的环境有太多具有太多的访问权限的人的常见问题。 如果您使用鼠标和 Windows GUI 所有这些文件夹直线,您就是在长夜晚跟踪更改的。

我为您提供一个更好的解决方案。 如果您将预先编码到 icacls 像一个命令行工具的您的权限结构额外时间在上所花费重新应用该结构包括很少超过双击一个批处理文件。 一旦您已经编写类似于在七个以上的行,请将它们周围保留供以后使用。 您会发现它将成为轻松地通过只需再次调用这些行还原到其目标的状态您权限的结构。

如果内置的自动化是多样式,icacls 还允许您存储和重新应用权限。 一次您应用七个行上面,运行此命令在的等效:

icacls C:\Shared /save {fileName} /T

Icacls 将 C:\Shared 分析权限结构,并创建在 {fileName} 中发现了该文件。 图 3 中, 可以看到此文件的内容位于于二进制格式,并且缁撴灉文件不应在文本编辑器 (例如记事本中打开。 但是,可以使用此文件是一段时间中重新应用这些权限。 命令语法重新应用到相同的文件夹权限

fig03.gif

图 3 Icacls ’ 保存函数创建一个文件,可以在一个以后重新应用的权限的时间

icacls C:\Shared /restore {fileName} 

与此,必须修复的权限时,它们已经从您的原始设计遵从的轻松部署解决方案。

构想的权限

正如您所看到 icacls 可非常用于设置和管理权限。 什么不在如此重要,使您可以查看您的权限结构。 如果您发现自己遍历文件夹树下,右击每个文件夹并选择属性以检查每个对象的安全选项卡,您知道的哪一个痛苦。 Icacls 具有查看权限,一种机制,但其工具是基于文本的和不完全有用。 如果您运行的命令

icacls C:\Shared /t

icacls 将列出您的整个文件夹结构中的每个对象上的权限 ; 但是,监视 screenfuls 通过飞入的文本没有找到一个断开的永久的方法。

到目前为止更好地了解是在免费下载 AccessEnum 工具. AccessEnum 是帮助您可视化指派给一个特定的文件夹结构,权限是非常简单应用程序。 特别,到顶级文件夹在文件夹树中,您将 AccessEnum,该工具扫描文件下的文件夹和报告回权限是从父不同的位置。

此基于不同的视图的权限可帮助您查找权限已被配置不正确。 它适用于因自然的方式的文件夹结构中设置权限。 如果重新查看 图 1 ,您将看到如何设计良好的读取权限通常按下从流最高级别。 修改用户参与者将更改从读取器结构下的特定级别上设置权限。 AccessEnum 的基于不同的视图通过隐藏不会更改的权限,并公开只有那些执行支持此操作。 图 4 显示了 AccessEnum 的视图应用于此列的示例文件夹结构时的外观的示例。

fig04.gif

图 4 AccessEnum 帮助与可视化 您权限结构。

网络的使用 icacls 和 AccessEnum 结果应该是一个更具吸引力的应用程序的文件服务器中的权限。 进一步结果将得到较高级别的数据的安全性,如您将确保您的用户可以访问只的文件和文件夹的有意义的。

此简短的说明只涉及 Windows 权限和如何应用它们的图面。 通过 icacls 类似的工具,您可以设置应用于到,下面的文件夹不继承文件夹只有一个有用您希望在单个层只允许访问权限。 您可以设置为需要特殊处理,不管您对其应用哪些任意控件的数据的完整性级别。 您甚至可以在必要时的整个结构搜索的文件和权限。 因此,获取手的鼠标关闭并开始构建从命令行的权限。

在集中技术合作伙伴 Greg Shields ,MVP,。 获得更多的 Greg 的 Jack-of-all-Trades 提示和技巧在 www.ConcentratedTech.com.