SqlMembershipProvider 클래스

정의

SQL Server 데이터베이스에서 ASP.NET 애플리케이션에 대한 멤버 자격 정보의 스토리지를 관리합니다.

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

예제

다음 코드 예제에서는 을 사용하도록 SqlMembershipProvider구성된 ASP.NET 애플리케이션에 대한 Web.config 파일을 보여줍니다.

<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>

설명

메모

ASP.NET 멤버 자격 공급자는 ASP.NET ID 대체되었습니다. 멤버 자격 공급자 대신 ASP.NET ID 플랫폼을 사용하도록 앱을 업데이트하는 것이 좋습니다.

이 클래스는 MembershipMembershipUser 클래스에서 SQL Server 데이터베이스를 사용하여 ASP.NET 애플리케이션에 대한 멤버 자격 서비스를 제공하는 데 사용됩니다. SQL Server 없이는 SqlMembershipProvider 사용할 수 없습니다. 컴퓨터가 기본 인스턴스 이름 및 사용자 인스턴싱을 사용하도록 설정된 SQL Server Express를 설치한 경우 SqlMembershipProvider 개체는 애플리케이션이 처음 실행될 때 애플리케이션의 aspnetdb 디렉터리에 App_Data 데이터베이스를 만듭니다.

데이터베이스를 수동으로 만들려면 Aspnet_regsql.exe 폴더에 있는 %systemroot%\Microsoft.NET\Framework\ versionNumber 실행 파일을 실행하고 -A m 옵션(예: aspnet_regsql.exe -A m)을 지정합니다. 만든 데이터베이스를 Aspnetdb라고 합니다. 또는 Aspnet_regsql.exe 실행하여 GUI 구성 모드를 끌어오고 모든 ASP.NET 기능을 구성하도록 선택합니다.

멤버 자격 공급자가 통합 보안을 사용하는 연결 문자열 구성된 경우 ASP.NET 애플리케이션의 프로세스 계정에는 SQL Server 데이터베이스에 연결할 수 있는 권한이 있어야 합니다.

Machine.config 파일은 로컬 컴퓨터의 기본 SQL Server Express 인스턴스에 연결하는 SqlMembershipProvider 명명된 기본 AspNetSqlMembershipProvider 인스턴스를 정의합니다. 기본 인스턴스 이름으로 SQL Server Express를 설치하거나 ASP.NET 애플리케이션에 대한 Web.config 파일에서 고유한 인스턴스를 정의할 수 있는 경우 공급자의 이 인스턴스를 사용할 수 있습니다.

passwordCompatMode 특성을 Framework40 설정하는 경우 애플리케이션은 ASP.NET 4에 추가된 해시 및 암호화 멤버 자격 옵션을 사용할 수 있습니다. 그러나 passwordCompatMode 특성이 Framework20로 설정된 경우 ASP.NET 2.0, ASP.NET 3.5 및 ASP.NET 3.5 SP1의 해시 및 암호화 멤버 자격 옵션만 사용할 수 있습니다. 기본값은 Framework20입니다. 자세한 내용은 MembershipPasswordCompatibilityMode를 참조하세요.

생성자

Name Description
SqlMembershipProvider()

SqlMembershipProvider 클래스의 새 인스턴스를 초기화합니다.

속성

Name Description
ApplicationName

멤버 자격 정보를 저장하고 검색할 애플리케이션의 이름을 가져오거나 설정합니다.

Description

관리 도구 또는 기타 UI(사용자 인터페이스)에 표시하기에 적합한 짧고 친숙한 설명을 가져옵니다.

(다음에서 상속됨 ProviderBase)
EnablePasswordReset

사용자가 암호를 재설정할 수 있도록 SQL Server 멤버 자격 공급자가 구성되어 있는지 여부를 나타내는 값을 가져옵니다.

EnablePasswordRetrieval

사용자가 암호를 검색할 수 있도록 SQL Server 멤버 자격 공급자가 구성되어 있는지 여부를 나타내는 값을 가져옵니다.

MaxInvalidPasswordAttempts

멤버 자격 사용자가 잠기기 전에 허용되는 잘못된 암호 또는 암호 응답 시도 횟수를 가져옵니다.

MinRequiredNonAlphanumericCharacters

유효한 암호에 있어야 하는 특수 문자의 최소 수를 가져옵니다.

MinRequiredPasswordLength

암호에 필요한 최소 길이를 가져옵니다.

Name

구성 중에 공급자를 참조하는 데 사용되는 이름을 가져옵니다.

(다음에서 상속됨 ProviderBase)
PasswordAttemptWindow

유효한 암호 또는 암호 답변을 제공하기 위한 연속 실패 시도가 추적되는 시간 창을 가져옵니다.

PasswordFormat

SQL Server 멤버 자격 데이터베이스에 암호를 저장하는 형식을 나타내는 값을 가져옵니다.

PasswordStrengthRegularExpression

암호를 평가하는 데 사용되는 정규식을 가져옵니다.

RequiresQuestionAndAnswer

사용자가 암호 재설정 및 검색에 대한 암호 질문에 답변하도록 SQL Server 멤버 자격 공급자를 구성했는지 여부를 나타내는 값을 가져옵니다.

RequiresUniqueEmail

SQL Server 멤버 자격 공급자가 각 사용자 이름에 대해 고유한 전자 메일 주소를 요구하도록 구성되었는지 여부를 나타내는 값을 가져옵니다.

메서드

Name Description
ChangePassword(String, String, String)

사용자의 암호를 수정합니다.

ChangePasswordQuestionAndAnswer(String, String, String, String)

SQL Server 멤버 자격 데이터베이스의 사용자에 대한 암호 질문과 대답을 업데이트합니다.

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

SQL Server 멤버 자격 데이터베이스에 새 사용자를 추가합니다.

DecryptPassword(Byte[])

암호화된 암호를 해독합니다.

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

SQL Server 멤버 자격 데이터베이스에서 사용자의 멤버 자격 정보를 제거합니다.

EncryptPassword(Byte[], MembershipPasswordCompatibilityMode)

지정된 암호 호환 모드를 사용하여 지정된 암호를 암호화합니다.

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

암호를 암호화합니다.

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

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

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

전자 메일 주소 필드에 지정된 전자 메일 주소가 포함된 멤버 자격 사용자의 컬렉션을 반환합니다.

FindUsersByName(String, Int32, Int32, Int32)

사용자 이름에 일치시킬 지정된 사용자 이름이 포함된 멤버 자격 사용자의 컬렉션을 가져옵니다.

GeneratePassword()

14자 이상의 임의 암호를 생성합니다.

GetAllUsers(Int32, Int32, Int32)

SQL Server 멤버 자격 데이터베이스에 있는 모든 사용자의 컬렉션을 가져옵니다.

GetHashCode()

기본 해시 함수로 사용됩니다.

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

현재 애플리케이션에 액세스하는 사용자 수를 반환합니다.

GetPassword(String, String)

SQL Server 멤버 자격 데이터베이스에서 지정된 사용자 이름의 암호를 반환합니다.

GetType()

현재 인스턴스의 Type 가져옵니다.

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

지정된 고유 식별자와 연결된 멤버 자격 사용자에 대한 데이터 원본의 정보를 가져오고 지정된 경우 사용자의 마지막 활동 날짜/타임스탬프를 업데이트합니다.

GetUser(String, Boolean)

사용자에 대한 SQL Server 멤버 자격 데이터베이스의 정보를 반환하고 사용자의 마지막 활동 날짜/타임스탬프를 업데이트하는 옵션을 제공합니다.

GetUserNameByEmail(String)

지정된 전자 메일 주소와 연결된 사용자 이름을 가져옵니다.

Initialize(String, NameValueCollection)

ASP.NET 애플리케이션의 구성 파일에 지정된 속성 값을 사용하여 SQL Server 멤버 자격 공급자를 초기화합니다. 이 메서드는 코드에서 직접 사용할 수 없습니다.

MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

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

이벤트 처리기가 정의된 경우 이벤트를 발생합니다 ValidatingPassword .

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

사용자의 암호를 자동으로 생성된 새 암호로 다시 설정합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

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

멤버 자격 사용자의 유효성을 검사할 수 있도록 사용자의 잠긴 상태를 지웁니다.

UpdateUser(MembershipUser)

SQL Server 멤버 자격 데이터베이스의 사용자에 대한 정보를 업데이트합니다.

ValidateUser(String, String)

지정된 사용자 이름과 암호가 SQL Server 멤버 자격 데이터베이스에 있는지 확인합니다.

이벤트

Name Description
ValidatingPassword

사용자가 만들어지거나, 암호가 변경되거나, 암호가 재설정될 때 발생합니다.

(다음에서 상속됨 MembershipProvider)

적용 대상

추가 정보