none
Modelo de Login e autenticação RRS feed

  • Pergunta

  • Preciso desenvolver um modelo de Login e autenticação, a estrutura que tenho não consigo usar os controles de Membership padrão, tenho minhas próprias tabelas:

     - Login: (ChapaFuncionario, Senha, Bloqueado)

     - Privilegios (AplicacaoId e Nome)

     - LoginPrivilegio(ChapaFuncionario e PrivilegioId) 

     - Aplicacao (Nome)

    Basicamente são essas tabelas e seus principais atributos, Tenho a seguinte dúvida:

    Crio meu próprio modelo de Login e autenticação, sem basear nos Provider do Membership?

    Ou utilizo MembershipProvider para Login e RoleProvider para os Privilégios?

    sexta-feira, 30 de novembro de 2012 10:37

Respostas

  • Olá Pedro,

    Você pode fazer seu próprio controle de usuário e estender apenas as Roles, olha só exemplo em MVC para poder dar privilegio.

    Você está em Webforms ou MVC?

    • Marcado como Resposta Pedro Ogm sexta-feira, 30 de novembro de 2012 14:04
    sexta-feira, 30 de novembro de 2012 12:45
    Moderador

Todas as Respostas

  • Olá Pedro,

    Você pode fazer seu próprio controle de usuário e estender apenas as Roles, olha só exemplo em MVC para poder dar privilegio.

    Você está em Webforms ou MVC?

    • Marcado como Resposta Pedro Ogm sexta-feira, 30 de novembro de 2012 14:04
    sexta-feira, 30 de novembro de 2012 12:45
    Moderador
  • Estou usando WebForms, penso em dar as permissões de acesso igual ao membership, pelo Web.config, Com RoleProvider eu consigo fazer isso? ou tenho que implementar outro Provider?
    sexta-feira, 30 de novembro de 2012 12:49
  • Eu digo estender as roles é as vezes você não quer usar as tabelas do memberShip, quer usar da sua tabela. O RoleProvide é uma classe Abstrata que  SqlRoleProvider do MemberShip implementa, e que a gente pode usar para pode estender também para nossa fonte de dados, para poder trabalhar com regras(roles). Se você não quiser configurar no Web.Config pode fazer via código, as paginas quem pode acessar.

    um exemplo no Form_Load

                //se o usuario nao estiver na role(papel) redireciona....
                if (!Roles.IsUserInRole("João", "Financeiro")) 
                {
                    Response.Redirect("~/login.aspx");
                }



    sexta-feira, 30 de novembro de 2012 13:19
    Moderador