Запуск программы от имени администратора - что на самом деле происходит? - PullRequest
0 голосов
/ 20 декабря 2018

Моя цель - понять на нижнем уровне, что на самом деле происходит, когда вы запускаете программу «от имени администратора».

  1. Загружает ли она программу в область памяти земли ядра?
  2. Или она все еще загружается в землю пользователя, и вызовы API просто больше не запрашивают у вас запрос на доступ?

1 Ответ

0 голосов
/ 20 декабря 2018

При входе в Windows создается токен доступа.Это идентифицирует вас, группы, членами которых вы являетесь, и ваши привилегии.И обратите внимание, что то, является ли пользователь администратором или нет, определяется тем, является ли пользователь членом группы администраторов.

Без UAC , когда вы запускаете программу, она получает копиютокен доступа, и он контролирует доступ к программе.

При использовании UAC при запуске программы она получает токен ограниченного доступа.Это оригинальный токен доступа с «Администраторами», удаленными из списка групп (и некоторыми другими изменениями).Даже если ваш пользователь является членом группы администраторов, программа не может использовать привилегии администратора.

Когда вы выбираете «Запуск от имени администратора», а ваш пользователь является администратором, программа запускается с оригинальным неограниченным доступом.маркер.Если ваш пользователь не является администратором, вам будет предложено ввести учетную запись администратора, и программа будет запущена под этой учетной записью.

...