Bonjour,
Je réalise une application web en mvc pour une entreprise.
Pour accéder à l'application, l'utilisateur doit s'être authentifié par l'un des deux moyens :
- soit en utilisant ses identifiants de l'intranet de l'entreprise (je fais alors appel au CAS intranet de l'entreprise depuis une page Login.aspx)
- soit en "bypassant" ce CAS et en s'identifiant directement auprès de la BDD de l'application. En rajoutant un paramètre dans l'url (?bypass=1) on fait appel à controller qui affiche une vue demandant le login et mdp de l'utilisateur.
Ces deux modes d'authentification fonctionnent très bien séparément, tant que je ne demande pas une authentification obligatoire.
Pour obliger l'authentification lors de l'accès à n'importe quelle page de l'appli, j'ai ajouté dans le web.config :
Seulement voila, les utilisateurs sont obligés de s'identifier depuis la page Login.apsx (donc depuis le CAS intranet), et je n'ai plus accès à la page de login bypass puisque je ne suis pas identifiée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <authentication mode="Forms"> <forms loginUrl="Login.aspx" timeout="2880" /> </authentication> <authorization> <deny users="?" /> <allow users="*" /> </authorization>
Si j'autorise l'accès à la page bypass pour les utilisateurs non authentifiés, comme ce mode d'authentification n'apparait pas dans <authentification>, l'utilisateur n'est pas détecté comme authentifié, donc je suis redirigée vers la page Login.aspx, et je tourne en rond...
Y'a-t-il un moyen de déclarer 2 modes d'authentification différent ?
Ou bien de changer le web.config ? lorsque l'utilisateur passe en paramètre d'url "?bypass=1", changer le web.config pour mettre :
Je vous remercie par avance pour votre aide sur ce problème qui me prend la tête depuis plusieurs jours
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <authentication mode="Forms"> <forms loginUrl="/Bypass" timeout="2880" /> </authentication>![]()
Partager