Я получаю ту же ошибку, описанную здесь:
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, но это не сказало мне ничего полезного.