私はASP.NETロール/メンバーシップベースフォーム認証サイトを持っています。特定の役割だけがアクセスできるサブフォルダとそのページがあります。問題は、ログインページに許可されていない役割グループログインのユーザーが存在する場合、ログインページにエラーメッセージが表示されないことです。つまり、AllowedRoleログインからのユーザーの場合、ログインページは保護されたページにユーザーを正しくリダイレクトしますが、NonAllowedRoleのユーザーがログインしようとすると正しくログインしますが、エラーメッセージは表示されず、ユーザーは元に戻ります情報なしでログインページにアクセスできます。 FailureTextがログインフォームに設定されていますが、表示されません。 loginForm.LoginErrorイベントも発生しません。このコードを試しましたが、どちらも表示されません:ASP.NETのロールベース認証のログインエラーテキストがありません
protected void frmLogin_LoggedIn(object sender, EventArgs e)
{
if (!User.IsInRole("AllowedRole"))
frmLogin.FailureText = "Access denied.";
//Label1.Text = "Access denied."; //doesn't work either
}
私は間違っていますか?
+1いい考えです。それでも、私はまだ彼がUser.IsLoggedInをチェックすべきだと思うが、うまくいくだろう。私たちの答えの組み合わせは、自分自身でよりも良いと思います。 – David