Ошибка WMI при подключении к IIS7 - PullRequest
1 голос
/ 13 июля 2010

Я получаю ту же ошибку, описанную здесь:

http://forums.iis.net/p/1033115/1700749.aspx

У меня есть командлет PowerShell, который пытается управлять нашим веб-приложением, работающим на Windows Server 2008 с пакетом обновления 2 (SP2) и IIS 7. Первое, что он пытается сделать, это попытаться подключиться к удаленному компьютеру с помощью WMI. Это делается с помощью такого кода:

ConnectionOptions connection = new ConnectionOptions();
connection.Authentication = AuthenticationLevel.PacketPrivacy;
this.iisScope = new ManagementScope(@"\\" + this.Name + @"\root\WebAdministration", connection);
this.iisScope.Connect();

this.Name - имя сервера. Этот код всегда работает (не выдает исключение), но на удаленной машине я получаю эту ошибку в журнале событий Windows:

Доступ к корню \ WebAdministration пространство имен было отказано, потому что пространство имен помечено Требуется шифрование, но скрипт или приложение попыталось подключиться к это пространство имен с аутентификацией уровень ниже Pkt_Privacy. Изменить уровень аутентификации до Pkt_Privacy и запустить скрипт или приложение еще раз.

Но при продолжении выполнения командлета он выполняет некоторые запросы с использованием this.iisScope, и все они выполняются успешно, и эта ошибка больше не встречается. У меня есть предположение относительно того, что происходит, но я не уверен, как это доказать. Я думаю, что он пытается подключиться без конфиденциальности пакета, не удается, а затем пытается использовать конфиденциальность пакета. Я пытался перехватить пакеты с помощью Wireshark, но это не сказало мне ничего полезного.

1 Ответ

0 голосов
/ 10 августа 2010

См. Код в этой статье: http://learn.iis.net/page.aspx/160/writing-powershell-commandlets-for-iis-70/. Вы также можете установить PowerShell v2, использовать get-wmiobject и т. Д. - они исправили эти командлеты в этом выпуске, и теперь вы можете подключаться к поставщикам, которым требуется зашифрованное подключение, например к поставщику IIS WMI.

...