#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 или исходном коде.