Изменение привилегий в токене
Привилегии можно изменить двумя способами как в основном токене, так и в токене олицетворения.
- Включите или отключите привилегии с помощью функции AdjustTokenPrivileges.
- Ограничить или удалить привилегии с помощью функции CreateRestrictedToken.
AdjustTokenPrivileges не может добавить или удалить привилегии из токена. Он может только включать существующие привилегии, которые в настоящее время отключены, или отключать существующие привилегии, которые в настоящее время включены. Примеры см. в разделе Включение и отключение привилегий вC++ .
Чтобы назначить привилегии учетной записи, см. Назначение привилегий учетной записи.
CreateRestrictedToken имеет более широкие возможности следующим образом:
- Удаление привилегий. Обратите внимание, что удаление привилегий не совпадает с отключением. После удаления привилегии из маркера её нельзя вернуть.
- Присоединение атрибута «только запрет» к SID в токене. Это влияет на запрет определенных групп или учетных записей, например запретить группе "Все" удалить доступ к конкретному файлу. Дополнительные сведения об ограничении идентификаторов безопасности см. в атрибутах безопасности вмаркера доступа.
- Указание списка ограничивающих идентификаторов безопасности в маркере. Сведения об ограничении SID см. в разделе про ограниченные токены.