L'Authentification par formulaires & autorisation MVC 4
Je suis en train de créer un anonyme, un contrôleur afin d'obtenir le formulaire d'authentification. J'ai configuré mon IIS 7 anonymes et formulaire d'authentification activé et l'ensemble de mon site web.config pour refuser les utilisateurs anonymes. Sur la connexion du contrôleur j'ai mis le [AllowAnonymous] décoration sur mon contrôleur (et mes actions).
La seule action que je peux obtenir sur cette configuration est l'action login (qui renvoie le "login"), et je devine que le MVC permet de me rendre cette action parce que je l'ai mis comme l'URL de connexion sur mon site web.config.
Voici ma configuration web de configuration:
<authentication mode="Forms">
<forms loginUrl="~/Login/Login" timeout="2880" />
</authentication>
Toutes les autres actions sont redirigé vers la de login d'action. Sur cette configuration, je ne peux pas réaliser d'autres actions importantes comme mot de passe de restauration, inscrivez-vous, etc.
Ce que je fais mal?
Donc que dois-je changer? Si je suis en permettant l'accès anonyme, puis tout le site est accessible et MVC ne pas rediriger l'utilisateur non authentifié à l'action login.
Voir ma réponse..
OriginalL'auteur Shahar | 2013-05-05
Vous devez vous connecter pour publier un commentaire.
Utilisation mondiale d'authentification filtre personnalisé pour le comportement au lieu de la configuration d'autorisation dans le web.config (le meilleur pour MVC)
ajouter un filtre global
Ensuite, [AllowAnonymous] fonctionne, et tous les autres contrôleurs et actions nécessite une Autorisation.
..éditée par exemple
Merci!!!! la peine de mentionner: après l'ajout de toutes les catégories de filtre, vous aurez besoin (comme je l'ai fait) pour autoriser l'accès anonyme à votre site
OriginalL'auteur hVostt
Vous pouvez également vous inscrire
Authorize
filtre dansRegisterGlobalFilters
méthode:Et ensuite utiliser le
AllowAnonymous
attribut sur les méthodes d'action qui nécessitent l'accès anonyme:Pas de problème. Heureux vous avez obtenu votre réponse 🙂
OriginalL'auteur Kamyar
Il y a deux approches possibles.
Première vous pouvez refuser les demandes anonymes à l'échelle mondiale avec l'Autoriser l'attribut et de la marque de ces quelques-uns qui n'ont pas besoin d'autorisation avec AllowAnonymous attribut (ce qui est nouveau pour MVC4).
De deuxième ne pas nier l'échelle mondiale, mais plutôt sûr de votre choix contrôleurs/actions à Autoriser attribut.
Je n'étais pas assez claire, le refus doit bien sûr être fait avec les Autoriser. J'espère que la version éditée est clair. Merci.
OriginalL'auteur Wiktor Zychla
Avez-vous essayer de permettre à l'anonyme d'autorisation pour l'URL, comme dans l'exemple ci-dessous
Similaires à cela, vous devez définir pour la ResetPassword /Restaurer le mot de passe /s'Inscrire etc...
OriginalL'auteur Saravanan
J'ai enlevé la partie suivante à partir du web.config puis il a commencé à travailler pour moi.
OriginalL'auteur Arulraj