У меня есть скрипт powershell, который я вызываю из веб-приложения Visual Studio (C #).У меня настроен пул приложений, и скрипт выполняется.Однако, когда я использую любую команду Invoke-DbaQuery
, использующую -SqlCredential
, она прекрасно работает с консоли powershell, но при вызове из веб-приложения она использует кредиты пула приложений.
Вот некоторый тестовый код:
$mytest = Invoke-DbaQuery -SqlInstance $BackupInstance -Database "master" -SqlCredential $SourceCredential -Query "select suser_name()" -as SingleValue
write-output "I am currently running as: $mytest"
В PowerShell это возвращает:
В настоящее время я работаю как: MYDOMAIN \ myAdUserName
Когда я запускаю его через ИнтернетПриложение, которое я получаю:
В настоящее время я работаю как: MYDOMAIN \ AppPoolServerName $
Я изменил свои учетные данные, чтобы попробовать другого пользователя, и он возвращает этого нового пользователя, когдазапускается из консоли, но все равно имя машины при запуске из Интернета.
Есть идеи, почему это происходит и как это исправить?