Я пытаюсь интегрировать ASP.NET Security с классическим ASP. Как в следующей статье - http://weblogs.asp.net/scottgu/archive/2007/03/04/tip-trick-integrating-asp-net-security-with-classic-asp-and-non-asp-net-urls.aspx, но у меня IIS 7.0 вместо IIS 6.0, как в примере.Проверка подлинности форм для классического ASP на IIS 7.0
Вы можете найти свой конфигурационный файл ниже (после добавления подстановочных тегов сценария)
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers accessPolicy="Read, Script">
<add name="ISAPI x64" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
<add name="ISAPI x32" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
</handlers>
</system.webServer>
<system.web>
<authentication mode="Forms">
<forms loginUrl="Login.aspx"></forms>
</authentication>
</system.web>
<location path="page.asp">
<system.web>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="default.asp">
<system.web>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
</system.web>
</location>
</configuration>
Но приложение вызывает ASP-страницы без какой-либо аутентификации.
Я раньше не работал с классическим ASP, поэтому я искал любую информацию, которая может мне помочь.
Я нашел еще одну интересующую статью http://support.microsoft.com/kb/891028 - «Защита классических страниц ASP с использованием проверки подлинности форм». Хорошее решение, но в этом случае мне нужно реализовать код безопасности (код сценария ASP) на каждой странице.
И делает ли следующая фраза, что первое решение не будет работать?
Защита классических страниц ASP с проверкой подлинности форм не поддерживается конструкцией, поскольку ASP и ASP.NET использовать различные обработчики ...
Можно ли выбрать мне решение/способ сделать проверку подлинности на основе формы для классический ASP на IIS 7.0?
Да, спасибо, я видел это решение здесь -http: //forums.asp.net/t/1427825.aspx. Я вставил вместо трех тегов модулей и работал одинаково. Знаете ли вы какие-либо недостатки runAllManagedModulesForAllRequests = "true"? –
Да, это означает, что все управляемые модули будут выполняться для всех запросов, это может отрицательно повлиять на производительность в зависимости от того, насколько важно ваше приложение, если вы будете следовать тому, что говорится в статье (только для модулей аутентификации), тогда модули управляемого кода будут не запускается для ASP (например, ASP.NET Windows Auth, кэша вывода ASP.NET, состояния сеанса ASP.ENT и т. д., которые бесполезны в вашем сценарии) –