none
POSH передать значения переменных из одного скрипта в другой RRS feed

  • Вопрос

  • Заранее прошу прощения за, возможно, сумбурное изложение и глупые вопросы.

    Стоит задача бэкапить скриптом на POSH рабочие станции на сетевой NAS.

    Бэкап будет делать при помощи Duplicati, которая умеет делать VSS. Применение VSS необходимо из-за того, что на рабочих станциях круглосуточно работает MS Outlook 2010 и иными способами файлы *.pst не сбэкапить.

    Сам скрипт через GPO будет копироваться на локальные машины и запускаться по расписанию.

    Шара на NAS для этих бэкапов открыта на запись под недоменным пользователем. Как спрятать логин/пароль этого пользователя в теле скрипта? Я нашел два не очень надежных способа - первый скомпилировать скрипт в exe при помощи утилит типа ps2exe, второй при помощи Get-Credential.

    Первый способом "не пошел" - скрипт правильно отрабатывает, когда он еще script.ps1, и не работает, когда он уже script.exe - почему понять не могу - просто черное окошко на секунду и всё.

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

    Допустим, на доменном сервере запускается скрипт, в переменных которого есть логин\пароль. Этот скрипт запускает на удаленной машине локальный скрипт бэкапа и передает ему логин\пароль. Скрипт отрабатывает, завершается и "забывает" переданные данные.

    Если такое возможно, пожалуйста, дайте наводки - как из скрипта запустить другой на удаленной машине (имея к ней админские права) и как передать тому скрипту нужные данные?

    Спасибо!

    24 октября 2017 г. 15:07

Все ответы

  • Добрый День.

    Можно параметры скрипта хранить в xml файле.

    Get-Content "D:\xml\Param.xml"

    Не забываем про SecureString:

    Convert​To-Secure​String

    ConvertFrom-SecureString


    так ведь, на разных компьютерах это применимо только с хранением ключа шифрования -Key, что равнозначно хранению пароля в теле скрипта

    24 октября 2017 г. 15:38
  • Добрый День.

    Можно параметры скрипта хранить в xml файле.

    Get-Content "D:\xml\Param.xml"

    Не забываем про SecureString:

    Convert​To-Secure​String

    ConvertFrom-SecureString


    так ведь, на разных компьютерах это применимо только с хранением ключа шифрования -Key, что равнозначно хранению пароля в теле скрипта

    Добрый День.

    Почитайте обсуждение подобное вашему Как передать значение переменной из одного скрипта в другой?


    Я не волшебник, я только учусь MCP CCNA. Если Вам помог чей-либо ответ, пожалуйста, не забывайте жать на кнопку "Пометить как ответ" или проголосовать "полезное сообщение". Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции работодателя. Вся информация предоставляется как есть без каких-либо гарантий. Блог IT Инженера, Twitter, YouTube, GitHub.

    24 октября 2017 г. 15:51
    Модератор