HttpRequest.IsAuthenticated zwraca wartość true, jeśli HttpContext.User.Identity nie jest pusta, a właściwość IsAuthenticated zwraca wartość true.
Bieżąca tożsamość jest ustawiona w FormsAuthenticationModule, ale nie ma to nic wspólnego z Państwa Członkiem. W rzeczywistości nawet o tym nie wspomina. Wszystko, co robi, to sprawdzenie, czy plik cookie uwierzytelniający jest nadal ustawiony i nadal jest ważny (tak jak jest, nie wygasł).
Myślę, że problem polega na tym, że wywołujesz jedną z metod , takich jak RedirectFromLoginPage, która jest ustawieniem pliku cookie uwierzytelniania. Jeśli musisz poczekać, aż użytkownik zostanie zatwierdzony, musisz upewnić się, że nie konfigurujesz pliku cookie.
http://stackoverflow.com/questions/1212503/asp-net-membership-isapproved-false-but-still-allowing-login –
Poprosiłem OP o skasowanie jego drugiego pytania, ponieważ ten zakończył się oznaczony odpowiedzią. –