次の方法で共有


ChangePassword.NewPasswordRegularExpression プロパティ

定義

ユーザーが入力したパスワードの検証に使用される正規表現を取得または設定します。

public:
 virtual property System::String ^ NewPasswordRegularExpression { System::String ^ get(); void set(System::String ^ value); };
public virtual string NewPasswordRegularExpression { get; set; }
member this.NewPasswordRegularExpression : string with get, set
Public Overridable Property NewPasswordRegularExpression As String

プロパティ値

ユーザーが入力したパスワードの検証に使用される正規表現文字列。 既定値は、Empty です。

次のコード例は、 プロパティを NewPasswordRegularExpression 設定して、パスワードをチェックして次の条件を満たしていることを確認する正規表現を定義する方法を示しています。

  • 6 文字を超えています。

  • 少なくとも 1 桁の数字を含みます。

  • 少なくとも 1 つの特別な (英数字以外の) 文字を含みます。

プロパティに含まれるパスワード要件 PasswordHintText がユーザーに表示されます。

ユーザーが入力したパスワードが条件を満たしていない場合、プロパティに NewPasswordRegularExpressionErrorMessage 含まれるテキストがユーザーに表示されます。 新しいパスワードを入力しないと、 プロパティに NewPasswordRequiredErrorMessage 含まれるテキストがユーザーに表示されます。

注意

新しいパスワードは、および PasswordStrengthRegularExpression プロパティのMinRequiredPasswordLengthMinRequiredNonAlphanumericCharactersメンバーシップ プロバイダーによって設定された最小要件も満たす必要があります。 パスワードがこれらの要件を満たしていない場合は、イベントが ChangePasswordError 発生します。

<%@ page language="C#"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>Change Password with Validation</title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
  <asp:changepassword id="ChangePassword1" runat="server"
  PasswordHintText = 
    "Please enter a password at least 7 characters long, 
    containing a number and one special character."
  NewPasswordRegularExpression =
    '@\"(?=.{7,})(?=(.*\d){1,})(?=(.*\W){1,})' 
  NewPasswordRegularExpressionErrorMessage =
    "Error: Your password must be at least 7 characters long, 
    and contain at least one number and one special character." >
  </asp:changepassword>
  </div>
  </form>
</body>
</html>
<%@ page language="VB"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>Change Password with Validation</title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
  <asp:changepassword id="ChangePassword1" runat="server"
  PasswordHintText = "Please enter a password at least 7 characters long, containing a number and one special character."
  NewPasswordRegularExpression = '@\"(?=.{7,})(?=(.*\d){1,})(?=(.*\W){1,})' 
  NewPasswordRegularExpressionErrorMessage = "Your password must be at least 7 characters long, and contain at least one number and one special character.">
  </asp:changepassword>
  </div>
  </form>
</body>
</html>

注釈

プロパティを NewPasswordRegularExpression 使用して、Web サイト上のユーザー アカウントの検証に使用されるパスワードの要件を定義します。 この正規表現は、クライアント側でパスワード規則を適用するために使用されます。 NewPasswordRegularExpressionは、データ ストア レベルで構成できるパスワードの適用とは関係ありません。 パスワードは、および プロパティのメンバーシップ プロバイダーによって設定された最小要件をMinRequiredPasswordLengthMinRequiredNonAlphanumericCharactersPasswordStrengthRegularExpression満たしている必要があります。 パスワードがこれらの要件を満たしていない場合は、イベントが ChangePasswordError 発生します。

ユーザーに要件を表示するには、 プロパティを設定します PasswordHintText

入力したパスワードが プロパティに含まれる正規表現を NewPasswordRegularExpression 渡さない場合、プロパティに NewPasswordRegularExpressionErrorMessage 含まれるテキストがユーザーに表示されます。

メンバーシップ プロバイダーによってパスワードが拒否された場合は、 プロパティに ChangePasswordFailureText 含まれるテキストが表示されます。

パスワード標準の一般的な用途は、ユーザーに強力なパスワードの選択を強制することです。 ベスト プラクティスとして、メンバーシップ プロバイダーのデータ レベルでパスワード規則を適用します。 プロパティを NewPasswordRegularExpression 使用すると、クライアント側でパスワードを確認できますが、ログオンを繰り返し試行するユーザーはロックアウトされません。 セキュリティを向上させるには、メンバーシップ プロバイダーを構成して、ユーザーがログオンを試みる回数を制限します。 詳細については、「メンバーシップの セキュリティ保護」を参照してください。

適用対象

こちらもご覧ください