Comment faire pour forcer l'utilisateur à se connecter à voir tout le contenu à l'aide de ASP.NET MVC 4
Je suis en train de travailler sur un "ASP.NET MVC 4' application et de l'utilisation 'SimpleMembershipProvider'. L'application sera utilisée dans l'intranet et il n'y aura pas de contenu disponible pour les non utilisateurs autorisés donc je veux de la force de connexion avant de laisser à l'utilisateur le réel contenu du site.
Je pense que cela devrait être plutôt facile mais c'est la première fois que j'ai à mettre en œuvre une telle logique et je tiens également à le faire MVC 4/SimpleMemebrship
style donc je cherche des conseils.
La façon dont je pense qu'il devrait être mis en œuvre est le premier à ajouter cela dans le web.config:
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="15" slidingExpiration="true" enableCrossAppRedirects="false" protection="All" />
</authentication>
après tout je n'ai pas d'action qui permettra anonyme donc je pense que c'est mieux de mettre ça ici.
Et changer ma Route par défaut:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional }
);
Qui, comme je le vois, est la seule action qui permettra anonyme. Cependant, je suis un peu inquiet sur la modification de l'itinéraire par défaut pour Login
je ne suis pas sûr si cela ne vous conduira pas à une rentrée d'inconvénients.
J'ai aussi l'idée de garder la structure par défaut créé par le MVC 4 Internet Template
, en laissant les Index
action de la Home
contrôleur de la prise de responsabilité, mais je n'aime pas ce scénario parce que la logique est claire: l'utilisateur doit être connecté afin d'acquérir tout type d'accès et même Home/Index
est certains d'accès dans mon esprit.
Alors, quelle est la façon de mettre en œuvre ce genre de comportement? Quelles sont les étapes de base, les changements que je doit faire pour mettre en œuvre ce droit?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez obtenir en vous inscrivant
Authorize
attribut comme filtre global. Soufflet est un exemple de la façon dont votreRegisterGlobalFilters
méthode devrait ressembler à:dans ce lieu, vous aurez pour permettre aux utilisateurs anonymes d'accéder à la page de connexion. Pour cela, vous annoter votre Connexion méthode d'action avec
AllowAnonymous
attribut.Faire de même pour la Connexion méthode d'action qui reçoit une requête POST.