Изменение привилегий в токене

Вы можете изменить привилегии в основном маркере или маркере олицетворения двумя способами:

  • Включение или отключение привилегий с помощью функции AdjustTokenPrivileges .
  • Ограничьте или удалите привилегии с помощью функции CreateRestrictedToken .

AdjustTokenPrivileges не может добавлять или удалять привилегии из маркера. Он может включать только существующие привилегии, которые в настоящее время отключены, или отключить существующие привилегии, которые в настоящее время включены. Примеры см. в разделе Включение и отключение привилегий в C++.

Сведения о назначении привилегий учетной записи пользователя см. в статье Назначение привилегий учетной записи.

CreateRestrictedToken имеет более широкие возможности следующим образом:

  • Удаление привилегии. Обратите внимание, что удаление привилегии — это не то же самое, что отключение привилегии. После удаления привилегии из маркера ее невозможно вернуть.
  • Присоединение атрибута только запрета к идентификаторам безопасности в маркере. Это приведет к запрету определенных групп или учетных записей, например запрету группе Все удалить доступ к определенному файлу. Дополнительные сведения об ограничении идентификаторов безопасности см. в разделе Атрибуты SID в маркере доступа.
  • Указание списка ограничивающих идентификаторов безопасности в маркере. Сведения об ограничении идентификаторов безопасности см. в разделе Ограниченные маркеры.