3

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

У меня есть простой файл bat, взятый из https://stackoverflow.com/questions/4051883/batch-script-how-to-check-for-admin-rights. Он проверяет, был ли скрипт bat запущен как пользователь, просто дважды щелкнув по нему, или он был запущен как «Запуск от имени администратора». Я проверил его, и он отлично работает на моем 64-битном ноутбуке с Windows 8.1 Home с правами администратора. Когда я дважды щелкаю, это указывает на то, что он не был запущен из командной строки с повышенными правами, и говорит иначе, когда «Запуск от имени администратора».

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

Однако на моем 32-битном Windows 7 Ultimate он ведет себя не так! Когда я просто дважды щелкаю по нему, он все еще работает от имени администратора. Это проблема безопасности, и есть ли способ установить ее на уровень пользователя по умолчанию?

В моей панели управления UAC выключен. Также обратите внимание, что я не создаю / не запускаю какой-либо ярлык, установите его всегда «Запуск от имени администратора»

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


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

@echo off
openfiles > NUL 2>&1 
if NOT %ERRORLEVEL% EQU 0 goto NotAdmin 
echo Hello from elevated command prompt 
goto End 
:NotAdmin 
echo This command prompt is NOT ELEVATED
:End
pause
exit 

1 ответ1

0

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

Начиная с Windows Vista (и на момент написания этой статьи, включая Windows 10) в конфигурации по умолчанию, приложения, запускаемые со встроенной учетной записью администратора, выполняются с полными административными привилегиями. Это связано с тем, что по умолчанию для политики безопасности "Режим одобрения администратором" установлено значение « Отключено»:

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

Варианты:

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

  • Отключено (По умолчанию) Встроенная учетная запись администратора запускает все приложения с полными правами администратора.


Как изменить настройки режима одобрения администратором

Если у вас установлена профессиональная / бизнес / корпоративная / Ultimate версия Windows: вы можете изменить этот параметр, отредактировав локальную групповую политику:

  1. Нажмите Пуск, введите secpol.msc в поле Поиск программ и файлов и нажмите клавишу ВВОД.

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

  3. В дереве консоли разверните Локальные политики и выберите Параметры безопасности.

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

  5. На странице свойств сделайте свой выбор и нажмите кнопку ОК.

Если у вас есть домашняя или начальная версия Windows: у вас нет доступа к secpol.msc и, следовательно, вы не можете редактировать локальную политику безопасности. Однако этот ответ суперпользователя указывает нам на другую, к счастью, все еще доступную ссылку на askvg.com, которая объясняет, как изменить настройки в реестре:

  1. Введите regedit в поле поиска RUN или меню Пуск и нажмите Enter. Откроется редактор реестра. Теперь перейдите к следующему ключу:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies

  2. В разделе Политики ключей найдите ключ с именем « Система ». Если его нет, создайте его, щелкнув правой кнопкой мыши на ключе Policies, выберите « New -> Key » и дайте ему имя « System ».

  3. Теперь выберите System key и в правой части окна создайте новое значение DWORD, чтобы применить желаемую настройку, как указано в следующем списке:

Контроль учетных записей: режим одобрения администратором для встроенной учетной записи администратора

Значение DWORD - FilterAdministratorToken

Включить - 1
Отключить - 0

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .