Member 12586674 Ответов: 1

Ошибка при подключении к powershell с помощью C#


Я пытаюсь подключиться к powershell с помощью C#. Но при подключении я получаю следующую ошибку при попытке открыть runspace.

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

Ниже приведен мой код.

Что я уже пробовал:

string shellUri = "http://schemas.microsoft.com/powershell/Microsoft.PowerShell";
            PSCredential remoteCredential = new PSCredential("Username", StringToSecureString("Password"));
            WSManConnectionInfo connectionInfo = new WSManConnectionInfo(false, "Server IP", 5985, "/wsman", shellUri, remoteCredential);

            Runspace runspace = RunspaceFactory.CreateRunspace(connectionInfo);

            runspace.Open();

            Pipeline pipeline = runspace.CreatePipeline();

            Command newMailBox = new Command("New-Mailbox");

            newMailBox.Parameters.Add("Name", "TestName1");
            newMailBox.Parameters.Add("Alias", "TestName1");
            newMailBox.Parameters.Add("database", "Mailbox Database 1406738839");
            newMailBox.Parameters.Add("DisplayName", "TestName1");
            newMailBox.Parameters.Add("UserPrincipalName", "TestName1@test.com");
            newMailBox.Parameters.Add("OrganizationalUnit", "ou=myorg,dc=ad,dc=lab");
            newMailBox.Parameters.Add("FirstName", "TestName1");

            pipeline.Commands.Add(newMailBox);

            Collection<psobject> result = pipeline.Invoke();

Richard MacCutchan

Сообщение об ошибке говорит вам, что исследовать, ничего общего с вашим кодом.

Member 12586674

Что именно мне нужно сделать. Нужно ли менять настройки / отключать брандмауэр на сервере?
Я попытался изменить настройку "доверенный хост", но она не работает.

Richard MacCutchan

Я понятия не имею, что происходит между вашими двумя системами, поэтому даже не могу догадаться. Вам нужно выяснить, почему соединение блокируется.

1 Ответов

Рейтинг:
2

ZurdoDev

Как указано в комментариях, ошибка, по-видимому, не является проблемой с вашим кодом, а скорее чем-то блокирующим связь. Возможно, ip-адрес сервера неправильный, или порт, или учетные данные, или у вас проблема с брандмауэром. Вам придется пройти через все это, чтобы понять это с вашей стороны.