Question

Je souhaite afficher certains liens uniquement vers des utilisateurs authentifiés dans une application Web asp.net mvc.

  • J'utilise le modèle d'une application Web asp.net mvc dans Visual Studio 2008 fourni avec la version bêta de asp.net mvc.
  • J'utilise l'authentification par formulaire.
  • J'aimerais ajouter un élément similaire à celui-ci dans une vue existante:
<a href="/Account/ChangePassword">Change password</a>

et affichez uniquement le lien vers les utilisateurs connectés.

Quel est le moyen le plus simple de le faire? Je voudrais quelque chose d'aussi simple que le rognage de sécurité du web.sitemap que j'ai essayé avec les formulaires Web asp.net. (Cela peut-il être utilisé avec mvc? Ou est-ce uniquement pour les formulaires Web?)

Était-ce utile?

La solution

Ce qui suit devrait fonctionner. Vous devrez également faire quelque chose de similaire dans l'action du contrôleur à cet effet si l'utilisateur entre l'URL à la main dans son navigateur. Ou, comme vous le dites, vous pouvez restreindre l'accès à l'action dans le fichier web.config.

 <% if (HttpContext.Current.Request.IsAuthenticated) { %>
    <a href="/Account/ChangePassword">Change password</a>
 <% } %>

Autres conseils

Vous pouvez créer un SiteMapProvider personnalisé comme celui-ci:

Construction d'un fournisseur de sitemap ASP.NET MVC avec suppression de sécurité

afficher le lien pour changer le mot de passe

  

afficher le lien de connexion

Vous pouvez simplement en résumer ceci:

       Modifier le mot de passe
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top