PasswordStrength Extender (demo)

PasswordStrength is an ASP.NET AJAX extender that can be attached to an ASP.NET TextBox control used for the entry of passwords. The PasswordStrength extender shows the strength of the password in the TextBox and updates itself as the user types the password. The indicator can display the strength of the password as a text message or with a progress bar indicator. The styling and position of both types of indicators is configurable. The required strength of the password is also configurable, allowing the page author to tailor the password strength requirements to their needs. The text messages that describe the current strength of the password can also be configured and their default values have localization support built-in. The second and third extenders' strings are being pulled from Toolkit resources files. We do not have strings for all languages currently so they may show non-localized values for some languages. A help indicator can be used to provide explicit instructions about what changes are required to achieve a strong password. The indicator is displayed when the user begins typing into the TextBox and is hidden from view once the TextBox loses focus.

Properties

Name Description
BarBorderCssClass CSS class applied to the bar indicator's border when StrengthIndicatorType=BarIndicator
BarIndicatorCssClass CSS class applied to the bar indicator's inner bar when StrengthIndicatorType=BarIndicator
CalculationWeightings List of semi-colon separated numeric values used to determine the weighting of a strength characteristic. Remarks: There must be 4 values specified which must total 100. The default weighting values are defined as 50;15;15;20. This corresponds to password length is 50% of the strength calculation, Numeric criteria is 15% of strength calculation, casing criteria is 15% of calculation, and symbol criteria is 20% of calculation. So the format is 'A;B;C;D' where A = length weighting, B = numeric weighting, C = casing weighting, D = symbol weighting.
DisplayPosition Positioning of the strength indicator relative to the target control
HelpHandleCssClass CSS class applied to the help element used to display a dialog box describing the password requirements Remarks: This is used so that the user can click on this image and get a display on what is required to make the password strong according to the current properties
HelpHandlePosition Positioning of the help handle element relative to the target control
HelpStatusLabelID Control ID of the label used to display help text
MinimumLowerCaseCharacters Minimum number of lowercase characters required when requiring mixed case characters as part of your password strength considerations Remarks: Only in effect if RequiresUpperAndLowerCaseCharacters property is true. The default value is 0 which means this property is not in effect and there is no minimum limit.
MinimumNumericCharacters Minimum number of numeric characters Remarks: If there are less than this property, then the password is not considered strong. If there are equal to or more than this value, then this will contribute 15% to the overall password strength percentage value.
MinimumSymbolCharacters Minimum number of symbol characters (ex. $ ^ ) Remarks: * If there are less than this property, then the password is not considered strong. If there are equal to or more than this value, then this will contribute 15% to the overall password strength percentage value.
MinimumUpperCaseCharacters Minimum number of uppercase characters required when requiring mixed case characters as part of your password strength considerations. Remarks: Only in effect if RequiresUpperAndLowerCaseCharacters property is true. The default value is 0 which means this property is not in effect and there is no minimum limit.
PreferredPasswordLength Preferred length of the password Remarks: Passwords could be less than this amount but wont reach the 100% calculation if less than this count. This is used to calculate 50% of the percentage strength of the password Ideally, a password should be 20 characters in length to be a strong password.
PrefixText Text prefixed to the display text when StrengthIndicatorType=Text
RequiresUpperAndLowerCaseCharacters Specifies whether mixed case characters are required Remarks: Determines if mixed case passwords are required to be considered strong. If true, then there must be at least one occurrence of mixed case (upper and lower) letters in the password to be considered strong. If there is, this will contribute 20% to the overall password strength percentage value.
StrengthIndicatorType Strength indicator type (Text or BarIndicator) Remarks: BarIndicator - progress bar indicating password strength Text - low, medium, high or excellent
StrengthStyles List of semi-colon separated CSS classes that are used depending on the password's strength. Remarks: This property will override the BarIndicatorCssClass / TextIndicatorCssClass property if present. The BarIndicatorCssClass / TextIndicatorCssClass property differs in that it attributes one CSS style to the BarIndicator or Text Strength indicator (depending on which type is chosen) regardless of password strength. This property will cause the style to change based on the password strength and also to the number of styles specified in this property. For example, if 2 styles are defined like StrengthStyles="style1;style2" then style1 is applied when the password strength is less than 50%, and style2 is applied when password strength is >= 50%. This property can have up to 10 styles.
TextCssClass CSS class applied to the text display when StrengthIndicatorType=Text
TextStrengthDescriptions List of semi-colon separated descriptions used when StrengthIndicatorType=Text (Minimum of 2, maximum of 10; order is weakest to strongest) Remarks: Example: None;Weak;Medium;Strong;Excellent
TextStrengthDescriptionStyles A semi-colon delimited string that specifies the styles applicable to each string descriptions for the password strength when using a textual display Remarks: Deprecated. Use StrengthStyles instead

Client properties

barBorderCssClass
CSS class applied to the bar indicator's border when StrengthIndicatorType=BarIndicator
Getter name: get_barBorderCssClass()
Setter name: set_barBorderCssClass(value)

barIndicatorCssClass
CSS class applied to the bar indicator's inner bar when StrengthIndicatorType=BarIndicator
Getter name: get_barIndicatorCssClass()
Setter name: set_barIndicatorCssClass(value)

calculationWeightings
List of semi-colon separated numeric values used to determine the weighting of a strength characteristic.
Getter name: get_calculationWeightings()
Setter name: set_calculationWeightings(value)

displayPosition
Positioning of the strength indicator relative to the target control
Getter name: get_displayPosition()
Setter name: set_displayPosition(value)

helpHandleCssClass
CSS class applied to the help element used to display a dialog box describing the password requirements
Getter name: get_helpHandleCssClass()
Setter name: set_helpHandleCssClass(value)

helpHandlePosition
Positioning of the help handle element relative to the target control
Getter name: get_helpHandlePosition()
Setter name: set_helpHandlePosition(value)

helpStatusLabelID
Control ID of the label used to display help text
Getter name: get_helpStatusLabelID()
Setter name: set_helpStatusLabelID(value)

helpText
Help text to show
Getter name: get_helpText()
Setter name: set_helpText(value)

minimumLowerCaseCharacters
Minimum number of lowercase characters required when requiring mixed case characters as part of your password strength considerations
Getter name: get_minimumLowerCaseCharacters()
Setter name: set_minimumLowerCaseCharacters(value)

minimumNumericCharacters
Minimum number of numeric characters
Getter name: get_minimumNumericCharacters()
Setter name: set_minimumNumericCharacters(value)

minimumSymbolCharacters
Minimum number of symbol characters (ex. $ ^ *)
Getter name: get_minimumSymbolCharacters()
Setter name: set_minimumSymbolCharacters(value)

minimumUpperCaseCharacters
Minimum number of uppercase characters required when requiring mixed case characters as part of your password strength considerations.
Getter name: get_minimumUpperCaseCharacters()
Setter name: set_minimumUpperCaseCharacters(value)

preferredPasswordLength
Preferred length of the password
Getter name: get_preferredPasswordLength()
Setter name: set_preferredPasswordLength(value)

prefixText
Text prefixed to the display text when StrengthIndicatorType=Text
Getter name: get_prefixText()
Setter name: set_prefixText(value)

requiresUpperAndLowerCaseCharacters
Specifies whether mixed case characters are required
Getter name: get_requiresUpperAndLowerCaseCharacters()
Setter name: set_requiresUpperAndLowerCaseCharacters(value)

strengthIndicatorType
Strength indicator type (Text or BarIndicator)
Getter name: get_strengthIndicatorType()
Setter name: set_strengthIndicatorType(value)

strengthStyles
List of semi-colon separated CSS classes that are used depending on the password's strength.
Getter name: get_strengthStyles()
Setter name: set_strengthStyles(value)

textCssClass
CSS class applied to the text display when StrengthIndicatorType=Text
Getter name: get_textCssClass()
Setter name: set_textCssClass(value)

textStrengthDescriptions
List of semi-colon separated descriptions used when StrengthIndicatorType=Text (Minimum of 2, maximum of 10; order is weakest to strongest)
Getter name: get_textStrengthDescriptions()
Setter name: set_textStrengthDescriptions(value)

TextStrengthDescriptionStyles
A semi-colon delimited string that specifies the styles applicable to each string descriptions for the password strength when using a textual display
Getter name: get_TextStrengthDescriptionStyles()
Setter name: set_TextStrengthDescriptionStyles(value)

Last edited Sep 14, 2015 at 9:48 AM by fadilmamedov, version 4