Segurança do link corte em asp.net mvc
-
11-07-2019 - |
Pergunta
Eu gostaria de mostrar alguns links apenas para usuários autenticados em um aplicativo asp.net MVC web.
- Eu uso o modelo para uma aplicação web mvc asp.net no Visual Studio 2008 que veio com a versão beta do asp.net mvc.
- Eu uso a autenticação de formulários.
- Eu gostaria de adicionar algo como o seguinte para uma vista existente:
<a href="/Account/ChangePassword">Change password</a>
e só mostrar o link para os usuários que estão logados.
O que é a maneira mais simples de fazer isso? Eu gostaria de algo tão simples como a filtragem de segurança do web.sitemap que eu tentei com formulários asp.net web. (Isso pode ser usado com MVC? Ou é apenas para formulários web?)
Solução
A seguir deve funcionar. Você também vai precisar fazer algo semelhante na ação do controlador para este caso o usuário entradas a URL com a mão em seu browser. Ou, como você diz, você pode restringir o acesso à ação no web.config.
<% if (HttpContext.Current.Request.IsAuthenticated) { %>
<a href="/Account/ChangePassword">Change password</a>
<% } %>
Outras dicas
Você pode construir um SiteMapProvider personalizado como este:
Construindo um provedor de ASP.NET MVC mapa do site com segurança aparar
link show de alteração de senha
link programa de login
Você pode simplesmente-lo apenas para isso:
Alterar senha