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