Просмотр дерева в браузере каталогов в Asp.net

#c# #asp.net #iis

#c# #asp.net #iis

Вопрос:

Я использую браузер каталогов с древовидным представлением в своем приложении. Я использую

 DirectoryInfo.GetDirectories()
DirectoryInfo.Getfiles()
  

Мое требование заключается в том, что мне нужно просматривать папки сервера с клиента с помощью этого. Я могу получить доступ к общим дискам также с того же компьютера. Я разместил сайт в IIS6 в виртуальном каталоге. Когда я пытаюсь получить доступ к общему диску с клиента, я его не нахожу. Нужно ли нам что-то делать в IIS? Я пытался предоставить IdentityImpersonate="true" , но все еще получаю ту же проблему.

Комментарии:

1. Есть ли конкретное исключение, которое вы получаете?

2. нет. Диск вообще не отображается

3. я думаю, что довольно сложно получить доступ к данным с клиентского ПК

Ответ №1:

Это проблема двойного перехода. Серверу IIS пришлось бы выполнить делегирование, чтобы переместить ваши учетные данные через 2 перехода (ваш компьютер в IIS — IIS в общий файловый ресурс). Настройка делегирования — сложный процесс, но я давно не пробовал, возможно, диагностика улучшилась. Обычно вы следуете инструкциям по делегированию и все равно получаете отказ в доступе.

Более простым решением является использование явных учетных данных для перехода из IIS в общий файловый ресурс. Недостатком этого является то, что вам нужно указать имя пользователя и пароль учетной записи Windows где-нибудь в вашем web.config или исходном коде.