Поговорим об User Account Control (UAC) — новой технологии в Microsoft Windows Vista, которую большинство пользователей ругает, а подавляющее большинство отключает в первый день работы. На самом деле она непривычна Windows-пользователю, не вникающему в технологию предоставления прав, кажется назойливой и ненужной.

Что представляет собой эта технология?
Технология UAC представляет возможность быстрого и достаточно прозрачного переключения между токеном (наборов прав и действий, которые может выполнять пользователь в системе) пользователя группы «Администраторы» и токеном группы «Пользователи».
Работая под пользователем с правами администратора (любой пользователь, входящий в локальную группу Администраторы) при входе в систему вы получаете токен администора и можете выполнять любые действия в системе. В включенной технологией UAC при входе в систему вы всегда получаете токен пользователя, даже если вы являетесь администратором на компь.ютере. Когда вы пытаетесь сделать что-либо, выходящее за предел прав пользователя, может появиться окно трех типов:
1) Окно с предупреждением о том, что подписанная доверенным сертификатом программа пытается получить доступ к ресурсам, не доступным обычному пользователю. Варианты — ОК или Отмена.

2) Окно с сообщением о том, что неизвестная программа пытается получить доступ к системе, не доступный для обычного пользователя. Варианты — Разрешить, Запретить.

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

Так же замечу, что если в автозагрузке стоит программа, требующая полномочий администратора, то при входе пользователя в систему появится сообщение о том, что UAC заблокировал запуск программы, щелкнув по ней правой кнопкой можно разрешить ее запуск.
UAC позволяет контролировать все действия в системе. Если это делать с умом, а не нажимать на автомате «Разрешить» во всплывающих окнах, то это обезопасит от вирусов и программ, которые могут навредить работе системы. UAC имеет несколько механизмов обнаружения необходимости получения прав администратора. Это запуск программ, в названии которых содержится слово «setup», «install», обращение к определенным веткам реестра, попытки изменения файлов вне профиля текущего пользователя и т.д…
Огромный плюс UAC — возможность удобной работы под обычным пользователем, не переключаясь на администратора. Например, если нужно установить программу, то во всплывающем окне достаточно ввести пароль нужного пользователя, обладающего правами администратора и программа запустится правами другого пользователя.
Технология не нова, она давно применяется в MacOS X и во многих дистрибутивах Linux — работая с правами пользователя, обладающего правами на sudo, запрашивается пароль на выполнение изменений в системе. Многие дистрибутивы Linux запрашивают пароль root'а.
Но если nix-системы изначально разрабатывались как многопользовательские и рассчитывались, что пользователи будут работать с правами обычного пользователя, то в Windows мы давно привыкли работать с правами администратора и делать все, что хотим. И программы пишутся с расчетом на это. Так что даже сейчас, когда прошло несколько лет после релиза Windows Vista, многие программы не умеют работать с UAC. Часто, когда программа требует права администратора, то окно UAC не появляется и программа работает не так, как должна. Таких программ все еще много, не буду приводить примеры.
Следующая работа — определенные проблемы администрированием предприятия.
Во-первых, при включенном UAC заблокирован доступ к шарам C$, D$ и т.д., а доступ к обычным шарам дается только как обычным пользователям. То есть если на папке на удаленном компьютере с включенным UAC разрешено чтение всем пользователям, администраторам чтение и запись, и вы заходите на удаленный компьютер под административной учетной записью, то вам будет дан доступ только на чтение, как и обычному пользователю. Это называется Remote UAC и вроде как тоже должно повышать безопасность.
Мне это не понравилось, так как между несколькими компьютерами я привык передавать файлы через системные шары типа C$. Долго искал способ как это отключить и нашел.
Пуск -> Выполнить -> Regedit. Появляется окно UAC, жмем OK. Открываем ветку реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system
Там жмем Создать -> Значение DWORD32, называем его LocalAccountTokenFilterPolicy и присваиваем ему значение 1.
После перезагрузки Remote UAC отключиться и вы сможете заходить на общие папки удаленных компьютеров как обычно.
Следующая проблема – работая администратором предприятия, большинство задач, которые вы выполняете на серверах и рабочих машинах пользователей – так же административные и требуют повышенных привелегий. Будет получаться, что окно UAC будет появляться постоянно и надоедать. Эта проблема решается просто – действия UAC настраиваются. Можно выбрать «Показывать окно», «Запрашивать пароль», «Никаких действий». Настраивается в Локальной политике безопасности. Лично я на серверах под управлением Windows 2008 предпочитаю отключать назойливое окно, а на машинах с Windows Vista оставляю со стандартными настройками.
На уровне предприятия все данные изменения можно выполнять с помощью групповых политик.
В целом технология грамотная, гибкая и нужная. Это давно было в альтернативых системах, а теперь появилось и в Windows. Надеюсь, в Windows 7 она будет доработана, производители программного обеспечения исправят проблемы с UAC в своих программах. Приятно все-таки когда ты знаешь, что происходит в твоем компьютере и ни одна вещь не уйдет за пределы твоей учетной записи без твоего ведома.

Что представляет собой эта технология?
Технология UAC представляет возможность быстрого и достаточно прозрачного переключения между токеном (наборов прав и действий, которые может выполнять пользователь в системе) пользователя группы «Администраторы» и токеном группы «Пользователи».
Работая под пользователем с правами администратора (любой пользователь, входящий в локальную группу Администраторы) при входе в систему вы получаете токен администора и можете выполнять любые действия в системе. В включенной технологией UAC при входе в систему вы всегда получаете токен пользователя, даже если вы являетесь администратором на компь.ютере. Когда вы пытаетесь сделать что-либо, выходящее за предел прав пользователя, может появиться окно трех типов:
1) Окно с предупреждением о том, что подписанная доверенным сертификатом программа пытается получить доступ к ресурсам, не доступным обычному пользователю. Варианты — ОК или Отмена.

2) Окно с сообщением о том, что неизвестная программа пытается получить доступ к системе, не доступный для обычного пользователя. Варианты — Разрешить, Запретить.

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

Так же замечу, что если в автозагрузке стоит программа, требующая полномочий администратора, то при входе пользователя в систему появится сообщение о том, что UAC заблокировал запуск программы, щелкнув по ней правой кнопкой можно разрешить ее запуск.
UAC позволяет контролировать все действия в системе. Если это делать с умом, а не нажимать на автомате «Разрешить» во всплывающих окнах, то это обезопасит от вирусов и программ, которые могут навредить работе системы. UAC имеет несколько механизмов обнаружения необходимости получения прав администратора. Это запуск программ, в названии которых содержится слово «setup», «install», обращение к определенным веткам реестра, попытки изменения файлов вне профиля текущего пользователя и т.д…
Огромный плюс UAC — возможность удобной работы под обычным пользователем, не переключаясь на администратора. Например, если нужно установить программу, то во всплывающем окне достаточно ввести пароль нужного пользователя, обладающего правами администратора и программа запустится правами другого пользователя.
Технология не нова, она давно применяется в MacOS X и во многих дистрибутивах Linux — работая с правами пользователя, обладающего правами на sudo, запрашивается пароль на выполнение изменений в системе. Многие дистрибутивы Linux запрашивают пароль root'а.
Но если nix-системы изначально разрабатывались как многопользовательские и рассчитывались, что пользователи будут работать с правами обычного пользователя, то в Windows мы давно привыкли работать с правами администратора и делать все, что хотим. И программы пишутся с расчетом на это. Так что даже сейчас, когда прошло несколько лет после релиза Windows Vista, многие программы не умеют работать с UAC. Часто, когда программа требует права администратора, то окно UAC не появляется и программа работает не так, как должна. Таких программ все еще много, не буду приводить примеры.
Следующая работа — определенные проблемы администрированием предприятия.
Во-первых, при включенном UAC заблокирован доступ к шарам C$, D$ и т.д., а доступ к обычным шарам дается только как обычным пользователям. То есть если на папке на удаленном компьютере с включенным UAC разрешено чтение всем пользователям, администраторам чтение и запись, и вы заходите на удаленный компьютер под административной учетной записью, то вам будет дан доступ только на чтение, как и обычному пользователю. Это называется Remote UAC и вроде как тоже должно повышать безопасность.
Мне это не понравилось, так как между несколькими компьютерами я привык передавать файлы через системные шары типа C$. Долго искал способ как это отключить и нашел.
Пуск -> Выполнить -> Regedit. Появляется окно UAC, жмем OK. Открываем ветку реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system
Там жмем Создать -> Значение DWORD32, называем его LocalAccountTokenFilterPolicy и присваиваем ему значение 1.
После перезагрузки Remote UAC отключиться и вы сможете заходить на общие папки удаленных компьютеров как обычно.
Следующая проблема – работая администратором предприятия, большинство задач, которые вы выполняете на серверах и рабочих машинах пользователей – так же административные и требуют повышенных привелегий. Будет получаться, что окно UAC будет появляться постоянно и надоедать. Эта проблема решается просто – действия UAC настраиваются. Можно выбрать «Показывать окно», «Запрашивать пароль», «Никаких действий». Настраивается в Локальной политике безопасности. Лично я на серверах под управлением Windows 2008 предпочитаю отключать назойливое окно, а на машинах с Windows Vista оставляю со стандартными настройками.
На уровне предприятия все данные изменения можно выполнять с помощью групповых политик.
В целом технология грамотная, гибкая и нужная. Это давно было в альтернативых системах, а теперь появилось и в Windows. Надеюсь, в Windows 7 она будет доработана, производители программного обеспечения исправят проблемы с UAC в своих программах. Приятно все-таки когда ты знаешь, что происходит в твоем компьютере и ни одна вещь не уйдет за пределы твоей учетной записи без твоего ведома.