パスワードの強度をテストする (C#)
作成者: Christian Wenz
ほとんどあらゆる場所でパスワードを求められるため、面倒くさがりのユーザーは簡単に見破られる単純なパスワードを選択する傾向があります。 ASP.NET AJAX Control Toolkit の PasswordStrength コントロールを使用すると、パスワードの適切性をチェックできます。
概要
ほとんどあらゆる場所でパスワードを求められるため、面倒くさがりのユーザーは簡単に見破られる単純なパスワードを選択する傾向があります。 ASP.NET AJAX Control Toolkit の PasswordStrength
コントロールを使用すると、パスワードの適切性をチェックできます。
手順
PasswordStrength
は、テキスト ボックスを拡張し、その中のパスワードが十分に適切であるかどうかをチェックするコントロールです。 属性を介して豊富なオプションが用意されています。その一部を次に示します。
MinimumNumericCharacters
パスワードに最低限必要な数字の数MinimumSymbolCharacters
パスワードに最低限必要な (文字と数字ではない) 記号の数PreferredPasswordLength
パスワードの最低限の長さRequiresUpperAndLowerCaseCharacters
パスワードで大文字と小文字の両方を使用する必要があるかどうか
StrengthIndicatorType
は、パスワードの強度を表示する方法に関する情報を提供します (テキストとしての場合は値 "Text"
、一種の進行状況バーとしての場合は値 "BarIndicator"
)。 情報が表示される場所を DisplayPosition
属性で構成します。 ASP.NET AJAX の ScriptManager
コントロール、PasswordStrength
コントロール、そしてもちろん、ユーザーがパスワードを入力できるテキスト ボックスを含む完全な例を次に示します。 デモンストレーションのために、後者のフォーム フィールドはパスワード フィールドではなく通常のテキスト フィールドになっており、開発中に入力内容を確認できるようにしています。
<!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>
ページを実行し、入力していきます。小文字、大文字、数字、記号を入力した後でのみ、パスワードは解読不可能と見なされます。
これでパスワードは (かなり) 適切になりました (クリックするとフルサイズの画像が表示されます)