защита маршрута к классическим файлам asp в mvc

#asp.net-mvc-3 #asp-classic

#asp.net-mvc-3 #asp-classic

Вопрос:

Я должен запустить классический проект asp в корневой папке папки mvc.

Как я могу настроить веб-конфигурацию для защиты маршрутов через классические файлы asp?

Я попробовал следующее, но теперь у меня нет доступа ни к чему….

 <location path="Account">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>

<location path="/">
    <system.web>
        <authorization>
            <deny users="?" />
        </authorization>
    </system.web>
</location>
  

Контроллер получит [Авторизовать(пользователей = «*»)], чтобы защитить их от анонимных пользователей.

С уважением, float

Комментарии:

1. Что вы подразумеваете под защитой доступа к классическим файлам asp? Должны ли эти файлы быть видны / выполняться только аутентифицированными пользователями ASP.NET Сайт MVC?

2. Да, все файлы (*.asp, *.pdf-файлы и т.д.) сайта classic asp должны быть доступны только прошедшим проверку подлинности пользователям Страницы MVC.

3. @float, под доступным ты подразумеваешь, что они должны загружаться в виде обычных текстовых файлов или исполняемых файлов?

4. @Darin Dimitrov, файлы asp должны выполняться iis (чтобы аутентифицированный пользователь мог видеть веб-сайт), PDF-файлы, документы и т.д. Должны быть загружаемыми (если аутентифицированный пользователь решит щелкнуть ссылку для скачивания)

5. @float, какую аутентификацию вы используете: basic, forms, NTLM, Digest, …?

Ответ №1:

Я нашел решение своей проблемы. Мне пришлось добавить следующие строки в web.config:

 <configuration>
<system.web>
    <authorization>
        <deny users="?" />
    </authorization>
</system.web>
<!-- allow specific mvc files/folders -->
<location path="Content">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>

<location path="Home">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>

<!-- allow specific asp files/folders -->
<location path="logout.asp">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
</location>
</configuration>