Pergunta

Como faço para obter a autorização com o MVC ASP.NET?

Foi útil?

Solução

Use o atributo Authorize

[Authorize]
public ActionResult MyAction()
{
   //stuff
}

Você também pode usar isso no controlador. Também pode passar em usuários ou funções.

Se você quiser algo com um pouco mais de controle, você pode tentar algo como isto.

 public class CustomAuthorizeAttribute : AuthorizeAttribute
    {
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            string[] users = Users.Split(',');

            if (!httpContext.User.Identity.IsAuthenticated)
                return false;

            if (users.Length > 0 &&
                !users.Contains(httpContext.User.Identity.Name,
                    StringComparer.OrdinalIgnoreCase))
                return false;

            return true;
        }
    }

Outras dicas

Existe um recurso de autorização com o MVC, usando o ASP.NET MVC Beta e a criação do projeto MVC do Visual Studio, adiciona automaticamente um controlador que usou a autorização. Uma coisa que ajudará na sua pesquisa no Google é que é um "filtro". Portanto, tente pesquisar no "Filtro de autorização MVC" e qualquer coisa que a visualização seja 4 ou superior a ajudará.

Eu recomendaria dar uma olhada neste artigo:http://kbochevski.blogspot.com/2009/11/mvc-forms-authentication-and.html

Isso me ajudou hoje.

É assim que você pode ter autenticação por padrão:http://mycodepad.wordpress.com/2014/03/17/mvc-secure-your-web-app/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top