更改令牌中的特权
可以通过两种方式更改主要令牌或模拟令牌中的特权:
- 使用 AdjustTokenPrivileges 函数启用或禁用特权。
- 使用 CreateRestrictedToken 函数限制或删除特权。
AdjustTokenPrivileges 无法添加或删除令牌中的特权。 它只能启用当前已禁用的现有特权或禁用当前启用的现有特权。 有关示例,请参阅 在 C++ 中启用和禁用特权。
若要向用户帐户分配权限,请参阅 向帐户分配特权。
CreateRestrictedToken 具有更广泛的功能,如下所示:
- 删除权限。 请注意,删除权限与禁用权限不同。 从令牌中删除权限后,无法将其放回。
- 将仅拒绝属性附加到令牌中的 SID。 这具有禁止特定组或帐户的效果,例如,拒绝“每个人”组删除对特定文件的访问权限。 有关限制 SID 的详细信息,请参阅 访问令牌中的 SID 属性。
- 指定令牌中限制 SID 的列表。 有关限制 SID 的信息,请参阅 受限令牌。