Аутентификация с помощью форм .NET: Как ограничить доступ к таким ресурсам, как файлы PDF, только для аутентифицированных пользователей - PullRequest
3 голосов
/ 07 ноября 2008

Я использую .net2.0 и IIS6.

При использовании аутентификации на основе форм .net: как ограничить доступ к таким ресурсам, как файлы PDF, только для аутентифицированных пользователей; таким образом, чтобы получить доступ к файлу, скажем mysite.com/mydoc.pdf, сначала необходимо пройти проверку подлинности (перейдите на страницу входа в систему)

Кажется, что по умолчанию защищены только страницы ASPX. Например. чтобы включить .html, я должен был выполнить шаги, описанные здесь .

EDIT

Спасибо, ребята, за очень быстрые ответы, ответ от Keltex отлично сработал для меня, так как мне нужно было быстрое исправление для демонстрационной системы.

Другие ответы также очень интересны, и они будут полезны при работе с производственной системой.

Вы можете написать другие ответы

Ответы [ 4 ]

4 голосов
/ 07 ноября 2008

Необходимо настроить IIS для обработки расширений подстановочных знаков. Таким образом, расширения .pdf & .html будут аутентифицированы. Вот как для IIS6:

http://professionalaspnet.com/archive/2007/07/27/Configure-IIS-for-Wildcard-Extensions-in-ASP.NET.aspx

3 голосов
/ 07 ноября 2008

Вы можете хранить файлы в каталоге, который не доступен напрямую через Интернет, и тогда пользователи должны посетить страницу ASPX с идентификатором, указывающим на файл, который им нужно загрузить. В этот момент вы передаете файл из них.

2 голосов
/ 07 ноября 2008

Создайте httphandler, который проверяет аутентифицированного пользователя перед потоковой передачей документа в браузер. Затем вы можете установить ссылку на странице так, чтобы она указывала на файл с идентификатором документа, а не на файл напрямую.

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

Полезные ссылки: http://msdn.microsoft.com/en-us/library/system.web.ihttphandler

0 голосов
/ 07 ноября 2008

У вас отключен анонимный доступ? если у вас есть только встроенная аутентификация Windows, он должен заблокировать весь доступ, если вы настроите веб-конфигурацию с этими настройками

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...