ASP.NET Login 컨트롤 개요

Visual Studio 2010

업데이트: 2007년 11월

ASP.NET Login 컨트롤은 ASP.NET 웹 응용 프로그램에 프로그래밍이 필요 없는 훌륭한 로그인 솔루션을 제공합니다. 기본적으로 Login 컨트롤은 웹 사이트의 사용자 인증을 자동화하기 위해 ASP.NET 멤버 자격 및 폼 인증과 통합됩니다. 폼 인증과 함께 ASP.NET 멤버 자격을 사용하는 방법에 대한 자세한 내용은 멤버 자격 소개를 참조하십시오.

기본적으로 ASP.NET Login 컨트롤은 HTTP를 통해 일반 텍스트로 작동합니다. 보안이 염려되는 경우에는 SSL 암호화가 포함된 HTTPS를 사용하십시오. SSL에 대한 자세한 내용은 IIS 설명서에서 Configuring SSL on a Web Server or Web Site (IIS 6.0)를 참조하십시오.

ms178329.alert_note(ko-kr,VS.100).gif참고:

ASP.NET 웹 페이지의 Method를 기본값인 POST에서 GET으로 변경하면 Login 컨트롤이 제대로 작동하지 않을 수 있습니다.

이 항목에서는 각각의 ASP.NET Login 컨트롤을 설명하고 컨트롤의 참조 설명서에 대한 링크를 제공합니다.

Login 컨트롤은 사용자 인증을 위한 사용자 인터페이스를 표시합니다. Login 컨트롤에는 사용자 이름 및 암호 텍스트 상자와 사용자가 ASP.NET 멤버 자격을 사용하여 서버에 ID를 저장함으로써 다음에 사이트를 방문할 때 자동으로 인증되도록 할지 여부를 지정할 수 있는 확인란이 포함되어 있습니다.

Login 컨트롤에는 사용자 지정 표시, 사용자 지정 메시지 및 사용자가 암호를 변경하거나 잊어버린 암호를 복구할 수 있는 다른 페이지 링크에 대한 속성이 있습니다. Login 컨트롤은 기본 페이지나 홈 페이지에서 독립 실행형 컨트롤로 사용하거나 전용 로그인 페이지에서 사용할 수 있습니다.

ASP.NET 멤버 자격으로 Login 컨트롤을 사용하는 경우 인증을 수행할 코드를 작성할 필요가 없습니다. 그러나 자체 인증 논리를 만들려면 Login 컨트롤의 Authenticate 이벤트를 처리하고 사용자 지정 인증 코드를 추가할 수 있습니다.

LoginView 컨트롤을 사용하면 익명 사용자와 로그인한 사용자에게 다른 정보를 표시할 수 있습니다. 이 컨트롤은 AnonymousTemplate 또는 LoggedInTemplate 템플릿 중 하나를 표시합니다. 익명 사용자와 인증된 사용자에 해당하는 정보를 각각 표시하는 컨트롤과 태그를 템플릿에 추가할 수 있습니다.

LoginView 컨트롤에는 ViewChangingViewChanged에 대한 이벤트도 있으며 이러한 이벤트를 사용하여 사용자가 로그인하고 상태를 변경할 경우 필요한 처리기를 작성할 수 있습니다.

LoginStatus 컨트롤은 인증되지 않은 사용자에게 로그인 링크를 표시하고 인증된 사용자에게 로그아웃 링크를 표시합니다. 사용자가 로그인 링크를 클릭하면 로그인 페이지로 이동합니다. 로그아웃 링크는 현재 사용자의 ID를 익명 사용자로 다시 설정합니다.

LoginTextLoginImageUrl 속성을 설정하여 LoginStatus 컨트롤의 모양을 사용자 지정할 수 있습니다.

LoginName 컨트롤은 사용자가 ASP.NET 멤버 자격을 사용하여 로그인한 경우 사용자의 로그인 이름을 표시합니다. 사이트에서 Windows 통합 인증을 사용할 경우에는 이 컨트롤에 사용자의 Windows 계정 이름이 표시됩니다.

PasswordRecovery 컨트롤을 사용하면 계정을 만들 때 사용했던 전자 메일 주소를 기반으로 사용자 암호를 검색할 수 있습니다. PasswordRecovery 컨트롤은 암호가 포함된 전자 메일 메시지를 사용자에게 보냅니다.

복구할 수 없는 암호화를 사용하여 암호를 저장하도록 ASP.NET 멤버 자격을 구성할 수 있습니다. 이 경우 PasswordRecovery 컨트롤은 원래 암호를 사용자에게 보내는 대신 새 암호를 생성합니다.

사용자가 암호를 복구하기 위해 대답해야 하는 보안 질문을 포함하도록 멤버 자격을 구성할 수도 있습니다. 이렇게 구성하면 PasswordRecovery 컨트롤은 암호를 복구하기 전에 질문을 표시하고 대답을 확인합니다.

PasswordRecovery 컨트롤을 사용하려면 응용 프로그램에서 전자 메일 메시지를 SMTP(Simple Mail Transfer Protocol) 서버로 전달할 수 있어야 합니다. MailDefinition 속성을 설정하여 사용자에게 전송되는 전자 메일 메시지의 텍스트와 서식을 사용자 지정할 수 있습니다.

ms178329.alert_note(ko-kr,VS.100).gif참고:

전자 메일 메시지로 전송되는 암호 정보는 일반 텍스트로 전달됩니다.

다음 예제에서는 ASP.NET 페이지에 선언된 PasswordRecovery 컨트롤을 보여 줍니다. 이 컨트롤은 MailDefinition 속성 설정을 사용하여 전자 메일 메시지를 사용자 지정합니다.

<asp:PasswordRecovery ID="PasswordRecovery1" Runat="server" 
    SubmitButtonText="Get Password" SubmitButtonType="Link">
  <MailDefinition From="administrator@Contoso.com" 
    Subject="Your new password"
    BodyFileName="PasswordMail.txt" />
</asp:PasswordRecovery>

CreateUserWizard 컨트롤은 잠재적 사용자로부터 정보를 수집합니다. 기본적으로 CreateUserWizard 컨트롤은 ASP.NET 멤버 자격 시스템에 새 사용자를 추가합니다.

CreateUserWizard 컨트롤은 다음과 같은 사용자 정보를 수집합니다.

  • 사용자 이름

  • 암호

  • 암호 확인

  • 전자 메일 주소

  • 보안 질문

  • 보안 대답

필요한 경우 이 정보는 사용자를 인증하고 사용자 암호를 복구하는 데 사용됩니다.

ms178329.alert_note(ko-kr,VS.100).gif참고:

CreateUserWizard 컨트롤은 Wizard 컨트롤에서 상속됩니다.

다음 예제에서는 CreateUserWizard 컨트롤에 대한 일반적인 ASP.NET 선언을 보여 줍니다.

<asp:CreateUserWizard ID="CreateUserWizard1" Runat="server" 
    ContinueDestinationPageUrl="~/Default.aspx">
  <WizardSteps>
    <asp:CreateUserWizardStep Runat="server" 
      Title="Sign Up for Your New Account">
    </asp:CreateUserWizardStep>
    <asp:CompleteWizardStep Runat="server" 
      Title="Complete">
    </asp:CompleteWizardStep>
  </WizardSteps>
</asp:CreateUserWizard>

ChangePassword 컨트롤을 통해 사용자가 암호를 변경할 수 있습니다. 사용자는 먼저 원래 암호를 제공한 다음 새 암호를 만들고 확인해야 합니다. 원래 암호가 올바르면 사용자 암호가 새 암호로 변경됩니다. 이 컨트롤은 새 암호에 대한 전자 메일 메시지 전송 기능도 지원합니다.

ChangePassword 컨트롤에는 사용자에게 표시되는 두 개의 템플릿 뷰가 있습니다. 첫 번째 템플릿은 사용자 암호 변경에 필요한 데이터를 수집하는 데 사용된 사용자 인터페이스를 표시하는 ChangePasswordTemplate입니다. 두 번째 템플릿은 사용자 암호가 성공적으로 변경된 후 표시되는 사용자 인터페이스를 정의하는 SuccessTemplate입니다.

ChangePassword 컨트롤은 인증된 사용자와 인증되지 않은 사용자에 대해 모두 실행됩니다. 사용자가 인증되지 않은 경우 로그인 이름을 입력하라는 메시지를 사용자에게 표시합니다. 사용자가 인증된 경우에는 텍스트 상자에 사용자 로그인 이름을 채웁니다.

표시: