- Как получить права администратора в Windows 10 («программа просит права админа, а у меня их нет. Как мою учетку перевести из пользователя в админа»)
- Способы стать администратором (в Windows 10)
- Важные ремарки
- Вариант #1
- Вариант #2
- Запуск программы требующий права администратора под учетной записью обычного пользователя
- Выдача прав на директорию с программой
- Запуск программы под учетной записью админстратора с учетной записи обычного пользователя
- Запуск программы без прав администратора и подавлением запроса UAC
- Зачем обычному приложению могут понадобится права администратора?
- Запуск программы, требующей права администратора, от обычного пользователя
- RunAsInvoker в переменной окружения __COMPAT_LAYER
- Включаем режим RunAsInvoker через манифест exe файла программы
Как получить права администратора в Windows 10 («программа просит права админа, а у меня их нет. Как мою учетку перевести из пользователя в админа»)
Мне необходимо установить одну программу, и для этого нужно поменять кое-какие файлы в system32. Windows 10 не позволяет этого сделать и требует права админа (а у меня их нет. ).
Как мою учетку перевести из обычного пользователя в админа? Помогите.
Наиболее логичный ответ — обратиться к вашему администратору, чтобы он расширил вам права 😉.
Но вообще, конечно, случаи бывают разные: некоторые по случайности удаляют профиль администратора; другие забывают пароль от этого профиля; у третьих — «админ» не вовремя уезжает, или еще что-то.
Ниже рассмотрю несколько вариантов решения подобного вопроса (для самых разных случаев). 👌
Способы стать администратором (в Windows 10)
Важные ремарки
1) Многие начинающие пользователи интересуются администраторскими правами, чтобы запустить под ними какое-нибудь приложение: ту же командную строку или игру (но самое интересное: у них у самих профиль «админа», а не «пользователя»).
В общем, для начала рекомендую вам попробовать просто кликнуть правой кнопкой мыши по значку нужного приложения на рабочем столе (или исполняемому файлу EXE) и посмотреть, нет ли там заветного пункта. (👇)
Запуск от имени администратора
2) Если вы хотите включить встроенную учетную запись администратора, которая позволит не обращаться постоянно к функции » Запуск от имени администратора» (как в примере выше 👆) при каждом запуске программ (а будет всегда и всё делать от имени «админа») — можно поступить иначе.
- запустить командную строку с администраторскими правами;
- ввести команду net user администратор /active:yes и нажать Enter (если не сработает: net user administrator /active:yes );
Команда выполнена успешно
далее нужно нажать Win+L (это выход в меню выбора пользователя) и загрузиться под профилем администратора (👇);
Важно! Обратите внимание, что постоянно сидеть и работать полностью с администраторскими правами может быть не безопасно! Даже просто нажав на Win+R — вы заметите, что любая ваша команда будет выполнена с наивысшими правами!
В любом случае я бы рекомендовал заходить под этим профилем только в случае необходимости что-то изменить.
Вариант #1
Теперь к сути : что делать, если нет доступа к профилю администратора и вы сидите под профилем обычного пользователя.
Для этого случая нам понадобиться 👉 загрузочная LiveCD-флешка (я рекомендую взять версию от Сергея Стрельца). Как ее правильно записать и создать — указано в той же статье, ссылка на которую в предыдущем предложении.
Причем, скорее всего (на 98% 😉), создать такую флешку у вас получиться даже с правами обычного пользователя (т.е. не придется искать другой ПК/ноутбук).
После, необходимо подключить эту флешку к USB-порту «проблемного» компьютера и загрузиться с нее (👉 как это сделать (ссылка в помощь для начинающих) ).
Входим в загрузочное меню и загружаемся с флешки
Далее дождаться загрузки Windows с LiveCD-флешки и в меню ПУСК найти и запустить утилиту Windows login Unlocker .
Примечание : если вы создадите LiveCD-флешку отличным способом (от рекомендованного мной выше) — эту утилиту вам придется загрузить отдельно (благо, что интернет в WinPE на LiveCD работает)!
Windows login Unlocker — запускаем утилиту
Затем выбираем проблемную Windows (актуально, если у вас их несколько) и создаем нового пользователя (он по умолчанию будет администратором!).
Создаем нового пользователя админа (new user)
После, перезагружаем ПК/ноутбук — Windows нам предложит выбрать профиль для загрузки (т.к. их у нас будет по крайней мере уже 2).
Разумеется, входим под новым пользователем (под админом). 👇
Заходим под новым пользователем
Далее можете нажать Win+R, и использовать команду NETPLWIZ в окне «Выполнить» .
После этого у вас откроется окно управления учетными записями — выберите свою и поменяйте у нее членство в группах (с пользователя -> в администраторы). Скрины ниже. 👇
Открываем список пользователей
Меняем членство в группах (делаем либо админом, либо простым пользователем)
Вариант #2
В некоторых случаях решить вопрос можно через безопасный режим ( отмечу : не всегда, зависит от ряда параметров вашей ОС. Но если под-рукой нет LiveCD-флешки — то почему не попробовать?).
Что делать по шагам:
- перезагружаем Windows 👉 в безопасном режиме;
- нажимаем Win+R и вводим в строку «открыть» команду NETPLWIZ ;
- далее появится список учетных записей;
- выбираем одну из них и открываем ее свойства ;
- во вкладке «Членство в группах» переводим ползунок в группу «Администраторы» ;
Членство в группах
Если вам помог какой-то способ — напишите об этом в комментариях (заранее благодарю).
Запуск программы требующий права администратора под учетной записью обычного пользователя
В любом предприятии, в котором компьютеры/программное обеспечение обслуживают адекватные люди, обычные пользователи компьютеров не имеют никаких админских прав за ними, что значительно снижает риск удаления важных файлов системы, установку непонятного программного обеспечения и прочих чудес. Однако, некоторые программы упорно не желают работать без прав администратора — и что же делать, если желания давать права администратора компьютера пользователю нет, а необходимость запустить приложение — есть?
Выдача прав на директорию с программой
Часто, права администратора требуются программе для проведения каких-либо операций с файлами в своей папке — например некой Programm‘e нужно записывать данные в свой файл конфигурации в папку, куда она установлена (допустим этот каталог «C:\Program Files (x86)\Programma«). Можно попробовать выдать нужным пользователям полные права на эту папку. Делается это следующим образом:
- Правой кнопкой нажимаете на папке, открываете Свойства
- В Свойствах нужно открыть вкладку Безопасность.
- В зависимости от настроек компьютера там может отображаться либо «Добавить«, либо «Изменить«. В первом случае нужно нажать кнопку «Добавить«, во втором — «Изменить«, после чего скорее всего потребуется ввести данные учетной записи администратора. После этого появится окно с кнопкой «Добавить«, которую и нужно будет нажать.
- После нажатия кнопки «Добавить» добавляем всех нужных пользователей. Для проверки правильность ввода имени пользователя можно воспользоваться кнопкой «Проверить имена«.
- Затем выдаем полные права добавленному пользователю — для этого нужно поставить галочку в поле «Разрешения для. «, пункт «Полные права«.
Запуск программы под учетной записью админстратора с учетной записи обычного пользователя
Для этой цели сгодится программа RunAs, которая идет в составе Windows. Для удобства её использования проще всего будет создать cmd файл, в который следует поместить следующее:
Вместо Домена пользователя и Пользователя вводим данные учетной записи пользователя, который обладает правами администратора в домене, или на компьютере (в таком случае, вместо Домена пользователя следует писать имя компьютера). Вместо Путь к программе соответственно пишем путь к нужному exe файлу.
Сохраняем этот файл, и запускаем. Если все прошло верно, то при первом запуске bat файла, будет запрошен пароль для указанного пользователя, однако уже при повторном запуске никакого запроса пароля не потребуется — для этого используется параметр /SAVECRED. Однако, в таком случае, программа будет запущена не от имени пользователя, который запустил данный файл, а от имени пользователя, чьи данные были указаны параметром /user, что является весьма сомнительным методом, с точки зрения безопасности.
Запуск программы без прав администратора и подавлением запроса UAC
Многие программы при запуске требуют повышения прав (значок щита у иконки), однако на самом деле для их нормальной работы права администратора не требуется (например, вы можете вручную предоставить необходимые права пользователям на каталог программы в ProgramFiles и ветки реестра, которые используются программой). Соответственно, если на компьютере включен контроль учетных записей, то при запуске такой программы из-под непривилегированного пользователя появится запрос UAC и Windows потребует от пользователя ввести пароль администратора. Чтобы обойти этот механизм многие просто отключают UAC или предоставляют пользователю права администратора на компьютере, добавляя его в группу локальных администраторов. Microsoft не рекомендует использовать такие методы, т.к. это снижает безопасность компьютера.
Зачем обычному приложению могут понадобится права администратора?
Права администратора могут потребоваться программе для модификации некоторых файлов (логи, файлы конфигурации и т.д.) в собственной папке в C:\Program Files (x86)\SomeApp). По умолчанию у пользователей нет прав на редактирование данного каталога, соответственно, для нормальной работы такой программы нужны права администратора. Чтобы решить эту проблему, нужно войти на компьютер под администратором и вручную предоставить пользователю (или встроенной группе Users) права на изменение/запись для этого каталога на уровне файловой системы NTFS.
Запуск программы, требующей права администратора, от обычного пользователя
Ранее мы уже описывали, как можно с помощью параметра RunAsInvoker отключить запрос UAC для конкретной программы. Однако этот метод недостаточно гибкий.
Также можно воспользоваться RunAs с сохранением пароля админа /SAVECRED в диспетчере паролей Windows (Credentials Manager). Это также небезопасно, т.к. пользователь может использовать сохранённый пароль учетной записи администратора для запуска других программ.
Рассмотрим более простой способ принудительного запуска любой программы без прав администратора (и без ввода пароля админа) при включенном UAC (4,3 или 2 уровень ползунка UAC).
Для примера возьмем утилиту редактирования реестра — regedit.exe (она находится в каталоге C:\windows\). Обратите внимание на щит UAC у иконки. Данный значок означает, что для запуска этой программы будет запрошено повышение привилегий через UAC.
Если запустить regedit.exe , то перед вами появится окно User Account Contol с запросом пароля пользователя с правами администратора на этом компьютере ( Do you want to allow this app to make changes to your device? ). Если не указать пароль и не подтвердить повышение привилегии, приложение не запустится.
Попробуем обойти запрос UAC для этой программы. Создайте на рабочем столе файл run-as-non-admin.bat со следующим текстом:
cmd /min /C «set __COMPAT_LAYER=RUNASINVOKER && start «» %1″
Теперь для принудительного запуска приложения без прав администратора и подавлением запроса UAC, просто перетащите нужный exe файл на этот bat файл на рабочем столе.
После этого редактор реестра должен запуститься без появления запроса UAC и без ввода пароля администратора. Откройте диспетчер процессов, добавьте столбец Elevated и убедитесь, что в Windows 10 запустился непривилегированный процесс regedit (запущен с правами пользователя).
Попробуйте отредактировать любой параметр в ветке HKEY_LOCAL_MACHINE. Как вы видите доступ на редактирование реестра в этой ветке запрещен (у данного пользователя нет прав на запись в системные ветки реестра). Но вы можете добавлять и редактировать ключи в собственной ветке реестра пользователя — HKEY_CURRENT_USER.
Аналогичным образом через bat файл можно запускать и конкретное приложение, достаточно указать путь к исполняемому файлу.
run-app-as-non-admin.bat
Set ApplicationPath=»C:\Program Files\MyApp\testapp.exe»
cmd /min /C «set __COMPAT_LAYER=RUNASINVOKER && start «» %ApplicationPath%»
Также можно добавить контекстное меню, которое добавляет у всех приложений возможность запуска без повышения прав. Для этого создайте файл runasuser.reg файл, скопируйте в него следующий код, сохраните и импортируйте его в реестр двойным щелчком по reg файлу (понадобятся права администратора).
После этого для запуска любого приложения без прав админа достаточно выбрать пункт “Run as user without UAC elevation” в контекстном меню проводника Windows File Explorer.
RunAsInvoker в переменной окружения __COMPAT_LAYER
Переменная окружения __COMPAT_LAYER позволяет устанавливать различные уровни совместимости для приложений (вкладка Совместимость в свойствах exe файла). С помощью этой переменной можно указать настройки совместимости, с которыми нужно запускать программу. Например, для запуска приложения в режиме совместимости с Windows 7 и разрешением 640×480, установите:
set __COMPAT_LAYER=Win7RTM 640×480
Из интересных нам опций переменной __COMPAT_LAYER можно выделить следующие параметры:
- RunAsInvoker — запуск приложения с привилегиями родительского процесса без запроса UAC;
- RunAsHighest — запуск приложения с максимальными правами, доступными пользователю (запрос UAC появляется если у пользователя есть права администратора);
- RunAsAdmin — запуск приложение с правами администратора (запрос AUC появляется всегда).
Следующий код включает режим RUNASINVOKER для текущего процесса и запускает указанную программу:
start «» «C:\Program Files\MyApp\testapp.exe»
Включаем режим RunAsInvoker через манифест exe файла программы
Как мы уже говорили выше, Windows 10 показывает значок щита UAC у программ, которые для запуска требуют повышение привилегий. Это требование разработчики задают при разработке в специальной секции программы — манифесте.
Вы можете отредактировать манифест exe файла программы и отключить требование запускать программу в привилегированном режиме.
Для редактирования манифеста программы можно использовать бесплатную утилиту Resource Hacker. Откройте исполняемый файл программы в Resource Hacker.
В дереве слева перейдите в раздел Manifest и откройте манифест программы.
Обратите внимание на строки:
Именно благодаря опции requireAdministrator Windows всегда запускает эту программу с правами администратора.
Измените requireAdministrator на asInvoker и сохраните изменения в exe файле.
Обратите внимание, что теперь у иконки программы пропал щит UAC и вы можете запустить ее без запроса прав администратора с привилегиями текущего пользователя.
В этом случае можно заставить программу использовать внешний файл манифеста. Создайте в каталоге с ехе файлом текстовый файл app.exe.manifest (например Autologon.exe.manifest) и скопируйте в него код манифеста из Resource Hacker. Измените requireAdministrator на asInvoker. Сохраните файл.
Чтобы Windows при запуске приложений всегда пробовала использовать внешний файл манифеста, включите специальный параметр реестра:
REG ADD «HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide» /v PreferExternalManifest /t REG_DWORD /d 1 /f
Перезагрузите Windows и убедитесь, что программа использует внешний файл манифеста, в котором указано, что нужно запускаться без прав администратора.