2009-07-31 42 views
10

可能重複:
asp.net membership IsApproved false but still allowing login在asp.net什麼套Request.IsAuthenticated =真

我有一個用戶註冊,但IsApproved是假的,但是當我檢查Request.IsAuthenticated它仍然返回true。

你知道這會發生嗎?

+0

http://stackoverflow.com/questions/1212503/asp-net-membership-isapproved-false-but-still-allowing-login – 2009-07-31 14:25:03

+0

我已經要求OP刪除他的另一個問題,因爲這一個結束了被標記爲答案。 – 2009-07-31 15:13:24

回答

18

HttpRequest.IsAuthenticated如果HttpContext.User.Identity不爲null並且它的IsAuthenticated屬性返回true,則返回true。

當前身份設置在FormsAuthenticationModule中,但它與您的MembershipProvider無關。事實上,它甚至沒有引用它。它所做的只是檢查身份驗證cookie是否仍然有效並且仍然有效(因爲尚未過期)。

我認爲問題在於你正在調用其中一個FormsAuthentication方法,如RedirectFromLoginPage,這是設置身份驗證Cookie。如果您需要等待用戶獲得批准,那麼您需要確保您沒有設置Cookie。

相關問題