Я создаю сценарий автоматического развертывания (в виде файла bat). Наши приложения - это в основном службы Windows. Я планирую использовать SC CREATE для создания сервиса. Проблема заключается в хранении пароля в виде открытого текста в файле сценария. Есть ли способ зашифровать пароль и перейти к sc create?
Также есть ли способ пропустить имя пользователя и пароль и запустить службу?
Я предполагаю, что это внутреннее приложение, поскольку вы знаете, что хотите встроить учетные данные, а не позволять заказчику выбирать их при установке.
В Windows 7 / Windows server 2008 R2 или выше вы можете использовать Управляемые учетные записи служб. Это учетные записи, которые по своей природе не имеют известного вам пароля. (Они действуют как учетные записи компьютеров и периодически автоматически меняют собственный пароль.)
Вам нужно создать учетные записи, связать их с компьютером и установить их на компьютер (три команды PowerShell). Их учетные записи также не могут охватывать несколько компьютеров (до 2012 года и gMSA).
Я не знаю, что вы используете для управления рабочими станциями помимо этого пакетного сценария, или сколько рабочих станций у вас есть, но вы можете использовать какую-то переменную среды как часть имени MSA для возможности сценария. В случае рабочей станции с именем SOME-PC
с MSA называется SOME-PC-YOURSERVICE
, установка учетной записи будет запускать команду PowerShell Install-ADServiceAccount -Identity SOME-PC-YOURSERVICE
на SOME-PC
рабочая станция.
После создания и установки MSA на рабочей станции вам не нужно будет вводить пароль при указании учетной записи для запуска службы.