在IIS 7.0上对经典ASP进行表单身份验证

时间:2010-06-08 14:46:40

标签: .net iis-7 asp-classic forms-authentication

我正在尝试将ASP.NET安全性与经典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,例如。

您可以在下面找到我的配置文件(添加通配符脚本标记后)

<?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使用不同的处理程序......

任何人都可以选择我在IIS 7.0上为经典ASP进行基础表单身份验证的解决方案/方法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用IIS 7集成模式执行此操作,如here所述。