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

Ограничить доступ к поддомену с помощью web.config на IIS7?

Мне нужно защитить паролем поддомен "dev" на сервере с помощью файла web.config в IIS7. У меня нет доступа ни к чему, кроме файлов и web.config, поэтому, к сожалению, я не могу устанавливать модули или что-то еще. Я проверил около 6 других ответов, и ни один из них, похоже, не работает для того, что мне нужно, или вообще в этом отношении.

Поддомен не является подпапкой корневого домена, папка, содержащая поддомен, является родственником корневого домена, поэтому это похоже на «account / domain.com» и «account / dev.domain.com».

Меня не волнует, использует ли он пароль, IP-адрес или cookie или что-то еще, я просто хочу защитить домен, чтобы только я мог просматривать его, пока я разрабатываю его.

Мне удалось защитить поддомен, создав отдельный файл web.config, находящийся в корневом веб-каталоге поддомена (который физически существует как подкаталог в корневом домене). Я предполагаю, что это решение будет работать как для поддоменов, так и для основных подкаталогов домена.

В файле web.config я добавил следующее. Я удалил посторонние / не связанные директивы, удаленные для ясности, но хотел показать полную структуру xml файла web.config:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <security>      
            <authentication>      
                <anonymousAuthentication enabled="false" />      
                <basicAuthentication enabled="true" />           
            </authentication>      
        </security>
    </system.webServer>
</configuration>

Важной частью было добавление двух директив аутентификации в раздел аутентификации (который находится в конфигурации> system.webServer> security).

Обратите внимание, что этот метод требует, чтобы я использовал мой основной "серверный" логин, предоставленный службой хостинга, и я не мог вручную указать имя пользователя и пароль, которые будут использоваться.

Если вам нужно быстро защитить подкаталог или поддомен на сервере IIS7, это должно помочь. Я считаю, что учетные данные, которые вам понадобятся, - это те, которые вы используете для доступа к FTP-серверу, хотя я не уверен, совпадают ли они с учетными данными «панели управления хостингом» для всех или только для моего хоста.