当前位置:  开发笔记 > 编程语言 > 正文

通过IIS在ASP Classic中进行HTTP身份验证(基本或摘要)

如何解决《通过IIS在ASPClassic中进行HTTP身份验证(基本或摘要)》经验,为你挑选了1个好方法。

我想在ASP classic中开发一个网站,该网站对脚本控制下的数据库或密码列表使用HTTP身份验证.理想情况下,解决方案应该不涉及组件或IIS设置,因为脚本应该可以在托管环境中运行.

任何线索/代码深受赞赏.



1> lambacck..:

可以在纯粹的经典ASP VBScript中进行HTTP基本身份验证.

您将需要一些东西来解码base 64. 这是一个纯VBScript实现.您还需要确保在IIS配置中关闭"基本身份验证"和"集成Windows身份验证",因为这些会干扰您在HTTP_AUTHORIZATION标头中返回的内容.

这是一个示例实现,只是回显用户名和密码.

<%@LANGUAGE="VBSCRIPT"%>



<%
Sub Unauth()
    Call Response.AddHeader("WWW-Authenticate", "Basic realm=""SomethingGoesHere""")
    Response.Status = "401 Unauthorized"
    Call Response.End()
End Sub

Dim strAuth
strAuth = Request.ServerVariables("HTTP_AUTHORIZATION")

If IsNull(strAuth) Or IsEmpty(strAuth) Or strAuth = "" Then
    Call Unauth
Else 
    %>
    
    
    <% 
        Dim aParts, aCredentials, strType, strBase64, strPlain, strUser, strPassword
        aParts = Split(strAuth, " ")
        If aParts(0) <> "Basic" Then
            Call Unauth
        End If
        strPlain = Base64Decode(aParts(1))
        aCredentials = Split(strPlain, ":")
    %>
    <%= Server.HTMLEncode(aCredentials(0) & " - " & aCredentials(1)) %>
    
    
    <%
End If
%>

将用户名和密码挂钩到有意义的东西留给读者练习.

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有