Как запретить доступ к файлам .dll на веб-сайте (как на IIS 6, так и на 7) - PullRequest
1 голос
/ 06 января 2009

Если я использую URL вроде http://mysite/myfolder/myfile.dll,, я получаю диалоговое окно «Хотите открыть или сохранить этот файл». Конечно, я не хочу, чтобы люди могли скачивать и разбирать наши библиотеки. Как я могу лишить людей доступа к таким файлам напрямую?

Ответы [ 5 ]

4 голосов
/ 06 января 2009

Обычно это запрещено по умолчанию. Если вы зайдете в диспетчер IIS и отредактируете веб-сайт, вам необходимо снять флажок «Доступ к источнику сценария». DLL также должна быть в списке запрещенных расширений файлов.

1 голос
/ 06 января 2009

Краткий ответ: в корне сети не должно быть файлов, которые вы не хотите обслуживать.

Я лично не знаю IIS 6 или 7, но в Apache каталог обозначается как корень сети, например, \ site \ htdocs, и ничто над ним не доступно снаружи. Если вы храните файлы DLL вне этой иерархии, они становятся недоступными.

0 голосов
/ 27 августа 2011

Если по каким-либо причинам сопоставления сценариев в IIS не могут быть изменены, HttpForbiddenHandler можно использовать

0 голосов
/ 06 января 2009

Отрицание всех dll является радикальным на сайте asp.net, поскольку Silverlight и т. Д. Используют клиентские dll, которые должны быть доступны для загрузки клиентским браузером.

Вы можете использовать IIS Management Console или Management API для отключения аутентификации в файле или каталоге dll.

Просто снимите все опции аутентификации, и доступ будет запрещен.

0 голосов
/ 06 января 2009

Установите соответствующие права доступа к файлам Windows и права доступа.

например. Когда вы используете asp.net, вы должны запретить доступ к .dll для всех пользователей, кроме учетной записи ASPNET.

! У учетной записи IUSR_xxx не должно быть прав на вашу .dll!

...