我已经要求修复经典asp网站上的登录问题。 配置是2008服务器和IIS 7.0 我发现该站点的管理目录具有基本身份验证,但是没有任何NT帐户请求loginName。 我不想为这个站点创建任何Windows帐户,我知道基本身份验证是不安全的(站点不使用ssl)。 解决这个问题的最佳方法是什么?是否可以在asp 3.0网站上使用asp.net安全性?
答案 0 :(得分:2)
您应该使用SSL。
没有SSL,ASP.Net WebForms auth并不比Basic HTTP Auth。
更好回答这个问题,是的;您可以在IIS管理员中进行设置。
答案 1 :(得分:0)
我认为在任何情况下都最好使用WebForms身份验证。 我觉得这比较容易。我刚刚将login.aspx页面和配置文件添加到经典的asp站点,并且身份验证正在运行。 只有一个通知,默认情况下htm和asp页面不由asp.net处理。 需要在config中添加以下节点。
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
我发现授权节点必须位于IIS7中的webserver节点中。
以下是完整配置,以防对某人有用。
<configuration>
<location path="admin">
<system.webServer>
<security>
<authorization>
<add accessType="Deny" users="?" />
</authorization>
</security>
</system.webServer>
</location>
<system.web>
<authentication mode="Forms">
<forms loginUrl="login.aspx">
</forms>
</authentication>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
</configuration>