#c# #asp.net #networking #directory
#c# #asp.net #сеть #каталог
Вопрос:
У меня возникли проблемы с доступом к сетевому ресурсу с помощью ASP.net C #.
Я использовал идентификатор в web.config
<identity impersonate="true" userName="username" password="password" />
И изменил файл machine.config. Я также включил олицетворение в IIS.
Я пытаюсь использовать этот код:
System.IO.Directory.CreateDirectory("\\networklocation\test");
И я получаю следующую ошибку:
Сообщение об ошибке синтаксического анализатора: не удалось создать токен пользователя Windows на основе учетных данных, указанных в файле конфигурации. Ошибка из-за сбоя входа в операционную систему: неизвестное имя пользователя или неверный пароль.
Общий сетевой ресурс имеет доступ ко всем пользователям (учетная запись everyone).
Есть идеи, что здесь происходит не так?
Комментарии:
1. Вы могли бы облегчить себе жизнь, переместив сетевое содержимое в путь в вашем веб-приложении.
2. @jrummell существуют веские причины для необходимости доступа к общим сетевым ресурсам из веб-приложения, и я лично успешно сделал это, используя олицетворение идентификатора.
3. Не является ли учетная запись аутентификации на удаленном общем ресурсе удостоверением apppool?
4. @Richard нет, если используется олицетворение.
5. @JustinM. Кейс, я согласен на 100%, я просто говорю, что это все усложняет.
Ответ №1:
Вы указываете правильный домен для пользователя?
<identity impersonate="true"
userName="domainuser"
password="password" />
Комментарии:
1. @user1038885 Можете ли вы войти в систему как этот пользователь с экрана входа в систему Windows, используя те же учетные данные?
Ответ №2:
почему вы используете олицетворение, если активна каждая учетная запись?
удалите раздел олицетворения