Udostępnij za pośrednictwem


Testowanie siły hasła (C#)

Autor: Christian Wenz

Pobierz plik PDF

Hasła są wymagane niemal wszędzie, więc leniwi użytkownicy mają tendencję do wybierania prostych haseł, które są łatwe do złamania. Kontrolka PasswordStrength w zestawie narzędzi kontroli AJAX ASP.NET może sprawdzić, jak dobre jest hasło.

Omówienie

Hasła są wymagane niemal wszędzie, więc leniwi użytkownicy mają tendencję do wybierania prostych haseł, które są łatwe do złamania. Kontrolka PasswordStrength w zestawie narzędzi kontroli AJAX ASP.NET może sprawdzić, jak dobre jest hasło.

Kroki

Kontrolka PasswordStrength rozszerza pole tekstowe i sprawdza, czy hasło w nim jest wystarczająco dobre. Oferuje wiele opcji za pośrednictwem atrybutów; oto tylko niektóre z nich:

  • MinimumNumericCharacters minimalna liczba znaków liczbowych wymaganych w haśle
  • MinimumSymbolCharacters minimalna liczba znaków symboli (nie liter i cyfr) wymaganych w haśle
  • PreferredPasswordLength minimalna długość hasła
  • RequiresUpperAndLowerCaseCharacters czy hasło musi używać zarówno wielkich, jak i małych liter

Zawiera StrengthIndicatorType informacje dotyczące przedstawiania siły hasła jako tekstu (wartości "Text") lub jako rodzaju paska postępu (wartość "BarIndicator"). W atrybucie DisplayPosition można skonfigurować miejsce wyświetlania informacji. Oto kompletny przykład, w tym kontrolka AJAX ScriptManager ASP.NET, kontrolka PasswordStrength i oczywiście pole tekstowe, w którym użytkownik może wprowadzić hasło. Ze względu na pokaz ostatnie pole formularza jest zwykłym polem tekstowym, a nie polem hasła, dzięki czemu można zobaczyć podczas programowania, co piszesz.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
 <title>Control Toolkit</title>
</head>
<body>
 <form id="form1" runat="server">
 <asp:ScriptManager ID="asm" runat="server" />
 <div>
 <asp:TextBox ID="Password" runat="server" />
 <ajaxToolkit:PasswordStrength ID="ps1" runat="server" 
 TargetControlID="Password" RequiresUpperAndLowerCaseCharacters="true" 
 MinimumNumericCharacters="1" MinimumSymbolCharacters="1" 
 PreferredPasswordLength="8" DisplayPosition="RightSide" 
 StrengthIndicatorType="Text" />
 </div>
 </form>
</body>
</html>

Uruchom stronę i wpisz polecenie : Tylko po wprowadzeniu małych liter, wielkich liter, cyfr i symboli hasło jest uznawane za niezniszczalne .

Teraz hasło jest (całkiem) dobre

Teraz hasło jest (całkiem) dobre (kliknij, aby wyświetlić obraz w pełnym rozmiarze)