Назад | Перейти на главную страницу

Основной вопрос о разрешениях IIS7

У нас есть сайт с файлом:

www.example.com/apis/httpapi.asp

Этот файл используется сайтом внутри для выполнения запросов, соединяющих две системы на сайте вместе (одна - классический ASP, другая - ASP.net). Однако мы не хотим, чтобы публика имела доступ к файлу.

Могу ли я сделать этот файл внутренним только в IIS7.5? Я пробовал переписать для него URL-адрес, но эта перезапись также применяется внутри, поэтому скрипты перестают работать, когда они получают переписанный URL-адрес.

Спасибо за любую помощь!

Есть несколько способов ... Ограничения IP, перезапись URL, защита в коде. Но лучше и безопаснее всего удалить доступ на чтение к файлу.

Если вы можете изменить тип файла на .inc, это по существу заблокирует его. Другой способ - поместить его в папку, доступную только для чтения, для которой удален доступ для чтения. Или вы можете сделать это для одного файла. Единственная проблема, связанная с тем, чтобы сделать это для одного файла, заключается в том, что если он будет переименован в будущем (кто-то забудет), он больше не будет заблокирован.

В IIS7.x способ удаления доступа для чтения находится в Сопоставления обработчиков -> Изменить права доступа к функциям.

Вы можете настроить сам сценарий ASP для проверки полученных запросов на IP-адрес (REMOTE_ADDR) и пропускать только запросы, сделанные с действительных внутренних адресов.