如何在 Active Directory 域中检查 NTFS 文件夹访问权限?

如何在 Active Directory 域中检查 NTFS 文件夹访问权限?

我知道 NTFS 文件夹和 AD 对象都使用安全描述符和 DACL 来检查用户/进程访问 MS Learn - 访问检查的工作原理

但是,访问检查如何解析嵌套 AD 组的 ACE?例如:

  • AD 组AD-Parent被授予修改权限F:\Restrict
  • AD 组AD-VIPsAD-Parent
  • 用户vip是以下组织的成员AD-VIPs

我的理解是

  • vip安全描述符将有一个引用的 ACE AD-VIPs,并且
  • F:RestrictDACL 将有一个 ACE 引用AD-Parent

Windows 中的哪个进程如何以及哪个进程找到“vip -> AD-VIPs -> AD-Parent”链并授予访问权限?

答案1

在登录/身份验证/授权检查期间,安全组成员身份将添加到 Kerberos 令牌的特权访问证书 (PAC) 部分。这包括嵌套组。

访问文件夹时,拥有资源的主机(本例中为文件服务器)会将 ACL 中的 SecurityIdentifiers 与 Kerberos 令牌的 PAC 中的 SecurityIdentifiers 进行比较。如果匹配,则授予访问权限。

https://learn.microsoft.com/en-us/windows/win32/adschema/a-tokengroups

“由于对给定用户或计算机执行了可传递组成员身份扩展操作,因此包含 SID 列表的计算属性。如果没有全局目录来检索可传递的反向成员身份,则无法检索令牌组。”

答案2

让我们从您提供的链接开始(重点是我的):

系统将每个 ACE 中的受托人与线程访问令牌中标识的受托人进行比较。访问令牌包含识别用户和用户所属组帐户的安全标识符 (SID)。

实际上,“用户所属的组账户”取自用户登录时收到的 Kerberos 票证。票证包含用户所属的所有组的 SID,无论该组是否嵌套在另一个组中。

具体来说,回答你的问题:

Windows 中的哪个进程如何以及哪个进程找到“vip -> AD-VIPs -> AD-Parent”链并授予访问权限?

此任务由域控制器在生成票证授予票证 (TGT) 时执行(通常是在用户登录时)。TGT 包含用户所属的所有组的 SID。

你可以做一个实验,看看进程探索器:启动进程资源管理器,双击由域用户启动的进程(例如 notepad.exe),单击“安全”选项卡,在这里您将能够看到组成员身份,即使组是嵌套的。

Process Explorer 中的“安全”选项卡

相关内容