dans asp.net ce qui définit Request.IsAuthenticated = true [dupliquer]
-
06-07-2019 - |
Question
Double possible:
adhésion à asp.net IsApproved false mais permettant toujours la connexion
Je rencontre un utilisateur mais IsApproved est false, mais lorsque je vérifie Request.IsAuthenticated, il renvoie toujours la valeur true.
Savez-vous comment cela peut arriver?
La solution
HttpRequest.IsAuthenticated renvoie true si HttpContext.User.Identity n'est pas null et que sa propriété IsAuthenticated renvoie true.
L’identité actuelle est définie dans le FormsAuthenticationModule , mais cela n’a rien à voir avec votre MembershipProvider. En fait, il n'y fait même pas référence. Il ne fait que vérifier si le cookie d'authentification est toujours défini et toujours valide (tel quel, n'a pas expiré).
Je pense que le problème est que vous appelez l'un des FormsAuthentication Des méthodes telles que les RedirectFromLoginPage , qui définit le cookie d'authentification. Si vous devez attendre que l'utilisateur soit approuvé, vous devez vous assurer que vous ne définissez pas le cookie.