线程与安全对象之间的交互

当线程尝试使用 安全对象时,系统会在允许线程继续之前执行访问检查。 在访问检查中,系统将线程 访问令牌 中的安全信息与对象 安全描述符中的安全信息进行比较。

系统检查对象的 DACL,查找适用于线程访问令牌中的用户和组 SID 的 ACE。 系统会检查每个 ACE,直到授予或拒绝访问,或者直到不再有 ACE 进行检查。 可以想象,ACL) (访问控制列表 可以有多个适用于令牌的 SID 的 ACE。 如果发生这种情况,则每个 ACE 授予的访问权限会累积。 例如,如果一个 ACE 授予对组的读取访问权限,另一个 ACE 授予对属于组成员的用户的写入访问权限,则用户可以同时对对象具有读取和写入访问权限。

下图显示了这些安全信息块之间的关系:

relationships between processes, aces, and dacls