none
Запуск powershell от им Администратора ? RRS feed

  • Общие обсуждения

  • Доброго вечера профи. Из батника нужно запускать скрипт ps1 от им Администратора, что бы у User1 отработал скрипт. Но у меня он отрабатывает от им доменного админского аккаунта, когда спрашиваются Credential (я ввожу учетку domain admin, так же как я вожу когда запускаю вручную). Я вижу это по переменным среды, который использует скрипт. В чем загвоздка?

    PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -NoExit -ExecutionPolicy Bypass -File ""C:\Users\User1\Desktop\script.ps1""' -Verb RunAs}"

    То есть User1 теряется и всё прописывается в доменный админ аккаунт.

    Поясню:

    В ручном варианте, под пользователем User1 я запускаю скрипт script.ps1 от им Администратора, ввожу доменный свой админский логин/пароль, скрипт выполняется правильно под User1 и скрипту всё разрешено.

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

    Чего я не сообразил ? 

     
    • Изменено ole-van-de 25 июня 2020 г. 18:38
    25 июня 2020 г. 18:23

Все ответы

  • ничего не понял

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

    Что скрипт делает-то?


    The opinion expressed by me is not an official position of Microsoft

    25 июня 2020 г. 18:28
    Модератор
  • Да, вот только что подправил выше.
    25 июня 2020 г. 18:29
  • В скрипте допустим строка 

    $env:userprofile

    Которая покажет доменный админский аккаунт а не User1

    • Изменено ole-van-de 25 июня 2020 г. 18:36
    25 июня 2020 г. 18:33
  • Вот всё же, как выполнить скрипт под пользователем User1 но с админскими правами, что бы и Execution policy выключить на время и что бы создать задачу в планировщике задач пользователя User1 и что бы переменные среды были от User1. То есть так, как если бы User1 был в группе лок Администраторов и я бы запустил этот скрипт ps1.
    25 июня 2020 г. 19:09
  • Скрипт будет отрабатывать  в контексте того пользователя под которым запущена консоль исполнения или в контексте пользователя непосредственно указанного в команде. Если необходимо произвести действия для пользователя у которого нет прав на исполнение команд надо использовать GPO или Logon-скрипты в контексте  system или давать права пользователю.

    Надеюсь я понятно написал ))



    30 июня 2020 г. 7:24
  • PavelWhiskey, спасибо за детальный ответ. Я сам думал такой вопрос задавать, но вижу, что уже все разжевали здесь в топике. Поищем GPO
  • короче был лайфхак для запуска скрипта под произвольными креденшелами(в вашем случае это админ) с передачей имени пользователя.

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

    как то так.

    если не совсем понятно, могу расписать подробнее, но мне лениво прям щас это делать:-)

    4 июля 2020 г. 11:06