• Atlas学习手记(16):使用PasswordStrength检测密码强度


    PasswordStrengthAtlasControlToolkit在最新版本里面提供的一个检测密码强度的Extender,它支持两种文本提示和进度条提示两种方式。

     

    主要内容

    1PasswordStrength介绍

    2.完整示例

     

    一.PasswordStrength介绍

    PasswordStrengthAtlasControlToolkit在最新版本里面提供的一个检测密码强度的Extender,它支持两种文本提示和进度条提示两种方式。示例代码:

    <atlasToolkit:PasswordStrength ID="PS" runat="server">
        
    <atlasToolkit:PasswordStrengthExtenderProperties

            
    TargetControlID="TextBox1"

            DisplayPosition
    ="RightSide"

            StrengthIndicatorType
    ="Text"

            PreferredPasswordLength
    ="10"

            PrefixText
    ="Strength:"

            TextCssClass
    ="TextIndicator_TextBox1"

            MinimumNumericCharacters
    ="0"

            MinimumSymbolCharacters
    ="0"

            RequiresUpperAndLowerCaseCharacters
    ="false"

            TextStrengthDescriptions
    ="Very Poor;Weak;Average;Strong;Excellent" />

    </atlasToolkit:PasswordStrength>

    主要属性如下:

    属性

    描述

    TargetControlID

    要检测密码的TextBox控件ID

    DisplayPosition

    提示的信息的位置,如:

    DisplayPosition="RightSide|LeftSide| BelowLeft"

    StrengthIndicatorType

    强度信息提示方式,有文本和进度条

    StrengthIndicatorType="Text| BarIndicator"

    PreferredPasswordLength

    密码的长度

    PrefixText

    用文本方式时开头的文字

    PrefixText="强度:"

    TextCssClass

    用文本方时文字的CSS样式

    MinimumNumericCharacters

    密码中最少要包含的数字数量

    MinimumSymbolCharacters

    密码中最好要包含的符号数量(*#

    RequiresUpperAndLowerCaseCharacters

    是否需要区分大小写

    TextStrengthDescriptions

    文本方式时的文字提示信息

    TextStrengthDescriptions="极弱;;中等;;超强"

    BarIndicatorCssClass

    进度条的CSS样式

    BarBorderCssClass

    进度条边框的CSS样式

    HelpStatusLabelID

    帮助提示信息的Lable控件ID

    二.完整示例

    下面看一个完整的示例(主要要用最新版本的AtlasControlToolkit),新建Web Site后,同样在ASPX页面中加入命名空间的声明:

    <%@ Register Assembly="AtlasControlToolkit" 

                Namespace
    ="AtlasControlToolkit" 

                TagPrefix
    ="atlasToolkit" 
    %>

    在页面中加入三个TextBox,分别来演示三种情况的密码检测,第一个使用文本方式提示,第二个使用进度条方式提示,第三个也是使用文本方式提示,同时也带有帮助信息:

    Simple Complexity, Text Indicator <br />

    <asp:TextBox ID="TextBox1" Width="150" runat="server" /> <br />

    <asp:Label ID="TextBox1_HelpLabel" runat="server" /> &nbsp;

    <br />

    Average Complexity, Bar Indicator 
    <br />

    <asp:TextBox ID="TextBox2" Width="150" TextMode="Password" runat="server" /> <br />

    <asp:Label ID="TextBox2_HelpLabel" runat="server" /> &nbsp;

    <br />

    High Complexity, Text Indicator, Help Indicator 
    <br />

    <asp:TextBox ID="TextBox3" Width="150" runat="server" />

    加入必要的CSS样式:

    <style type="text/css">

        .TextIndicator_TextBox1
        
    {
             background-color
    :#047AFD;

             color
    :#ffffff;

             font-family
    :Arial;

             font-size
    :9pt; 

             padding
    : 2px 3px 2px 3px;   
        
    }


        .BarIndicator_TextBox2
        
    {
            color
    :Blue;

            background-color
    :#047AFD;

            padding-bottom
    :1px;
        
    }


        .BarBorder_TextBox2
        
    {
            border-style
    :solid;

            border-width
    :1px;

            width
    :200px;

            vertical-align
    :middle;
        
    }


        .TextIndicator_TextBox3
        
    {
             background-color
    :#047AFD;

             color
    :#ffffff;

             font-size
    :small;

             font-variant
    :small-caps;  

             padding
    : 2px 3px 2px 3px;   
        
    }


        .TextIndicator_TextBox3_Handle

        
    {
            width
    :16px;

            height
    :14px;

            background-image
    :url(Question.png);

            overflow
    :hidden;

            cursor
    :help;

        
    }

    </style>

    这时加入PasswordStrength,设置它的属性如下:

    <atlasToolkit:PasswordStrength ID="p1" runat="server">
        
    <atlasToolkit:PasswordStrengthExtenderProperties 

            
    DisplayPosition="RightSide" 

            TargetControlID
    ="TextBox1"

            StrengthIndicatorType
    ="Text" 

            PreferredPasswordLength
    ="10" 

            PrefixText
    ="强度:" 

            HelpStatusLabelID
    ="TextBox1_HelpLabel" 

            TextCssClass
    ="TextIndicator_TextBox1"  

            TextStrengthDescriptions
    ="极弱;弱;中等;强;超强"

            MinimumNumericCharacters
    ="0" 

            MinimumSymbolCharacters
    ="0" 

            RequiresUpperAndLowerCaseCharacters
    ="false">

        
    </atlasToolkit:PasswordStrengthExtenderProperties>

        
    <atlasToolkit:PasswordStrengthExtenderProperties 

            
    DisplayPosition="RightSide" 

            TargetControlID
    ="TextBox2"

            StrengthIndicatorType
    ="BarIndicator" 

            PreferredPasswordLength
    ="15" 

            HelpStatusLabelID
    ="TextBox2_HelpLabel"

            BarIndicatorCssClass
    ="BarIndicator_TextBox2" 

            BarBorderCssClass
    ="BarBorder_TextBox2"

            MinimumNumericCharacters
    ="1" 

            MinimumSymbolCharacters
    ="1" 

            RequiresUpperAndLowerCaseCharacters
    ="true">

        
    </atlasToolkit:PasswordStrengthExtenderProperties>

        
    <atlasToolkit:PasswordStrengthExtenderProperties 

            
    DisplayPosition="BelowLeft" 

            TargetControlID
    ="TextBox3"

            StrengthIndicatorType
    ="Text" 

            PreferredPasswordLength
    ="20" 

            PrefixText
    ="Meets Policy? " 

            TextCssClass
    ="TextIndicator_TextBox3"

            MinimumNumericCharacters
    ="2" 

            MinimumSymbolCharacters
    ="2" 

            RequiresUpperAndLowerCaseCharacters
    ="true"

            TextStrengthDescriptions
    ="Not at all;Very Low compliance;Low Compliance;Average Compliance;Good Compliance;Very High Compliance;Yes"
            HelpHandleCssClass
    ="TextIndicator_TextBox3_Handle" 

            HelpHandlePosition
    ="LeftSide">

        
    </atlasToolkit:PasswordStrengthExtenderProperties>

    </atlasToolkit:PasswordStrength>

    编译运行后效果如下

    文字提示:

    进度条提示:

    文字提示:

    点击帮助后:

     

    完整示例下载:https://files.cnblogs.com/Terrylee/PasswordStrengthDemo.rar

  • 相关阅读:
    Java正则表达式
    FlashFXP 5.0.0官方中文破解版,附文件下载地址和破解码
    【转】推荐!国外程序员整理的Java资源大全
    有线网卡和无线网卡同时使用
    Shell脚本传递带有空格的参数
    Ubuntu 14.04下MySQL服务器和客户端的安装
    python 读取不同的列,判断然后将结果写入excel
    tps qps
    python ddt 实现数据驱动一
    JMeter入门:04Java Request实例
  • 原文地址:https://www.cnblogs.com/Terrylee/p/Atlas_PasswordStrength_Extender.html
Copyright © 2020-2023  润新知