Почему команда az login не работает в Azure при выполнении с помощью команды power shell, которая запускается из кода точки net? - PullRequest
0 голосов
/ 17 января 2019

У меня есть веб-приложение ASP.Net, которое пытается войти в Azure с помощью команд Power Shell. Для этой цели используется следующий код:

        Runspace runspace = RunspaceFactory.CreateRunspace();
        runspace.Open();
        Pipeline pipeline = runspace.CreatePipeline();
        pipeline.Commands.AddScript("az login -u 'vtripathi@hsdyn.com' -p '********'");
        pipeline.Commands.Add("Out-String");
        var output = pipeline.Invoke();
        string result = output[0].ToString();

Проблема здесь заключается в том, что когда я запускаю это приложение локально в моей системе, ему удается успешно войти в Azure, но при развертывании этого приложения в службе приложений Azure я получаю следующую ошибку:

Server Error in '/' Application.    
The term 'az' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. 

Пожалуйста, подскажите, что может быть не так.

1 Ответ

0 голосов
/ 17 января 2019

Az Login - это команда из интерфейса командной строки Azure, поэтому для ее запуска необходимо установить интерфейс командной строки на компьютере, на котором он запущен. CLI не будет установлен в веб-приложении Azure.

Если вы пишете веб-приложение .net, вы действительно хотите использовать .net Azure API для прямой связи с API-интерфейсом REST Azure, не пытаясь использовать CLI.

...