HttpRequest.IsAuthenticated devuelve verdadero si HttpContext.User.Identity no es nulo y su propiedad IsAuthenticated devuelve verdadero.
La identidad actual se establece en FormsAuthenticationModule, pero no tiene nada que ver con su MembershipProvider. De hecho, ni siquiera lo referencia. Todo lo que hace es verificar si la cookie de autenticación todavía está configurada y sigue siendo válida (como si no hubiera caducado).
Creo que el problema es que está llamando a uno de los métodos FormsAuthentication como RedirectFromLoginPage, que es la configuración de la cookie de autenticación. Si necesita esperar hasta que el usuario sea aprobado, entonces debe asegurarse de no configurar la cookie.
http://stackoverflow.com/questions/1212503/asp-net-membership-isapproved-false-but-still-allowing-login –
He pedido al OP que elimine su otra pregunta, ya que esta terminó siendo marcado con una respuesta. –