Управление UAC в Windows 7 и Windows Server 2008 R2

Примечание. Информация в этой статье основана на предварительных версиях (RC) Windows 7 и Windows Server 2008 R2. В финальных версиях могут измениться функциональные возможности и названия элементов интерфейса.

Функция контроля учетных записей UAC в Windows Vista вызвала немало споров. Поэтому неудивительно, что в Windows 7 внесены улучшения, не только изменившие работу функции контроля учетных записей, но и позволяющие более гибко настроить UAC.

В Windows 7 и Windows Server 2008 R2 контроль учетных записей усовершенствован за счет того, что:

  • уменьшено количество запросов в различных ситуациях;
  • увеличено число операций, которые обычный пользователь может выполнять без повышения прав;
  • добавлены новые параметры UAC;
  • введены новые политики безопасности, позволяющие настроить UAC для локальных администраторов и обычных пользователей.

Microsoft уделяет большое внимание тому, чтобы разъяснить назначение контроля учетных записей в своих новейших операционных системах, поэтому логично начать именно с этого вопроса.

Назначение контроля учетных записей

Когда контроль учетных записей был впервые представлен в Windows Vista, его позиционировали как средство повышения безопасности операционной системы, хотя прямое назначение UAC состоит не в этом. Впоследствии независимые эксперты неоднократно демонстрировали возможности обхода UAC. Когда в Microsoft пришел Марк Русинович, на него, похоже, была возложена задача реабилитации UAC, и он начал методично объяснять истинное назначение контроля учетных записей. Он ввел понятие «граница защищенной зоны» (security boundary) и всеми доступными средствами (Technet, конференции, блог) разъяснял, что UAC такой границей не является. Например, именно этой теме был посвящен один из его докладов на конференции «Платформа 2008» (http://technet.microsoft.com/ru-ru/magazine/cc138019.aspx) в Москве.

На самом деле контроль учетных записей был создан для того, чтобы в системе можно было полноценно работать без прав администратора. Эту масштабную задачу необходимо было решать потому, что в Windows 2000/XP работа с административной учетной записью стала обычной практикой. В этом случае проникновение вредоносного кода в систему ведет к плачевным последствиям. Ситуация осложнялась тем, что многие разработчики программ совершенно не заботились об ограниченных учетных записях, всецело полагаясь на то, что установка их продуктов и работа с ними будут вестись с правами администратора. Получался замкнутый круг. Создатели UAC изменили модель контроля доступа, в результате чего была не только изменена работа учетных записей, но и реализована виртуализация файловой системы и реестра.

Для пользователей же контроль учетных записей фактически свелся к столь нелюбимым запросам UAC. Основное их назначение в том, чтобы уведомить пользователя, работающего с правами администратора, о попытках приложения внести в систему изменения, требующие полного административного доступа. Обычному пользователю, не имеющему прав на совершение действия, тут же предлагается ввести учетные данные администратора. Понятно, что разработчики должны планировать приложения таким образом, чтобы для работы с программой не требовалось административных прав. А если все программное обеспечение в системе может работать в контексте обычного пользователя, то уже нет необходимости в рутинной работе с полными правами администратора. Настройку системы можно производить от имени администратора или под его учетной записью, но это не каждодневная задача. И даже если вы работаете с правами администратора, UAC контролирует выполнение задач, требующих полных административных полномочий; он уведомляет пользователя в тех случаях, когда требуется подтверждение прав.

Таким образом, контроль учетных записей призван не предотвратить проникновение вредоносного кода (для этого существует брандмауэр и антивирусное/антишпионское программное обеспечение), а снизить наносимый им ущерб — ограничить его влияние правами обычного пользователя. Строго говоря, повышается не безопасность операционной системы, а ее устойчивость к несанкционированному доступу.

Кстати, значок щита в этом разделе статьи не случаен — именно его вы видите на кнопках, рядом со ссылками и в пунктах меню операционной системы, когда требуется повышение прав. Другими словами, если контроль учетных записей включен, обращение к элементу интерфейса, обозначенному щитом, сопровождается запросом UAC. Цветовая гамма щита изменилась по сравнению с Windows Vista, но это далеко не единственное изменение в интерфейсе.

Изменения в пользовательском интерфейсе

Доступ к параметрам функции контроля учетных записей упростился — их можно открыть из элементов панели управления «Центр поддержки» и «Учетные записи пользователей», а также из командной строки, запустив UserAccountControlSettings.exe (см. экран 1).

Экран 1. Параметры контроля учетных записей

В настройках UAC вместо двух возможностей управления (включен/выключен) появилось четыре режима работы.

  • «Уведомлять при установке программ или попытке внесения ими изменений, а также при изменении параметров Windows пользователем». Это максимальный уровень контроля учетных записей.
  • «Уведомлять при установке программ или попытке внесения ими изменений». Этот уровень используется по умолчанию.
  • «Уведомлять при попытке установки программ или попытке внесения ими изменений, но не затемнять рабочий стол». Затемнение рабочего стола (так называемый безопасный рабочий стол, Secure Desktop) — это своего рода подтверждение подлинности окна UAC, позволяющее визуально отличить поддельные запросы UAC от настоящих.
  • «Не уведомлять ни при установке программ или попытке внесения ими изменений, ни при изменении параметров Windows пользователем». Контроль учетных записей отключен.

Помимо окна настроек, преобразились и диалоговые окна управления функцией контроля учетных записей. Изменения нацелены на то, чтобы пользователям была понятна суть запроса (см. экран 2).

Экран 2. Запуск командной строки от имени администратора обычным пользователем

Теперь в основном используются только два цвета:

  • синий — для компонентов, имеющих цифровую подпись;
  • желтый — для компонентов, не имеющих цифровой подписи.

Красный цвет используется только в тех редких случаях, когда программа или компонент заблокированы администратором. Кроме того, в запросах жирным шрифтом выделяется издатель программы. Для пользователей, озадаченных появлением запроса, в диалоговом окне предусмотрена ссылка «Помощь в принятии решения».

Изменения в работе

Безусловно, в Windows 7 и Windows Server 2008 R2 работа целенаправленно велась с акцентом на уменьшение количества запросов UAC — именно этот аспект вызвал наибольшее недовольство пользователей Windows Vista среди всех претензий к операционной системе.

Уменьшено количество запросов

Используемый по умолчанию уровень контроля — это новая возможность Windows 7 и Windows Server 2008 R2. Такой уровень невозможно было настроить в Windows Vista с помощью пользовательского интерфейса, политики безопасности или реестра. Работа операционной системы была изменена для того, чтобы, не снижая уровень безопасности, реализовать автоматическое повышение прав для выполнения распространенных административных задач, вызывавших около половины запросов UAC. Это имело смысл сделать потому, что по статистике 9 из 10 таких запросов пользователи все равно одобряли.

Что же касается уровня, позволяющего отключить безопасный рабочий стол, то его появление в пользовательском интерфейсе обусловлено желанием продемонстрировать максимальную совместимость UAC с аппаратным обеспечением. В некоторых случаях затемнение рабочего стола приводило к задержкам в работе операционной системы, чему мог быть причиной, например, драйвер видеокарты. В Windows Vista имелась политика, позволяющая отключить безопасный рабочий стол, однако большинство пользователей о ее существовании даже не подозревали.

Если сравнивать количество запросов UAC в Windows 7 и Windows Vista, то даже при максимальном уровне контроля учетных записей количество запросов в новой версии уменьшилось. A уровень контроля, используемый теперь по умолчанию, еще больше должен способствовать достижению столь необходимого баланса между безопасностью и навязчивой заботой операционной системы. В таблице 1 сравнивается количество запросов двух верхних уровней контроля учетных записей в новых операционных системах и Windows Vista SP1.

Таблица 1. Количество запросов в Windows 7 и Windows Server 2008 R2 по сравнению с Windows Vista SP1

Изменена работа компонентов

Многие компоненты новых операционных систем были переработаны, чтобы уменьшить количество запросов UAC и сделать работу пользователей более комфортной. Положительные изменения произошли в работе как обычных пользователей, так и локальных администраторов (см.таблицу 2).

Таблица 2. Запросы UAC для обычного пользователя и администратора

Административные учетные записи

Изменения, затронувшие встроенную учетную запись «Администратор», касаются в основном работы в безопасном режиме. Однако, прежде чем перейти к ним, я бы хотел рассказать о различиях между встроенной и другими административными учетными записями.

Согласно одному из распространенных заблуждений о контроле учетных записей, встроенная учетная запись «Администратор» имеет больше прав, чем обычная. Это не так. На самом деле отличие лишь в том, что права встроенной учетной записи автоматически повышаются до максимальных при выполнении всех задач, поэтому запрос UAC для нее не выводится (см. экран 3).

Экран 3. Встроенная учетная запись администратора запускает задачу с полными правами

Все остальные административные учетные записи работают в режиме одобрения администратором (Admin Approval Mode): контроль учетных записей запрашивает подтверждение действий, если требуется повышение прав. А если не требуется, задачи выполняются с правами обычного пользователя.

Незнание этой тонкости нередко сбивает пользователей с толку. Например, запуск командной строки администратором выполняется с правами обычного пользователя, поскольку само по себе это действие не подразумевает внесения важных изменений в систему. Для того чтобы выполнить задачу с полными правами, необходимо запустить ее от имени администратора — соответствующий пункт имеется в контекстном меню проводника. В этом случае выводится запрос UAC (см. экран 4).

Экран 4. Запуск командной строки от имени учетной записи с административными правами

Поскольку запуск осуществлен администратором, учетные данные вводить не требуется — нужно лишь подтвердить действие. Кроме того, наряду с предложением помощи в принятии решения, для администраторов в диалоговом окне имеется ссылка «Изменить при появлении этого уведомления», открывающая параметры контроля учетных записей. Продолжая пример с командной строкой, легко определить, с какими правами она была запущена (см. экран 5).

Экран 5. Командная строка запущена с полными административными правами

Можно настроить политику безопасности таким образом, чтобы у административных учетных записей происходило повышение прав без запроса UAC — достаточно будет лишь запустить задачу от имени администратора. Поэтому нет никакой необходимости в повседневной работе со встроенной учетной записью «Администратор».

В отличие от Windows Server 2008 R2, встроенная административная учетная запись в Windows 7 отключена. Если это единственная активная учетная запись в группе «Администраторы» при обновлении Windows XP до Windows 7, она переводится в режим одобрения.

Изменения, касающиеся работы отключенной учетной записи «Администратор» в безопасном режиме, отражены в таблице 3.

Таблица 3. Работа в безопасном режиме при отключенной учетной записи «Администратор»

Настройка UAC с помощью политик безопасности

Имея права локального администратора, вы можете управлять параметрами контроля учетных записей с помощью локальной политики безопасности. Политики UAC можно задать как в оснастке «Локальная политика безопасности» (secpol.msc) в узле «Локальные политики», «Параметры безопасности», так и в разделе системного реестра HKLM\SOFTWARE\
Microsoft\Windows\CurrentVersion\ Policies\System (см.экран 6).

Экран 6. Политики безопасности контроля учетных записей

Основная политика, определяющая состояние контроля учетных записей и всех остальных его политик, не изменилась, что отражено в таблице 4.

Таблица 4. Политика «Контроль учетных записей: все администраторы работают в режиме одобрения администратором»

Изменения же коснулись двух политик, определяющих поведение запросов контроля учетных записей для локальных администраторов и обычных пользователей. Наряду с имевшимися ранее вариантами, теперь вы можете указать, будет ли использоваться безопасный рабочий стол, если для продолжения работы UAC требует подтвердить действие или ввести учетные данные (см.таблицы 5 и 6).

Таблица 5.  Политика «Контроль учетных записей: поведение запроса на повышение прав для администраторов в режиме одобрения администратором»

 

Таблица 6.  Значения политики «Контроль учетных записей: поведение запроса на повышение прав для обычных пользователей»

Помимо перечисленных выше политик безопасности, имеются и другие, позволяющие более гибко настроить работу контроля учетных записей. С их назначением можно ознакомиться в свойствах политики на вкладке «Объяснение», а соответствующие им параметры реестра документированы в MSDN.

Новое лицо UAC

Контроль учетных записей в Windows 7 и Windows Server 2008 R2 подвергся существенной переработке. В первую очередь, снизилось количество запросов UAC, излишняя навязчивость которых вызывала справедливую критику пользователей Windows Vista. Улучшить работу UAC удалось за счет изменений в работе новых операционных систем наряду с введением нового уровня контроля учетных записей. Этот уровень, используемый по умолчанию, осуществляет автоматическое повышение прав при выполнении наиболее распространенных административных действий. Оформление запросов контроля учетных записей также изменилось — тона смягчились, а информация подается более четко. Эти нововведения должны способствовать более благосклонному восприятию UAC конечными пользователями.

Доступ к параметрам контроля учетных записей упростился за счет размещения ссылок на него в различных элементах панели управления. Все доступные параметры UAC можно также настроить с помощью локальных политик безопасности или соответствующих им параметров системного реестра. Кроме того, политики безопасности предоставляют в распоряжение системных администраторов возможности более тонкой настройки поведения запросов UAC для административных и обычных учетных записей.

 

Вадим Стеркин — занимается развитием компьютерного информационного портала OSZone.net. Имеет звание Microsoft MVP в категории Windows Desktop Experience

 

Журнал «Windows IT Pro», Издательство «Открытые системы» (http://www.osp.ru/)