首先,我所在的公司很久以前为每个部门实施文件共享时,也违反了 NTFS 权限的基本规则,对某些文件夹的用户使用了明确的权限。举个例子,每个用户都有一个 W: 驱动器。W: 驱动器层次结构类似于以下内容:
办公室:\HR
W:\法律
W:\财务
W:\通讯
我确信,这些文件夹一度井井有条。但后来出现了复杂的情况,法律部门的某个人需要访问人力资源文档,财务部门的某个人需要访问法律文档,然后出现了一些奇怪的情况,来自法律部门不同分支的两个不同的人需要访问法律文件夹中的特定文件夹,但他们不希望其他人访问此文件夹。IT 部门当时认为最好的解决方案就是向这些人授予明确的权限。
自从 7 年前开始从事这份工作以来,我一直在暗示为这些实例创建安全组(即使只为一个用户帐户创建),因为当用户离职时,我们会将他们从所有组中删除,并将他们放入“前雇员”OU 中 5 年,但他们的明确权限仍保留在文件共享中的文件夹中。
当我暗示为这些实例创建安全组时,反驳的论点是“当人们离开时,我们将如何管理所有空组?我们如何在 AD 中组织和命名这些组?”
对于第一个论点,我建议使用一个简单的 powershell 脚本来删除空组或者只是将它们保留在原处,以便将来任何员工请求对特定文件夹具有相同的访问权限。
但是第二个论点是我很难想出好的解决方案的地方。所以在写完这篇简短的小说后,我只想问一下,当遇到我上面列出的情况时,在 AD 中组织安全组以获得 NTFS 权限的任何提示或示例。
我的一个想法是为特殊的 NTFS 权限组创建一个 OU,以他们授予访问权限的文件夹命名这些组,并在描述中放入完整的文件路径。
如果有人有更好的想法或者有人以不同的方式做这件事,我愿意接受建议。
答案1
您的想法基本上就是我所做的事情,而且我在复杂的环境中通过这种方式管理事情并取得很大成功。
这两个问题的解决方案是创建资源组与文件夹/共享绑定。您根本不会删除空组,只要文件夹或共享存在,这些组就会存在,而不会只要其中有用户就会存在。如果您删除了文件夹,那么您将删除关联的资源组,无论它是否为空。
关于如何在 AD 中组织安全原则的问题对我来说有点神秘 - 这就是 AD 的用途!您可以按照自己想要的任何方式组织它!
就是这样我做吧:
- 在适当的位置创建一个 OU,并将其命名为“资源组”。
- 可选:在“资源组”内创建一个 OU,并将其命名为“文件夹组”。此步骤主要是为自己留出一个放置其他资源组(如打印机组或应用程序组)的地方。
- 开始检查所有具有非继承权限的文件夹/共享。当您发现具有非继承权限的内容时,请创建一个本地域名为其命名的安全组。例如,对于 \\FileServer01\Accounting,您将创建一个名为“Accounting Folder”的组。请注意,您不应将组命名为“Accounting”,因为该组是对于文件夹,而不是部门。我喜欢让事情变得格外清晰,并且没有名为“会计”的组。我喜欢有“会计用户”全局安全组和“会计文件夹”域本地安全组。
- 在新文件夹组的描述中,输入完整的 UNC 路径或其他指定文件夹的方法。这样就不会混淆该组允许访问哪些资源。例如,您可以将描述设为“\\FileServer01\Accounting”,也可以将其设为“FileServer01 上的 D:\Shares\Accounting”。
- 将新组添加到文件夹的 ACL 中,并将文件夹上的每个用户或用户组 ACE 添加到该组。让我澄清一下:首先,为会计文件夹组授予会计文件夹的适当权限。然后检查会计文件夹的其他权限,并将所有这些对象添加到会计文件夹组,但不要添加“SYSTEM”或“CREATOR OWNER”之类的对象。只需添加您知道的对象,例如“会计部门”组和已被授予会计文件夹明确访问权限的个人帐户。此时不要删除该文件夹的任何权限。用户直到下次获得安全令牌(通常是下次登录时)时才会根据您创建的组获得新的访问权限。如果您删除显式 ACE,您几乎肯定会将用户锁定在文件夹之外,他们必须注销并重新登录才能使新的权限结构正常工作。
- 继续检查所有文件夹,直到您完成创建新组和设置新权限结构。在您确定用户至少注销并重新登录一次(可能几周后)后,您可以从最不重要的文件夹开始,删除文件夹本身的明确 ACE,并确保用户仍有权访问。再检查一遍文件夹,并确保与最关键的用户(人力资源、财务、C 级)核实他们是否仍有权访问相应的文件。
- 笔记:您可能已经对授予了不同访问级别的 ACE 感到好奇,例如,会计对会计文件夹具有读/写权限,但 CEO 具有只读权限。在这种情况下,您必须为每个文件夹创建多个资源组,我建议您弄清楚如何为每个文件夹创建不超过三个组,并将它们命名为一致的名称,并为每个文件夹创建相同的两个或三个组。因此,您可以将它们命名为“会计文件夹 RW”、“会计文件夹 RO”和“会计文件夹 FC”(用于完全控制)。希望您没有最后一个类别,但我在将权限管理委托给部门主管方面取得了一些成功,这意味着他们需要能够授予子文件夹和文件的权限,所以这就是我所说的“完全控制”组。同样,如果您为一个文件夹创建“RW”和“RO”组,那么我建议也为所有其他文件夹创建它们,即使您目前没有授予文件夹不同访问级别的 ACE。这将有助于保持文件夹组系统清晰,并使将来轻松授予不同类型的访问权限。
笔记:
- 上述建议遵循了 Microsoft 的最佳实践。将用户放入用户组中。创建资源组并授予其对资源的访问权限。然后,将用户组和/或用户添加到适当的资源组中。有很多原因可以证明这是一种明智的权限管理方式,我将在下面讨论其中一些。
- 不要仅仅为了让用户访问资源而将他们添加到用户组中。例如,如果您有一个会计用户组,其中包含会计部门的所有人,请不要仅仅为了让 CEO 访问会计文件而将他添加到会计用户组中。您永远不知道将来会出现什么样的意外后果。
- 这样做的一个优点是,通过组成员身份授予资源访问权限更快,而且不容易出现某些问题。例如,如果您有一个会计文件夹,其中包含 5,000 多个子文件夹和文件,所有子文件夹和文件都从顶级会计文件夹 ACL 继承权限,那么如果您将单个用户添加到该会计文件夹 ACL,则该更改必须传播到所有 5,000 个文件,并且所有 ACL 都必须添加新的 ACE。通过使用资源组,您只需将用户添加到相关组,他们就可以访问。无需进行任何 ACL 更改。
- 另一个巨大的优势是,您可以轻松找到特定用户可以访问的所有资源。使用显式 ACE,查看用户可以访问哪些资源的唯一方法是审核网络上的每个 ACL,以查看该用户是否在其中有 ACE。使用资源组,您只需转到 AD 中的用户并查看他们属于哪些组。
- 我最喜欢的这个方法的优点可能是你可以完全复制用户对所有资源的访问权限,因为访问权限与其帐户的组成员身份相关,而不是与网络上的各种 ACL 相关。您的 CFO 是否拥有对整个文件服务器中 20 多个不同文件夹的各种疯狂访问权限,现在他们退休了,您有了一位新 CFO?没问题!只需复制旧 CFO 的帐户,输入新名称等,新 CFO 现在拥有与旧 CFO 完全相同的访问权限!额外好处:您不必做一些愚蠢的事情,例如让旧 CFO 的帐户继续工作,以便执行团队成员可以“以他们的身份登录以访问文件”。
- 将资源访问权限复制到另一个资源或移动文件夹也容易得多。如果您构建了一个新的文件服务器并将所有文件复制到新服务器,则不必将大量 ACE 复制到新服务器。只需授予资源组适当的权限即可。
- 除了能够审核单个用户拥有的访问权限之外,您还可以轻松审核谁有权访问给定资源。只需查看资源的资源组,您就会获得谁对该资源拥有何种类型的访问权限的列表。
- 最后一件事:我不明白为什么您要从所有组中删除已离开的用户。我会将他们从电子邮件分发组中删除,但不会从安全组中删除。将他们留在安全组中可以记录他们拥有的访问权限,还可以在他们离开后复制该帐户及其访问权限。有时人们在找到替代者之前就离开了,因此保留该禁用帐户直到替代者开始工作有助于实现更大的操作连续性。此外,有时人们离开后几个月又回来了。如果您使用 AD 回收站,那么您可以在 30 或 60 天后删除该帐户,然后在一年后如果用户回来,仍然可以恢复该帐户,并且他们可以同时恢复所有权限。