Запустите сценарий PowerShell на C #, требующий входа в систему

#c#

#c#

Вопрос:

Я ищу способ подключения к O365 / Azure для изменения лицензий пользователей. У меня есть сценарий PowerShell, который я обычно использую, и подключаюсь к нему с помощью

 connect-azure ad 
 

затем он запросит у меня учетные данные, а затем перейдет и назначит лицензию или отменит их назначение. Я очень хочу иметь возможность делать то же самое на C #. Моей первой мыслью было бы запустить сценарий PowerShell, однако он выдает ошибку

 The 'Connect-AzureAD' command was found in the module 'AzureAD', but the module could not be loaded.
For more information, run 'Import-Module AzureAD'
 

Я попытался установить его во время выполнения сценария, однако это не сработало. Короче говоря, у кого-нибудь есть идеи, как я мог бы подключиться к Azure, чтобы изменить лицензию пользователей O365 в моей утилите C #?

Ответ №1:

Я знал, что, как только я спрошу, я разберусь с этим, мне пришлось принудительно импортировать, а затем подключиться, а затем запустить скрипт!!

         Runspace runspace = RunspaceFactory.CreateRunspace();
        runspace.Open();
        Pipeline pipeline = runspace.CreatePipeline();
        pipeline.Commands.AddScript("Import-Module AzureAD -Force;");
        pipeline.Commands.AddScript("Connect-AzureAD");