none
Controle de acesso a módulos em .NET MVC RRS feed

  • Pergunta

  • Pessoal estou precisando colocar o controle de acesso em uma aplicação, e estou na dúvida qual seria a melhor maneira.

    Estava pensando em fazer com Role Provider Customizado, porém a minha dúvida, quando o usuário loga, o provider pega todas as roles do usuário e gerencia ele mesmo ou a cada solicitação, vai no banco de dados para validar isto?

    Ou seria melhor utilizar AuthorizeAttribute, e buscar os dados em uma tabela com poucas colunas para ser rápida e eficaz?

    O que vocês usam para controlar os acessos aos módulos e funções do sistema?

    []s

    Marlon

    Marlon Tiedt
    www.sesmt.com.br

    terça-feira, 10 de setembro de 2013 19:15

Todas as Respostas

  • Boa tarde,

    Quando o usuário loga o Role provider deve carregar as roles desse usuário na sessão deste. Só é necessário acessar o banco se o usuário não estiver autenticado, então é apenas um acesso. 

    Você deve utilizar o AuthorizeAttribute de qualquer forma para garantir que somente pessoas autenticadas consigam acessar recursos da sua aplicação que não devem ser disponibilizados para anônimos.

    Você pode criar um AuthorizeAttribute personalizado que leia as Roles, User que têm permissão também em uma tabela e então casar as Roles do AuthorizeAttribute com as do usuário.

    Att,

    terça-feira, 10 de setembro de 2013 19:56