ASP.NET

67.C# ASP.NET - 인증기능 적용

Godffs 2009. 10. 23. 13:36
반응형

ASP.NET 제공 로그인 컨트롤
- Register.aspx : CreateUserWizard 컨트롤
- Login.aspx : 로그인 컨트롤
- Default.aspx : LoginView - LoginStatus, LoginName, HyperLink

만든 웹 사이트에 로그인 인증기능 적용하는 예제입니다.


해당  웹 사이트 프로젝트의 Web.config 페이지를 열고 Window인증을 Forms로 변경합니다.
<system.web> 태그 안에 <authentication mode="Window"/> 코드 변경

Web.config
<system.web>
  <authentication mode="Forms"/>
<system.web/>

해당 프로젝트에 웹 폼을 추가합니다. Register.aspx, Login.aspx, Default.aspx 3개 추가!

Register.aspx : CreateUserWizard 컨트롤을 이용하여 회원가입 페이지 작성
Login.aspx : Login 컨트롤을 이용하여 로그인 페이지 작성
Default.aspx : 로그인 결과확인 하는 페이지

Register.aspx
도구 - 로그인 - CreateUserWizard 컨트롤 추가 및 직접 코드 작성!
(저는 컨트롤 추가 했습니다. 코드 수정한거 없어요)
<body>
    <form id="form1" runat="server">
    <div>
        <asp:CreateUserWizard ID="CreateUserWizard1" runat="server">
            <WizardSteps>
                <asp:CreateUserWizardStep ID="CreateUserWizardStep1" runat="server">
                </asp:CreateUserWizardStep>
                <asp:CompleteWizardStep ID="CompleteWizardStep1" runat="server">
                </asp:CompleteWizardStep>
            </WizardSteps>
        </asp:CreateUserWizard>
    </div>
    </form>
</body>

[그림67-1]

Login.aspx
도구 - 로그인 - Login 컨트롤 추가 및 직접 코드 작성! (저는 컨트롤 추가 했습니다. 코드 수정한거 없어요)
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Login ID="Login1" runat="server">
        </asp:Login>
    </div>
    </form>
</body>

[그림67-2]

Default.aspx
도구 - 로그인 - LoginStatus, LoginName & 도구 - 표준 - HyperLink
컨트롤 추가 및 직접 코드 작성! (저는 컨트롤 추가 했습니다. 코드 수정한거 없어요)
<body>
    <form id="form1" runat="server">
    <div>
        <asp:LoginStatus ID="LoginStatus1" runat="server" />
        <asp:LoginName ID="LoginName1" runat="server" />
        <asp:HyperLink ID="HyperLink1" runat="server">HyperLink</asp:HyperLink>
    </div>   
    </form>
</body>

[그림67-3]

결과확인
Register.aspx 파일을 웹 브라우저로 열고 테스트 합니다.
계정 등록하는 화면에서 비밀번호 또는 기존에 가입된 아이디를 입력하게 되면 애러가 자동으로 표시됩니다.
[그림67-4]는 비밀번호 잘못 입력시 나타나는 화면입니다.

암호 입력에서 저는 Pa$$w0rd 를 입력했습니다. 'Pa$$w0rd'는 마이크로소프트 에서 지정한? 기본 암호 입니다.
특수문자, 영문 대/소문자, 숫자 를 사용하게 되면 해킹에 대한 노출을 어느정도 막을 수있다고 하니깐 비밀번호 모두 변경하세요...저는 영문,숫자만 사용했는데 바꿨어요~

입력이 완료되면 [그림67-5]와 같은 화면이 나타납니다.
[그림67-5]
여기서 계속 버튼을 누르면 다음화면으로 넘어가야하는데 저는 안넘어 가네요...ㅡ_ㅡ;;
그래서 웹 주소창에 Default.aspx를 직접 입력 (또는 Default.aspx 페이지 실행) 하시면
로그인 된 상태를 확인 할 수있습니다.
[그림67-6]
Login.aspx를 실행해서 로그인 입력하시면 [그림67-6]과 같은 화면을 확인 할 수 있습니다.

가입한 사람의 정보를 확인 하고 싶은데???

사용자 관리 ( 가입 계정을 보는 방법입니다. )
해당 프로젝트 솔루션 탐색기에서 ASP.NET 구성을 클릭합니다.
[그림67-7]

[그림67-8]을 보고 따라하시면 확인 할 수 있습니다.
[그림67-8]

이곳에서 사용자 계정을 추가 가능하며 해당 계정에 대해서 그룹, 권한등을 이곳에서 쉽게 할 수 있습니다.
(가입된 사람이...몇십명이면 할 만 하겠지만...100,1000명되면...Orz 그때는 또 다른 방법이 있게죠...?)

 

WebProfile.zip
다운로드

반응형