기본 홈페이지인 default.aspx에 액세스하면 자동으로 login.aspx 페이지로 이동하여 로그인을 요청합니다. 사용자 이름과 비밀번호를 입력하고 "로그인" 버튼을 클릭하면 홈페이지로 돌아가 현재 로그인된 내용이 표시됩니다. 사용자 이름으로.
웹.구성
<구성>
<시스템.웹>
<컴파일 디버그="true"/>
<인증 모드="양식">
<forms loginUrl="login.aspx" 이름 = ".ASPXFORMSAUTH" />
</인증>
<인가>
<사용자 거부="?"/>
</인증>
</system.web>
</configuration>
default.aspx
<HTML>
<헤드>
<TITLE>홈페이지</TITLE>
<스크립트 언어="VB" runat="서버">
하위 페이지_로드(개체로 보낸 사람, EventArgs로 e)
Message.Text = String.Format("안녕하세요, {0}", Context.User.Identity.Name)
서브 끝
하위 btnSignout_Click(객체로 보낸 사람, EventArgs로 E)
FormsAuthentication.SignOut()
Response.Redirect("login.aspx")
끝 서브
</script>
</HEAD>
<본문>
<asp:label id="메시지" runat="서버"/>
<br>
<form method="post" runat="서버">
<asp:button id="btnSignout" Text="로그아웃" runat="server" OnClick="btnSignout_Click"/>
</form>
</BODY>
</HTML>
로그인.aspx
<헤드>
<TITLE>홈페이지</TITLE>
<script lanugage="c#" runat="서버">
개인 무효 Page_Load(개체 전송자, EventArgs e)
{
if (Request.IsAuthenticated)
Response.Redirect("default.aspx");
}
void btnLogin_Click(객체 전송자, EventArgs e)
{
if (txtUsername.Text != null && txtUsername.Text != String.Empty && txtPassword.Text != null && txtPassword.Text != String.Empty)
FormsAuthentication.RedirectFromLoginPage(txtUsername.Text, true);
또 다른
lblError.Text = "잘못된 사용자 이름/비밀번호";
}
</script>
</HEAD>
<본문>
<form method="post" runat="server">
<asp:Label id="lblUsername" runat="server" Text="사용자 이름:"/>
<asp:Textbox id="txtUsername" runat="서버"/>
<br>
<br>
<asp:Label id="lblPassword" runat="서버" Text="비밀번호:"/>
<asp:Textbox id="txtPassword" runat="서버" TextMode="password"/>
<br>
<asp:button id="btnLogin" runat="server" Text="Login" OnClick="btnLogin_Click" />
</form>
<시간>
<br>
<asp:Label id="lblError" forecolor="red" runat="server"/>
</BODY>
</HTML>