私はasp.netメンバーシップを使用しています.loin、register、forget passのようなルートにいくつかのページがあり、ログインする前、または登録されていない前にすべてのユーザーがアクセスできます.ユーザーがログインしたら、これらのページにアクセスできないようにしたい. 、つまり、ユーザーがアドレスバーに URL を手動で入力すると、それらのページへのアクセスが許可され、これを防ぐ方法は? また、ログイン後に特定のページにリダイレクトする方法にも問題があります。
2 に答える
1
UrlReferrer を使用して、ページがナビゲーションによってアクセスされているかどうかを検証できます。UrlReferrer は、現在の URL にリンクされたクライアントの以前の要求の URL に関する情報を取得します。詳細については、このリンクをご覧ください
if(Request.UrlReferrer == null)
{
//code to redirection to login page
}
于 2012-05-10T10:41:09.803 に答える
1
リダイレクトするには、ログインしたら FormAuthentication.RedirectfromLoginPageをチェックします
public void Login_OnClick(object sender, EventArgs args)
{
if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
else
Msg.Text = "Login failed. Please check your user name and password and try again.";
}
ユーザーが認証されているかどうかを確認するには、
Page.User.Identity.IsAuthenticated
フォーム認証については、このリンクを確認してください
于 2012-05-10T10:49:17.150 に答える