Membership.GeneratePassword メソッド
アセンブリ: System.Web (system.web.dll 内)

Public Shared Function GeneratePassword ( _ length As Integer, _ numberOfNonAlphanumericCharacters As Integer _ ) As String
Dim length As Integer Dim numberOfNonAlphanumericCharacters As Integer Dim returnValue As String returnValue = Membership.GeneratePassword(length, numberOfNonAlphanumericCharacters)
public static function GeneratePassword ( length : int, numberOfNonAlphanumericCharacters : int ) : String
戻り値
指定した長さのランダム パスワード。


GeneratePassword メソッドは、ランダム パスワードを生成するのに使用され、一般的には、ユーザーのパスワードを新しい一時的なパスワードにリセットするためにメンバシップ プロバイダが実装する ResetPassword メソッドによって使用されます。
生成されるパスワードには、英数字と !@#$%^&*()_-+=[{]};:<>|./? の区切り記号のみ使用されます。生成されるパスワードには、表示されない、または印刷されない制御文字は使用されません。
![]() |
---|
GeneratePassword メソッドにより生成されたランダム パスワードは、PasswordStrengthRegularExpression プロパティの正規表現に合格するとは限りません。ただし、ランダム パスワードは、MinRequiredPasswordLength プロパティおよび numberOfNonAlphanumericCharacters パラメータで設定された基準は満たしています。 |

新しいメンバシップ ユーザーを作成し、GeneratePassword メソッドを使用して新しいユーザーにランダムなパスワードを設定し、これをユーザーに表示するコード例を次に示します。
<%@ Page Language="VB" %> <%@ Import Namespace="System.Web.Security" %> <script runat="server"> Public Sub CreateUser_OnClick(sender As Object, args As EventArgs) ' Create a new 12-character password with 1 non-alphanumeric character. Dim password As String = Membership.GeneratePassword(12, 1) Try ' Create new user. Dim newUser As MembershipUser = Membership.CreateUser(UsernameTextbox.Text, password, _ EmailTextbox.Text) Msg.Text = "User <B>" & Server.HtmlEncode(UsernameTextbox.Text) & "</B> created. " & _ "Your temporary password is " & password & "." Catch e As MembershipCreateUserException Msg.Text = GetErrorMessage(e.StatusCode) Catch e As HttpException Msg.Text = e.Message End Try End Sub Public Function GetErrorMessage(status As MembershipCreateStatus) As String Select Case status Case MembershipCreateStatus.DuplicateUserName Return "Username already exists. Please enter a different user name." Case MembershipCreateStatus.DuplicateEmail Return "A username for that e-mail address already exists. Please enter a different e-mail address." Case MembershipCreateStatus.InvalidPassword Return "The password provided is invalid. Please enter a valid password value." Case MembershipCreateStatus.InvalidEmail Return "The e-mail address provided is invalid. Please check the value and try again." Case MembershipCreateStatus.InvalidAnswer Return "The password retrieval answer provided is invalid. Please check the value and try again." Case MembershipCreateStatus.InvalidQuestion Return "The password retrieval question provided is invalid. Please check the value and try again." Case MembershipCreateStatus.ProviderError Return "The authentication provider Returned an error. Please verify your entry and try again. If the problem persists, please contact your system administrator." Case MembershipCreateStatus.UserRejected Return "The user creation request has been canceled. Please verify your entry and try again. If the problem persists, please contact your system administrator." Case Else Return "An unknown error occurred. Please verify your entry and try again. If the problem persists, please contact your system administrator." End Select End Function </script> <html> <head> <title>Create User</title> </head> <body> <form runat="server"> <h3>Create New User</h3> <asp:Label id="Msg" ForeColor="maroon" runat="server" /><BR> <table CellPadding="3" border="0"> <tr> <td>Username:</td> <td><asp:Textbox id="UsernameTextbox" runat="server" /></td> <td><asp:RequiredFieldValidator id="UsernameRequiredValidator" runat="server" ControlToValidate="UserNameTextbox" ForeColor="red" Display="Static" ErrorMessage="Required" /></td> </tr> <tr> <td>Email Address:</td> <td><asp:Textbox id="EmailTextbox" runat="server" /></td> <td><asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server" ControlToValidate="EmailTextbox" ForeColor="red" Display="Static" ErrorMessage="Required" /></td> </tr> <tr> <td></td> <td><asp:Button id="CreateUserButton" Text="Create User" OnClick="CreateUser_OnClick" runat="server" /></td> </tr> </table> </form> </body> </html>
<%@ Page Language="C#" %> <%@ Import Namespace="System.Web.Security" %> <script runat="server"> public void CreateUser_OnClick(object sender, EventArgs args) { // Generate a new 12-character password with 1 non-alphanumeric character. string password = Membership.GeneratePassword(12, 1); try { // Create new user. MembershipUser newUser = Membership.CreateUser(UsernameTextbox.Text, password, EmailTextbox.Text); Msg.Text = "User <B>" + Server.HtmlEncode(UsernameTextbox.Text) + "</B> created. " + "Your temporary password is " + password + "."; } catch (MembershipCreateUserException e) { Msg.Text = GetErrorMessage(e.StatusCode); } catch (HttpException e) { Msg.Text = e.Message; } } public string GetErrorMessage(MembershipCreateStatus status) { switch (status) { case MembershipCreateStatus.DuplicateUserName: return "Username already exists. Please enter a different user name."; case MembershipCreateStatus.DuplicateEmail: return "A username for that e-mail address already exists. Please enter a different e-mail address."; case MembershipCreateStatus.InvalidPassword: return "The password provided is invalid. Please enter a valid password value."; case MembershipCreateStatus.InvalidEmail: return "The e-mail address provided is invalid. Please check the value and try again."; case MembershipCreateStatus.InvalidAnswer: return "The password retrieval answer provided is invalid. Please check the value and try again."; case MembershipCreateStatus.InvalidQuestion: return "The password retrieval question provided is invalid. Please check the value and try again."; case MembershipCreateStatus.ProviderError: return "The authentication provider returned an error. Please verify your entry and try again. If the problem persists, please contact your system administrator."; case MembershipCreateStatus.UserRejected: return "The user creation request has been canceled. Please verify your entry and try again. If the problem persists, please contact your system administrator."; default: return "An unknown error occurred. Please verify your entry and try again. If the problem persists, please contact your system administrator."; } } </script> <html> <head> <title>Create User</title> </head> <body> <form runat="server"> <h3>Create New User</h3> <asp:Label id="Msg" ForeColor="maroon" runat="server" /><BR> <table CellPadding="3" border="0"> <tr> <td>Username:</td> <td><asp:Textbox id="UsernameTextbox" runat="server" /></td> <td><asp:RequiredFieldValidator id="UsernameRequiredValidator" runat="server" ControlToValidate="UserNameTextbox" ForeColor="red" Display="Static" ErrorMessage="Required" /></td> </tr> <tr> <td>Email Address:</td> <td><asp:Textbox id="EmailTextbox" runat="server" /></td> <td><asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server" ControlToValidate="EmailTextbox" ForeColor="red" Display="Static" ErrorMessage="Required" /></td> </tr> <tr> <td></td> <td><asp:Button id="CreateUserButton" Text="Create User" OnClick="CreateUser_OnClick" runat="server" /></td> </tr> </table> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からMembership.GeneratePassword メソッドを検索する場合は、下記のリンクをクリックしてください。

- Membership.GeneratePassword メソッドのページへのリンク