デフォルトのホームページdefault.aspxにアクセスすると、自動的にlogin.aspxページにジャンプしてログインを要求します。ユーザー名とパスワードを入力して「ログイン」ボタンをクリックすると、ホームページに戻り、現在ログインしている内容が表示されます。ユーザー名に。
Web.config
<構成>
<システム.ウェブ>
<コンパイルデバッグ="true"/>
<認証モード="フォーム">
<forms loginUrl="login.aspx" name = ".ASPXFORMSAUTH" />
</認証>
<認可>
<拒否ユーザー = "?"/>
</認可>
</system.web>
</configuration>
デフォルト.aspx
<HTML>
<頭>
<TITLE>ホームページ</TITLE>
<script language="VB" runat="server">
Sub Page_Load(オブジェクトとして送信者、EventArgsとして)
Message.Text = String.Format("こんにちは、{0}", Context.User.Identity.Name)
エンドサブ
sub btnSignout_Click(オブジェクトとして送信者、EventArgsとしてE)
FormsAuthentication.SignOut()
Response.Redirect("login.aspx")
エンドサブ
</script>
</HEAD>
<本体>
<asp:label id="メッセージ" runat="サーバー"/>
<br>
<form method="post" runat="server">
<asp:button id="btnSignout" Text="ログアウト" runat="server" OnClick="btnSignout_Click"/>
</form>
</BODY>
</HTML>
ログイン.aspx
<頭>
<TITLE>ホームページ</TITLE>
<script lanugage="c#" runat="server">
private void 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="Username:"/>
<asp:Textbox id="txtUsername" runat="server"/>
<br>
<br>
<asp:Label id="lblPassword" runat="server" Text="パスワード:"/>
<asp:Textbox id="txtPassword" runat="server" 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>