Перейти к содержимому

Программа требует права администратора для запуска как убрать

  • автор:

Как отключить контроль учетных записей UAC Windows 10

Как отключить контроль учетных записей Windows 10

Контроль учетных записей или UAC в Windows 10 уведомляет вас при запуске программ или выполнении действий, которые требуют права администратора на компьютере (что обычно означает, что программа или действие приведет к изменению системных настроек или файлов). Сделано это с целью защитить вас от потенциально опасных действий и запуска ПО, которое может нанести вред компьютеру.

  • Отключение контроля учетных записей в панели управления Windows 10
  • Изменение параметров UAC в редакторе реестра
  • Отключение UAC в командной строке
  • Как отключить контроль учетных записей в редакторе локальной групповой политики
  • Видео инструкция

Как отключить контроль учетных записей в панели управления Windows 10

  1. Откройте панель управления, для этого можно использовать поиск в панели задач или нажать клавиши Win+R, ввести control и нажать Enter. А можно сразу перейти к 4-му шагу, нажав Win+R и введя UserAccountControlSettings
  2. В панели управления вверху справа в поле «Просмотр» вместо «Категории» установите «Значки», а затем откройте пункт «Учетные записи пользователей». Учетные записи пользователей в панели управления
  3. В следующем окне нажмите «Изменить параметры контроля учетных записей». Изменить параметры контроля учетных записей
  4. Далее вы можете вручную задать параметры UAC или отключить контроль учетных записей Windows 10, достаточно выбрать один из вариантов настроек работы UAC, каждый из которых пояснён далее. Отключение контроля учетных записей в панели управления

Возможные варианты настроек контроля учетных записей в панели управления от верхнего к нижнему:

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

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

Изменение параметров контроля учетных записей в редакторе реестра

Отключение UAC и выбор любого из четырех вариантов работы контроля учетных записей Windows 10 возможен и с помощью редактора реестра (чтобы запустить его нажмите Win+R на клавиатуре и введите regedit).

Параметры работы UAC определяются тремя ключами реестра, находящимися в разделе

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

Включение и отключение UAC в редакторе реестра

Перейдите в этот раздел и найдите следующие параметры DWORD в правой части окна: PromptOnSecureDesktop, EnableLUA, ConsentPromptBehaviorAdmin. Для полного отключения контроля учетных записей достаточно изменить значение параметра EnableLUA на 0 (ноль), закрыть редактор реестра и перезагрузить компьютер.

Однако, когда вы меняете параметры UAC в панели управления, сама Windows 10 оперирует тремя параметрами одновременно и делает это несколько иначе (хотя предыдущий метод проще и быстрее). Далее привожу значения каждого из ключей PromptOnSecureDesktop, EnableLUA, ConsentPromptBehaviorAdmin в том порядке, как они указаны для разных вариантов оповещений контроля учетных записей.

  1. Всегда уведомлять — 1, 1, 2 соответственно.
  2. Уведомлять при попытках приложений изменить параметры (значения по умолчанию) — 1, 1, 5.
  3. Уведомлять без затемнения экрана — 0, 1, 5.
  4. Отключить UAC и не уведомлять — 0, 1, 0.

Отключение UAC в командной строке

Быстрый способ полностью отключить контроль учетных записей — использовать командную строку, для этого:

  1. Запустите командную строку от имени администратора, в Windows 10 для этого можно начать вводить «Командная строка» в поиск на панели задач, а когда найдется нужный результат — либо нажать по нему правой кнопкой мыши и выбрать нужный пункт меню, либо выбрать «Запуск от имени администратора» в панели справа.
  2. Введите команду (нажав Enter после ввода)

reg ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

По своей сути этот метод является вариантом способа с редактором реестра, который описан выше: просто нужный параметр изменяется с помощью указанной команды.

Как отключить контроль учетных записей UAC в редакторе локальной групповой политики Windows 10

Этот метод подойдёт для Windows 10 Pro и Enterprise, где присутствует редактор локальной групповой политики. Шаги будут следующими:

  1. Нажмите клавиши Win+R на клавиатуре, введите gpedit.msc и нажмите Enter.
  2. В редакторе перейдите к разделу «Конфигурация компьютера» — «Конфигурация Windows» — «Параметры Безопасности» — «Локальные политики» — «Параметры безопасности».
  3. В правой панели найдите параметр «Контроль учетных записей: все администраторы работают в режиме одобрения администратором» и дважды нажмите по нему. Настройки UAC в gpedit
  4. Установите параметр в значение «Отключен» и нажмите «Ок». Отключить контроль учетных записей в редакторе локальной групповой политики

Перезагрузка компьютера обычно не требуется.

Видео

В завершение еще раз напомню: я не рекомендую отключать контроль учетных записей ни в Windows 10 ни в других версиях ОС, если только вы абсолютно точно не знаете, для чего вам это нужно, а также являетесь достаточно опытным пользователем.

А вдруг и это будет интересно:

  • Лучшие бесплатные программы для Windows
  • MinerSearch — поиск и удаление майнера в Windows
  • Program в автозагрузке Windows — что это и можно ли удалить?
  • SSD определяется как HDD или наоборот в Windows — решение
  • Не удалось запустить службу Windows Audio на Локальный компьютер — как исправить?
  • Ошибка DXGI ERROR DEVICE HUNG — как исправить?
  • Windows 11
  • Windows 10
  • Android
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Установка с флешки
  • Настройка роутера
  • Всё про Windows
  • В контакте
  • Одноклассники

    Fedor 20.03.2020 в 11:44

  • Dmitry 20.03.2020 в 15:37

Нет. Но есть такой способ обхода: создаем задание в планировщике заданий для выполнения этой программы с наивысшими правами, а потом создаем ярлык для запуска этого задания по имени:

schtasks /run /tn "Имя задания"
  • Илья 24.10.2021 в 11:19
schtasks /run /tn "Имя задания"
  • Dmitry 20.12.2020 в 10:11
  • Игорь Николаевич 24.12.2020 в 02:04
  • Dmitry 24.12.2020 в 09:56
  • Dmitry 13.10.2021 в 11:14
  • Илья 24.10.2021 в 10:40
  • Dmitry 24.10.2021 в 12:53

Здравствуйте. Можно попробовать такой метод: позволяет запустить приложение, требующее права админа от имени обычного пользователя (но как оно при этом работать будет — неизвестно).
Создаем bat файл:

cmd /min /C "set __COMPAT_LAYER=RUNASINVOKER && start "" полный_путь_к_программе"
  • Илья 24.10.2021 в 13:50

В моём случае было достаточно:

Windows Registry Editor Version 5.00 ; Контроль учетных записей [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Policies\System] "ConsentPromptBehaviorAdmin"=dword:00000000 "PromptOnSecureDesktop"=dword:00000000
  • Dmitry 22.06.2022 в 20:22
  • Артём 22.06.2022 в 21:22
  • Артём 08.07.2022 в 18:51
  • Живые обои на рабочий стол Windows 11 и Windows 10
  • Лучшие бесплатные программы на каждый день
  • Как скачать Windows 10 64-бит и 32-бит оригинальный ISO
  • Как смотреть ТВ онлайн бесплатно
  • Бесплатные программы для восстановления данных
  • Лучшие бесплатные антивирусы
  • Средства удаления вредоносных программ (которых не видит ваш антивирус)
  • Встроенные системные утилиты Windows 10, 8 и 7, о которых многие не знают
  • Бесплатные программы удаленного управления компьютером
  • Запуск Windows 10 с флешки без установки
  • Лучший антивирус для Windows 10
  • Бесплатные программы для ремонта флешек
  • Что делать, если сильно греется и выключается ноутбук
  • Программы для очистки компьютера от ненужных файлов
  • Лучший браузер для Windows
  • Бесплатный офис для Windows
  • Запуск Android игр и программ в Windows (Эмуляторы Android)
  • Что делать, если компьютер не видит флешку
  • Управление Android с компьютера
  • Что такое MPRT в характеристиках монитора?
  • MinerSearch — поиск и удаление майнера в Windows
  • Program в автозагрузке Windows — что это и можно ли удалить?
  • SSD определяется как HDD или наоборот в Windows — решение
  • Не удалось запустить службу Windows Audio на Локальный компьютер — как исправить?
  • Как автоматически скрывать строку меню и Dock в MacOS
  • Ошибка DXGI ERROR DEVICE HUNG — как исправить?
  • Как сбросить Windows на заводские настройки в командной строке
  • Как создать отчет о работе Wi-Fi сети в Windows 11 и 10
  • Устройство tap0901 — что это и как установить драйвер?
  • Клавиши Alt и Win поменялись местами — как исправить?
  • Ошибка 0x80072efd — как исправить?
  • AV Block Remover — убираем блокировку антивирусов и сайтов майнером
  • Ошибка 0x80070643 при обновлении KB5034441 — как исправить?
  • Загрузочная флешка или карта памяти в balenaEtcher
  • Windows
  • Android
  • iPhone, iPad и Mac
  • Программы
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Ноутбуки
  • Wi-Fi и настройка роутера
  • Интернет и браузеры
  • Для начинающих
  • Безопасность
  • Ремонт компьютеров
  • Windows
  • Android
  • iPhone, iPad и Mac
  • Программы
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Ноутбуки
  • Wi-Fi и настройка роутера
  • Интернет и браузеры
  • Для начинающих
  • Безопасность
  • Ремонт компьютеров

Программа требует права администратора для запуска — что это значит?

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

  • Считать значения или внести изменения в критические настройки/параметры операционной системы, например — добавление/удаление записей в реестре или создание новых задач в «Планировщике заданий»;
  • Получить доступ к каким-либо данным на диске, доступ к которым запрещен для учетных записей, не имеющих статус администраторских.
  • Принудительно завершить работу какого-либо запущенного процесса, остановить или внести изменения в параметры запуска системной службы.
  • Запустить системное приложение или службу, для запуска/работы которых также требуются права администратора.

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

  1. Если доступ блокируется операционной системой, а учетная запись пользователя имеет статус администраторской, то программу следует запускать от имени администратора (дело в том, что некоторые приложения в целях безопасности не запускаются от имени администратора даже из-под учетной записи такового).
  2. Запустить программу от имени другого пользователя компьютера, учетная запись которого имеет статус администраторской. Сработает только в том случае, если администратор предоставит пароль от своей учетной записи.

Рассмотрим все на примере Windows 11.

Запуск программ от имени администратора

Здесь все очень просто:

  1. Кликните по запускаемой программе или ее ярлыку на рабочем столе правой кнопкой мыши, затем выберите в контекстном меню пункт «Показать дополнительные параметры»:

Показать дополнительные параметры

  1. Откроется расширенное контекстное меню — выберите в нем пункт «Запуск от имени администратора»:

Запуск от имени администратора

Чтобы постоянно не проделывать вышеописанные действия, можно указать системе всегда запускать программу от имени администратора. Для этого:

  1. Откройте окно свойств запускаемой программы, выбрав в контекстном меню пункт «Свойства» либо нажав комбинацию клавиш «Alt + Enter» после выделения значка/ярлыка приложения мышкой.
  2. В окне свойств откройте вкладку «Совместимость», затем установите галочку напротив элемента «Запускать программу от имени администратора» и нажмите «ОК»:

Всегда запускать программу от имени администратора

Запуск программы от имени другого пользователя

Как отмечалось выше, данный способ сработает в случае, если известно имя и пароль от учетной записи администратора компьютера. Действия следующие:

  1. Нажмите и удерживайте клавишу «Shift», а затем выполните первый шаг из предыдущей инструкции.
  2. В отобразившемся контекстном меню должен появиться дополнительный пункт — «Запуск от имени другого пользователя» — выберите его:

Запуск программы от имени другого пользователя

  1. Откроется новое окно, в которое нужно вписать имя учетной записи администратора и пароль от нее, затем нажать кнопку «ОК»:

Как установить программу без прав Администратора в Windows

Как установить программу без прав администратора

Если какая-то программа или игра требует прав администратора для установки на компьютер, а их у вас нет, иногда всё-таки можно решить проблему и выполнить установку. Есть нюансы, но не всегда критичные.

В этой инструкции подробно о способе выполнить установку программы не имея прав Администратора в Windows 11, Windows 10 и других версиях системы.

Установка программы без прав и ввода пароля учетной записи Администратора

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

Запрос контроля учетных записей для установки программы

Появление запроса можно обойти и во многих случаях это позволяет выполнить установку программы. Порядок действий, если речь идёт об однократной установке:

  1. Запустите командную строку, для этого в поиске на панели задач начните набирать «Командная строка» и выберите нужный результат, либо нажмите клавиши Win+R на клавиатуре, введите cmd и нажмите Enter.
  2. В командной строке введите команду
set __COMPAT_LAYER=RunAsInvoker

и нажмите Enter.

  • Введите путь к файлу установщика и нажмите Enter (либо просто перетащите файл на окно командной строки, чтобы вставить полный путь к нему). Запуск установки программы без прав администратора
  • Если всё прошло гладко, установка программы должна запуститься, и её можно продолжить, с учётом описанных далее нюансов. Процесс установки без прав администратора
  • А теперь о важных особенностях такой установки: команда, введённая на втором шаге, не даёт нам прав администратора в системе, а лишь убирает запрос контроля учетных записей.

    • Главное последствие этого при установке программ описанным способом— невозможность устанавливать их в защищенные системные папки. В последних версиях Windows это, в том числе, папка Program Files, то есть придется создавать свою папку для устанавливаемых программ в расположении, где это разрешено.
    • Также установщик не сможет прописать параметры в реестр «для всех пользователей», что для некоторых программ может привести к их неправильной работе, для некоторых других, как для архиватора из примера выше — невозможности прописать ассоциации файлов и добавить пункты в контекстные меню папок и файлов (хотя сама программа исправно работает).
    • Удалить установленные показанным способом программы, не имея прав администратора не получится через «Программы и компоненты». Для удаления потребуется тем же методом запускать файл удаления (uninstall) из папки программы.
    set __COMPAT_LAYER=RunAsInvoker && start "" %1

    и в дальнейшем запускать такие установщики и программы простым перетаскиванием установщика на созданный файл .bat.

    Скрипт для установки без прав администратора

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

    А вдруг и это будет интересно:

    • Лучшие бесплатные программы для Windows
    • Что такое MPRT в характеристиках монитора?
    • MinerSearch — поиск и удаление майнера в Windows
    • Program в автозагрузке Windows — что это и можно ли удалить?
    • SSD определяется как HDD или наоборот в Windows — решение
    • Не удалось запустить службу Windows Audio на Локальный компьютер — как исправить?
    • Windows 11
    • Windows 10
    • Android
    • Загрузочная флешка
    • Лечение вирусов
    • Восстановление данных
    • Установка с флешки
    • Настройка роутера
    • Всё про Windows
    • В контакте
    • Одноклассники

      Данил 05.02.2023 в 11:47

    • Dmitry 06.02.2023 в 15:15
    • Dmitry 27.03.2023 в 08:20

    Здравствуйте.
    OBS можно скачать в виде архива, не требующего установки

    https://github.com/obsproject/obs-studio/releases
    • Назик 16.08.2023 в 05:56
    • Dmitry 01.04.2023 в 09:19

    [Конспект админа] Что делать, если программа хочет прав администратора, а вы нет

    К сожалению, в работе сисадмина нет-нет да и приходится разрешать пользователям запускать всякий софт с админскими правами. Чаще всего это какие-нибудь странные китайские программы для работы с оборудованием. Но бывают и другие ситуации вроде небезызвестного bnk.exe.

    Выдавать пользователю права администратора, чтобы решить проблему быстро и просто, противоречит нормам инфобезопасности. Можно, конечно, дать ему отдельный компьютер и поместить в изолированную сеть, но — это дорого и вообще…

    Попробуем разобрать решения, которые позволят и программу запустить, и безопасника с финансистом не обозлить.

    Ну, и зачем тебе права?

    Программа может запрашивать права администратора условно в двух случаях:

    1. Когда хочет получить доступ туда, куда «простым смертным» нельзя: например, создавать файлы в системных каталогах.
    2. Когда программу скомпилировали со специальным флагом «Требовать права администратора».

    С первым случаем все понятно: берем в руки замечательную программу Марка Руссиновича Process Monitor, смотрим, что происходит, и куда программа пытается залезть:

    Куда это лезет этот 7Zip?

    И по результатам исследования выдаем права пользователю на нужный каталог или ветку реестра.

    Сложнее, если случай клинический, и так просто выдать права не получится: например, программа требует сильного вмешательства в работу системы вроде установки драйверов. Тогда придется придумывать всякий колхоз, про который речь пойдет в последнем разделе статьи. Пока подробнее освещу второй случай — когда стоит флажок.

    Если сильно упростить, то в специальном манифесте программы (к слову, установщики — это тоже программы) могут быть три варианта запуска:

    • asInvoker. Программа запускается с теми же правами, что и породивший ее процесс (как правило, это explorer.exe c правами пользователя);
    • highestAvailable. Программа попросит максимально доступные пользователю права (у администратора появится окно с запросом повышения UAC, у пользователя — нет);
    • requireAdministrator. Программа будет требовать права администратора в любом случае.

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

    Нет, не будет тебе прав

    В системе Windows, начиная с Vista, появилась служба UAC, которая помимо прочего отвечает за запросы программ на повышение прав. Не все программы «переваривали» работу с этой службой. Поэтому в системе был доработан механизм совместимости приложений, позволяющий прямо задать программе ее поведение — запрашивать права или нет.

    Простейшим вариантом работы с этим механизмом будет использование переменных среды.

    Рассмотрим пример с редактором реестра. Действительно, запуская regedit.exe под администратором, мы получаем запрос на повышение прав:

    Запрос повышение прав.

    Если же мы запустим редактор реестра из консоли, предварительно поменяв значение переменной среды __COMPAT_LAYER на:

    set __COMPAT_LAYER=RUNASINVOKER 

    То запроса UAC не будет, как и административных прав у приложения:

    Бесправный редактор реестра.

    Этим можно пользоваться, запуская программы батниками или добавляя контекстное меню через реестр. Подробнее читайте в материале How to Run Program without Admin Privileges and to Bypass UAC Prompt?

    С конкретным примером такой неприятной программы можно столкнуться при загрузке классификаторов банков из 1С с сайта РБК по ссылке http://cbrates.rbc.ru/bnk/bnk.exe. Если обновление классификаторов отдается на откуп самим пользователям и нет возможности поменять загрузку на bnk.zip (а современные 1С это поддерживают), то приходится придумывать костыли. Ведь bnk.exe — самораспаковывающийся архив, в котором зачем-то прописано «Требовать права администратора».

    Поскольку ярлычками тут обойтись не выйдет, ведь 1С сама скачивает файл и запускает его, то придется применять тяжелую артиллерию — Microsoft Application Compatibility Toolkit.

    Документация к ПО, как обычно, доступна на официальном сайте, загрузить можно как часть Windows Assessment and Deployment Kit. Сам процесс решения проблемы несложен.

    Необходимо поставить утилиту, запустить Compatibility Administrator и создать Application Fix в новой или имеющейся базе данных:

    Создаем исправление приложения.

    Имя и издатель значения не имеют. Имеет значение только расположение файла — тут нужно указать реальный проблемный bnk.exe (где он будет лежать на самом деле — не важно).

    Далее необходимо в списке исправлений выбрать RunAsInvoker.

    Выбираем нужный фикс.

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

    Созданный фикс для bnk.exe.

    После этого достаточно будет установить базу данных, щелкнув по ней правой кнопкой и выбрав Install. Теперь пользователи смогут сами грузить классификаторы банков.

    Все становится хуже, если приложению действительно нужны права админа. Тогда добавление прав на системные объекты и исправления не помогают.

    Ну ладно, держи права

    Казалось бы, самым очевидным решением для запуска нашего странного ПО выглядит использование встроенной утилиты Runas. Документация доступна на сайте Microsoft.

    Ну, посмотрим, что из этого выйдет.

    runas /savecred /user:Администратор "C:\Program Files\7-Zip\7zFM.exe" 

    Действительно, RunAs запустит 7zip с правами учетной записи «Администратор», спросит пароль и запомнит его. Потом ярлык с такой строкой запуска будет запускать 7zip под Администратором без вопросов.

    )

    Есть один существенный недостаток: пароль запоминается на уровне системы, и теперь, используя команду Runas, можно будет запускать абсолютно любую программу. Это мало чем отличается от прямого предоставления админских прав сотрудникам, так что использовать это решение не стоит.

    Зато runas может быть полезен, когда сотрудник знает пароль администратора, но работает под ограниченной учетной записью (по идее так должен делать каждый системный администратор).

    Если мы начали с консольных команд, то перейдем к более высокоуровневым скриптам. Интересное решение было предложено в статье «Планктонная Windows», где упомянутый выше Runas обвязывался js-скриптом и пропускался через обфускатор. У решения есть и очевидный минус — скрипт можно раскодировать.

    Чуть более интересным методом в 2к20 являются возможности PowerShell и его работа с паролями. Подробнее можно почитать в материале «Защита и шифрование паролей в скриптах PowerShell».

    Если вкратце: в PS работа с паролями производится через специальный тип данных SecureString и объект PSCredential. Например, можно ввести пароль интерактивно:

    $Cred = Get-Credential 

    Затем сохранить пароль в зашифрованном виде в файл:

    $Cred.Password | ConvertFrom-SecureString | Set-Content c:\pass.txt 

    И теперь использовать этот файл для неинтерактивной работы:

    $username = "Domain\Администратор" $pass = Get-Content C:\pass.txt | ConvertTo-SecureString $creds = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $pass 

    К сожалению, файл этот можно использовать только на том ПК, на котором его создали. Чтобы этого избежать, можно сделать отдельный ключ шифрования. Например так:

    $AESKey = New-Object Byte[] 32 [Security.Cryptography.RNGCryptoServiceProvider]::Create().GetBytes($AESKey) $AESKey | out-file C:\password_aes.key 

    Теперь при помощи этого ключа пароль можно зашифровать:

    $Cred.Password| ConvertFrom-SecureString -Key (get-content C:\password_aes.key )| Set-Content C:\pass.txt 
    $pass = Get-Content C:\pass.txt | ConvertTo-SecureString -Key (get-content C:\password_aes.key) 

    К сожалению, с безопасностью дела обстоят так же печально: утащить пароль не составляет трудностей, если есть доступ к файлу с ключом шифрования и зашифрованным паролем. Да, можно добавить обфускации и скомпилировать скрипт в .exe вместе с нужными файлами. Но нужно понимать, что это — полумеры.

    В свое время я использовал для решения подобных задач свой любимый AutoIt, где компилировал скрипт с командой RunAs и радовался… До тех пор, пока не узнал, что AutoIt (особенно старых версий) декомпилируется на раз-два.

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

    На свете существует несколько сторонних решений, призванных решить задачу. Остановлюсь на парочке из них.

    Пожалуй, одна из самых известных утилит — это AdmiLink, разработанная Алексеем Курякиным для нужд ядерной физики. Программа и принципы ее работы описаны на официальном сайте. Я, как обычно, позволю себе более краткое описание.

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

    Основное окно программы.

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

    Второй модуль называется AdmiRun и представляет из себя консольную утилиту. Она умеет запускать приложения от имени администратора, получив в качестве одного из параметров строку, созданную через AdmiLink. В строке шифруется имя пользователя и пароль, при этом участвует и путь к программе.

    На первый взгляд все выглядит безопасно, но, к сожалению, код программ закрыт, и насколько можно доверять разработчику — вопрос.

    Третий модуль — AdmiLaunch — отвечает за запуск окон в разных режимах, и он используется для запуска AdmiRun, если создавать ярлык через AdmiLink.

    В целом, решение проверено годами и поколениями отечественных системных администраторов. Но добавлю и альтернативу из-за рубежа.

    RunAsRob — довольно интересное ПО за авторством немецкого разработчика Оливера Хессинга (Oliver Hessing). В отличие от AdmiLink, ПО устанавливается как служба, запускаемая под привилегированной учетной записью (администратора или системы). Как следствие, подготовленный ярлык обращается к службе, которая уже в свою очередь запускает заданное ПО.

    Особенность программы в том, что есть возможность авторизовать не только программы, но и папки (включая сетевые). А хранение настроек в реестре позволило добавить шаблоны групповых политик, примерно как мы писали в статье «Погружение в шаблоны и приручение GPO Windows». Благодаря этому при необходимости настройки можно применять прямо из Active Directory.

    Основное окно программы.

    Программа богато документирована на официальном сайте.

    У этого автора есть еще и программа RunAsSpc, позволяющая запускать исполняемые файлы под правами другого пользователя, передавая учетные данные через зашифрованный файл.

    Мне остается только добавить, что это ПО бесплатно только для личного использования.

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

    Запускаем cmd.exe прямо из редактора реестра.

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

    А вам приходилось городить странные костыли? Предлагаю делиться историями в комментариях.

    • windows
    • ограничение прав
    • китайский софт
    • безопасность должна быть безопасной

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *