如果我们更改完整性级别,SID 会更改吗?

Does SID change if we change the integrity level?

如果我们更改完整性级别,SID 是否会更改?

我的代码正在更改完整性级别,我在 Process Explorer 中看到了它。但是我不知道是否也应该为进程更改 SID。在这种情况下,为了证明这一点,我想在 Process Explorer 中更改进程的完整性级别,并查看 SID 是否发生变化。

但是如何更改 Process Explorer 中的完整性级别?

进程没有用于对其他对象进行访问检查的 SID,SID 是 thread/process 令牌的一部分。 (进程和线程是安全的内核对象,因此具有带 SID 的 ACL,但这在这里并不真正相关)。

The integrity level is stored as a SID 所以是的,如果完整性级别发生变化,其中一个 SID 将发生变化。

The integrity SID for a securable object is stored in its system access control list (SACL). The SACL contains a SYSTEM_MANDATORY_LABEL_ACE access control entry (ACE) that in turn contains the integrity SID. Any object without an integrity SID is treated as if it had medium integrity.

The integrity SID for a security principal is stored in its access token. An access token may contain one or more integrity SIDs.

我怀疑修改完整性 SID 实际上会改变进程的完整性级别。要更改级别,您需要更改令牌。