zoukankan      html  css  js  c++  java
  • 关于asp:login控件和验证码的问题?(转)

    1.验证码页面添加.
    2.将这验证码页面添加到login控件中:
    拖曳一Login控件,将之切换到模式下,在Html源文件中在表格中密码那行后添加:
     <tr>
        <td style=" 151px">
            <asp:Label ID="Label1" runat="server" AssociatedControlID="Password">验证码:</asp:Label>
        </td>
     </tr>
     <tr>
       <td style=" 151px">
         <asp:TextBox ID="txtImgValid" runat="server" Font-Size="0.8em" ></asp:TextBox>
         <asp:ImageButton id="imgValid" ImageUrl="~/public/imageValidate.aspx" runat="server" />
       </td>
     </tr>
    其中ImageUrl="~/public/imageValidate.aspx“ 的imageValidate.aspx指的就是我们第一步建立的验证码文件。
    3.在login控件的authenticate事件中加入代码
    protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
        {
            TextBox txtImage = Login1.FindControl("txtImgValid") as TextBox;
            
            if (Session["CheckCode"] == null)
            {
                Response.Write("<script language='javascript'>alert('未可知错误!')</script>");
                e.Authenticated = false;
                return;
            }
            
            if (String.Compare(Session["CheckCode"] .ToString(),txtImage.Text,true)!=0)
            {
                Response.Write("<script language='javascript'>alert('不匹配!')</script>");
                e.Authenticated = false;
                return;
            }
          
            e.Authenticated = true;
        }




    这样的做法只能验证验证码,而用户身份根本没有验证。
    即使输入错误的用户和密码,只要验证码正确,就能登陆成功。
    这是为什么,该怎么解决?

    原文:http://social.msdn.microsoft.com/Forums/ie/zh-CN/03175f21-e441-4347-9f8e-bf8ecfbf8454/asplogin

  • 相关阅读:
    (二十五)Struts2 Tiles集成
    (二十四)Struts2 Spring集成
    etcd 和 redis的使用场景
    react v16.12 源码阅读环境搭建
    gmail邮箱怎么批量删除邮件
    动态创建的元素怎么做动画
    Window 添加定时任务
    commons-pool2-中的一些配置
    Activiti 5.18 流程Model 转成 流程BPMN文件
    Activiti 使用自己的身份认证服务
  • 原文地址:https://www.cnblogs.com/zhouzongqing/p/3741880.html
Copyright © 2011-2022 走看看