SqlMembershipProvider 클래스

정의

SQL Server 데이터베이스에 ASP.NET 애플리케이션의 멤버 자격 정보를 스토리지하는 작업을 관리합니다.Manages storage of membership information for an ASP.NET application in a SQL Server database.

public ref class SqlMembershipProvider : System::Web::Security::MembershipProvider
public class SqlMembershipProvider : System.Web.Security.MembershipProvider
type SqlMembershipProvider = class
    inherit MembershipProvider
Public Class SqlMembershipProvider
Inherits MembershipProvider
상속
SqlMembershipProvider

예제

다음 코드 예제에서는 사용 하도록 구성 된 ASP.NET 애플리케이션에 대 한 Web.config 파일을 SqlMembershipProvider입니다.The following code example shows the Web.config file for an ASP.NET application configured to use a SqlMembershipProvider.

<configuration>  
  <connectionStrings>  
    <add name="SqlServices" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />  
  </connectionStrings>  
  <system.web>  
    <authentication mode="Forms" >  
      <forms loginUrl="login.aspx"  
        name=".ASPXFORMSAUTH" />  
    </authentication>  
    <authorization>  
      <deny users="?" />  
    </authorization>  
    <membership defaultProvider="SqlProvider"  
      userIsOnlineTimeWindow="15">  
      <providers>  
        <add   
          name="SqlProvider"   
          type="System.Web.Security.SqlMembershipProvider"   
          connectionStringName="SqlServices"  
          applicationName="MyApplication"  
          enablePasswordRetrieval="false"  
          enablePasswordReset="true"  
          requiresQuestionAndAnswer="true"  
          requiresUniqueEmail="false"  
          passwordFormat="Hashed"  
          maxInvalidPasswordAttempts="5"  
          passwordAttemptWindow="10" />  
      </providers>  
    </membership>  
  </system.web>  
</configuration>  

설명

이 클래스에서 사용 되는 MembershipMembershipUser SQL Server 데이터베이스를 사용 하 여 ASP.NET 애플리케이션에 대 한 멤버 자격 서비스를 제공 하는 클래스입니다.This class is used by the Membership and MembershipUser classes to provide membership services for an ASP.NET application using a SQL Server database. SQL Server 없이 SqlMembershipProvider를 사용할 수 없습니다.You cannot use a SqlMembershipProvider without SQL Server. 컴퓨터에 SQL Server Express 기본 인스턴스 이름을 사용 하 여 설치 및 사용자 인스턴스 사용 하도록 설정 하는 경우는 SqlMembershipProvider 개체 라는 데이터베이스를 만듭니다 aspnetdb 애플리케이션에서 App_Data 디렉터리 첫 번째 애플리케이션 시간 실행 됩니다.When your computer has SQL Server Express installed with the default instance name and user-instancing enabled, the SqlMembershipProvider object will create a database called aspnetdb in the application's App_Data directory the first time the application is run.

데이터베이스를 수동으로 만들려면 %systemroot%\Microsoft.NET\Framework\ versionNumber 폴더에 있는 Aspnet_regsql.exe 실행 파일을 실행 하 고 -A m 옵션 (예: aspnet_regsql.exe -A m)을 지정 합니다.To manually create the database, run the Aspnet_regsql.exe executable found in the %systemroot%\Microsoft.NET\Framework\ versionNumber folder and specify the -A m option (for example aspnet_regsql.exe -A m). 생성 된 데이터베이스는 Aspnetdb 라고 합니다.The database created is called Aspnetdb. 또는 Aspnet_regsql.exe를 실행 하 여 GUI 구성 모드를 끌어오거나 모든 ASP.NET 기능을 구성 하도록 선택 합니다.Alternatively, run Aspnet_regsql.exe to pull up the GUI configuration mode and choose to configure all ASP.NET Features.

통합된 보안을 사용 하는 연결 문자열을 사용 하 여 멤버 자격 공급자가 구성 하는 경우 ASP.NET 애플리케이션의 프로세스 계정에 SQL Server 데이터베이스에 연결할 수 있는 권한이 있어야 합니다.If the membership provider is configured with a connection string that uses integrated security, the process account of the ASP.NET application must have rights to connect to the SQL Server database.

Machine.config 파일은 로컬 컴퓨터의 기본 SQL Server Express 인스턴스에 연결 하는 AspNetSqlMembershipProvider 이라는 기본 SqlMembershipProvider 인스턴스를 정의 합니다.The Machine.config file defines a default SqlMembershipProvider instance named AspNetSqlMembershipProvider that connects to the default SQL Server Express instance on the local machine. 기본 인스턴스 이름을 사용 하 여 SQL Server Express를 설치 하거나 ASP.NET 애플리케이션에 대 한 Web.config 파일에 고유한 인스턴스를 정의할 수 있습니다 하는 경우이 인스턴스의 공급자를 사용할 수 있습니다.You can use this instance of the provider if you installed SQL Server Express with the default instance name, or you can define your own instance in the Web.config file for your ASP.NET application.

설정한 경우에 passwordCompatMode 특성을 Framework40, 애플리케이션에서의 해시를 사용할 수 있으며 암호화 멤버 자격 옵션을 ASP.NET 4에 추가 되었습니다.If you set the passwordCompatMode attribute to Framework40, the application can use the hashing and encryption membership options that were added in ASP.NET 4. 그러나 passwordCompatMode 특성이 Framework20로 설정 된 경우에는 ASP.NET 2.0, ASP.NET 3.5 및 ASP.NET 3.5 s p 1의 해시 및 암호화 멤버 자격 옵션만 사용할 수 있습니다.However, if the passwordCompatMode attribute is set to Framework20, only the hashing and encryption membership options from the ASP.NET 2.0, ASP.NET 3.5, and ASP.NET 3.5 SP1 can be used. 기본값은 Framework20입니다.The default value is Framework20. 자세한 내용은 MembershipPasswordCompatibilityMode을 참조하세요.For more information, see MembershipPasswordCompatibilityMode.

생성자

SqlMembershipProvider()

SqlMembershipProvider 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the SqlMembershipProvider class.

속성

ApplicationName

해당 멤버 자격 정보를 저장하거나 검색할 애플리케이션의 이름을 가져오거나 설정합니다.Gets or sets the name of the application to store and retrieve membership information for.

Description

관리 도구나 다른 UI(사용자 인터페이스)에 표시하기에 적합한 간단하고 이해하기 쉬운 설명을 가져옵니다.Gets a brief, friendly description suitable for display in administrative tools or other user interfaces (UIs).

(다음에서 상속됨 ProviderBase)
EnablePasswordReset

SQL Server 멤버 자격 공급자에서 사용자가 암호를 재설정할 수 있도록 구성되어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the SQL Server membership provider is configured to allow users to reset their passwords.

EnablePasswordRetrieval

SQL Server 멤버 자격 공급자에서 사용자가 암호를 검색할 수 있도록 구성되어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the SQL Server membership provider is configured to allow users to retrieve their passwords.

MaxInvalidPasswordAttempts

멤버 자격 사용자가 잠금 처리되기 전에 허용되는 잘못된 암호 또는 암호 대답 시도 수를 가져옵니다.Gets the number of invalid password or password-answer attempts allowed before the membership user is locked out.

MinRequiredNonAlphanumericCharacters

유효한 암호에 나타나야 하는 특수 문자의 최소 수를 가져옵니다.Gets the minimum number of special characters that must be present in a valid password.

MinRequiredPasswordLength

암호에 필요한 최소 길이를 가져옵니다.Gets the minimum length required for a password.

Name

구성 중 공급자를 참조 하는 데 사용 되는 이름을 가져옵니다.Gets the friendly name used to refer to the provider during configuration.

(다음에서 상속됨 ProviderBase)
PasswordAttemptWindow

올바른 암호나 암호 대답을 제공하려고 했지만 실패한 연속 횟수를 추적하는 시간 창을 가져옵니다.Gets the time window between which consecutive failed attempts to provide a valid password or password answers are tracked.

PasswordFormat

SQL Server 멤버 자격 데이터베이스에 암호를 저장하기 위한 형식을 나타내는 값을 가져옵니다.Gets a value indicating the format for storing passwords in the SQL Server membership database.

PasswordStrengthRegularExpression

암호를 확인하는 데 사용되는 정규식을 가져옵니다.Gets the regular expression used to evaluate a password.

RequiresQuestionAndAnswer

SQL Server 멤버 자격 공급자에서 사용자가 암호 재설정 및 검색을 위해 암호 질문에 대답하도록 구성되어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the SQL Server membership provider is configured to require the user to answer a password question for password reset and retrieval.

RequiresUniqueEmail

SQL Server 멤버 자격 공급자가 사용자 이름별로 고유한 이메일 주소를 요구하도록 구성되어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value indicating whether the SQL Server membership provider is configured to require a unique email address for each user name.

메서드

ChangePassword(String, String, String)

사용자 암호를 수정합니다.Modifies a user's password.

ChangePasswordQuestionAndAnswer(String, String, String, String)

SQL Server 멤버 자격 데이터베이스에서 사용자에 대한 암호 질문과 대답을 업데이트합니다.Updates the password question and answer for a user in the SQL Server membership database.

CreateUser(String, String, String, String, String, Boolean, Object, MembershipCreateStatus)

SQL Server 멤버 자격 데이터베이스에 새 사용자를 추가합니다.Adds a new user to the SQL Server membership database.

DecryptPassword(Byte[])

암호화된 암호를 해독합니다.Decrypts an encrypted password.

(다음에서 상속됨 MembershipProvider)
DeleteUser(String, Boolean)

SQL Server 멤버 자격 데이터베이스에서 사용자의 멤버 자격 정보를 제거합니다.Removes a user's membership information from the SQL Server membership database.

EncryptPassword(Byte[])

암호를 암호화합니다.Encrypts a password.

(다음에서 상속됨 MembershipProvider)
EncryptPassword(Byte[], MembershipPasswordCompatibilityMode)

지정된 암호 호환 모드를 사용하여 지정한 암호를 암호화합니다.Encrypts the specified password using the specified password-compatibility mode.

(다음에서 상속됨 MembershipProvider)
Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
FindUsersByEmail(String, Int32, Int32, Int32)

이메일 주소 필드에 지정한 이메일 주소가 들어 있는 멤버 자격 사용자의 컬렉션을 반환합니다.Returns a collection of membership users for which the email address field contains the specified email address.

FindUsersByName(String, Int32, Int32, Int32)

사용자 이름이 지정한 사용자 이름과 일치하는 멤버 자격 사용자의 컬렉션을 가져옵니다.Gets a collection of membership users where the user name contains the specified user name to match.

GeneratePassword()

길이가 14자 이상인 임의의 암호를 생성합니다.Generates a random password that is at least 14 characters long.

GetAllUsers(Int32, Int32, Int32)

SQL Server 멤버 자격 데이터베이스의 모든 사용자 컬렉션을 가져옵니다.Gets a collection of all the users in the SQL Server membership database.

GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetNumberOfUsersOnline()

현재 애플리케이션에 액세스하는 사용자 수를 반환합니다.Returns the number of users currently accessing the application.

GetPassword(String, String)

SQL Server 멤버 자격 데이터베이스의 지정된 사용자 이름에 대해 암호를 반환합니다.Returns the password for the specified user name from the SQL Server membership database.

GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
GetUser(Object, Boolean)

데이터 소스에서 지정된 고유 식별자와 관련된 멤버 자격 사용자의 정보를 가져오고 사용자의 마지막 작업 날짜/시간 스탬프를 업데이트합니다.Gets the information from the data source for the membership user associated with the specified unique identifier and updates the last activity date/time stamp for the user, if specified.

GetUser(String, Boolean)

사용자에 대해 SQL Server 멤버 자격 데이터베이스의 정보를 반환하고 사용자의 마지막 작업 날짜/시간 스탬프를 업데이트하는 옵션을 제공합니다.Returns information from the SQL Server membership database for a user and provides an option to update the last activity date/time stamp for the user.

GetUserNameByEmail(String)

지정된 이메일 주소와 연결된 사용자 이름을 가져옵니다.Gets the user name associated with the specified email address.

Initialize(String, NameValueCollection)

ASP.NET 애플리케이션의 구성 파일에 지정된 속성 값을 사용하여 SQL Server 멤버 자격 공급자를 초기화합니다.Initializes the SQL Server membership provider with the property values specified in the ASP.NET application's configuration file. 이 메서드는 코드에서 직접 사용할 수 없습니다.This method is not intended to be used directly from your code.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
OnValidatingPassword(ValidatePasswordEventArgs)

이벤트 처리기가 정의된 경우 ValidatingPassword 이벤트를 발생시킵니다.Raises the ValidatingPassword event if an event handler has been defined.

(다음에서 상속됨 MembershipProvider)
ResetPassword(String, String)

사용자의 암호를 자동으로 생성된 새 암호로 다시 설정합니다.Resets a user's password to a new, automatically generated password.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)
UnlockUser(String)

멤버 자격 사용자의 유효성을 검사할 수 있도록 사용자의 잠금 상태를 지웁니다.Clears the user's locked-out status so that the membership user can be validated.

UpdateUser(MembershipUser)

SQL Server 멤버 자격 데이터베이스에서 사용자 정보를 업데이트합니다.Updates information about a user in the SQL Server membership database.

ValidateUser(String, String)

지정된 사용자 이름과 암호가 SQL Server 멤버 자격 데이터베이스에 있는지 여부를 확인합니다.Verifies that the specified user name and password exist in the SQL Server membership database.

이벤트

ValidatingPassword

사용자를 만들거나 암호를 변경하거나 암호를 다시 설정할 때 발생합니다.Occurs when a user is created, a password is changed, or a password is reset.

(다음에서 상속됨 MembershipProvider)

적용 대상

추가 정보