Ошибка с кодом олицетворения Windows в файле webconfig - PullRequest
2 голосов
/ 18 февраля 2012

У меня есть следующий раздел, объявленный в файле webconfig, чтобы разрешить олицетворение, я открыл общий доступ к папке для общего доступа в сети на другом компьютере

<system.web>
    <compilation debug="true" targetFramework="4.0" />
    <authentication mode="Windows"/>
    <identity impersonate="true" userName="******" password="*****"/>

.........
..........

когда я запускаю приложение, выдается ошибка «1004 *»

Ошибка конфигурации Описание: во время обработки файла конфигурации, необходимого для обслуживания этого запроса, произошла ошибка. Пожалуйста, просмотрите подробности конкретной ошибки ниже и измените файл конфигурации соответствующим образом.

Сообщение об ошибке Parser: не удалось создать токен пользователя Windows из учетных данных, указанных в файле конфигурации. Ошибка операционной системы 'Ошибка входа в систему: неизвестное имя пользователя или неверный пароль.

Страница Aspx: У меня есть образец страницы aspx, где у меня есть следующий код для перемещения файла с локальной машины на другую машину в сети, которая работает через олицетворение

protected void Page_Load(object sender, EventArgs e)
 {
 File.Copy(@"C:\temp\CloudURL.txt", @"\\RemoteMachine\D$\temp\CloudURL.txt", true);
}    

Ответы [ 2 ]

5 голосов
/ 12 марта 2014

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

Я использую Windows 8.1 и IIS 7, и у меня было то же сообщение, что и у автора.

Вот шаги, которые я выполнил для решения проблемы:

1) Если он еще не установлен в Windows, установите пароль для учетной записи, чтобы он совпадал с информацией, содержащейся в файле web.config

Перейти к ПКНастройки -> Учетные записи -> Параметр входа и установите пароль

2) Добавить проверку подлинности Windows в IIS Функция Windows

a) Щелкните правой кнопкой мыши логотип Windows внижний левый угол

b) Нажмите «Панель управления»

c) Нажмите «Программы»

d) Нажмите «Включить или отключить функции Windows»

e) В разделе «Информационные службы Интернета» -> «Службы всемирной паутины» -> «Безопасность» установите флажок «Аутентификация Windows»

3) Перезагрузите компьютер

4) В диспетчере IIS в группе «IIS» нажмите «Аутентификация»

5) Убедитесь, чтоСтатус «Олицетворение ASP.Net» и «Аутентификация Windows» включены

6) Перезагрузите компьютер и перезапустите решение

Также выполнитеубедитесь, что в вашей олицетворенной строке web.config содержится такой домен:

<identity impersonate="true" userName="Domain\user" password="password" />

4 голосов
/ 18 февраля 2012

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

Вы используете доменное имя?

<identity impersonate="true" userName="domain\user" password="password" />

Все остальное в вашей настройке кажется правильным.

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

echo %userdomain%
...