none
Arquitetura de autenticação da aplição, pode ser a mesma do SGBD? RRS feed

  • Pergunta

  • Galera,

    Minha dúvida é a seguinte: Quais os prós e os contras em se utilizar o próprio SGBD pra administrar a autenticação do usuário?

    Exemplo: Minha aplicação terá o banco de dados SQL Server... Quando eu criar um usuario na minha aplicação eu quero que esse usuário seja criado no SGBD. Assim eu posso criar as permissões de cada usuário como uma Role do sql pra cada tabela.

    O que acham dessa arquitetura?

    Bem, eu preferencialmente adoto o Windows Identity, mas surgiu a possibilidade de fazer dessa maneira. E gostaria de argumentar com a comunidade sobre vantagens e desvantagens.


    Wladiston Paiva - @wladiston - Microsoft MCTS, MTA

    quarta-feira, 11 de julho de 2012 16:57

Respostas

  • O argumento que usei já não bastaria?

    Custo com administração de usuários de SGDB / Exposição de segurança da informação / Tratamento da regra de controle de acesso fora da camada do sistema /

    Simples, conecte-se ao banco com um usuário de sistema e faça algo que por regra de negócio não seria possível.

    Vai fazer eles pensarem no problema.


    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    Eduardo Pires
    www.eduardopires.net.br

           

    • Marcado como Resposta Mauricio P.d segunda-feira, 16 de julho de 2012 18:16
    segunda-feira, 16 de julho de 2012 18:13

Todas as Respostas

  • Olá,

    Essa é minha opinião:

    Eu não considero isso um modelo de arquitetura, não faria assim e não recomendo que faça.

    Existem N motivos, vou citar apenas um para lhe fazer pensar:

    O usuário XPTO tem acesso ao sistema (e por sua vez um usuário no SGBD), ele pode fazer  Select, Update, Delete.
    Ele pode muito bem acessar a base com esse usuário e alterar qualquer registro sem obedecer o fluxo do sistema ou regra de negócio.
    Se você arrumar um jeito de bloquear o acesso direto a base ele pode ainda desenvolver um sisteminha que execute comandos SQL a vontade na base.

    É perigoso... (Para não falar coisa pior).

    Use windows identity, membership, controle manual, qualquer coisa, mas não dê acesso ao usuário no banco dessa forma.

    Ajudei?

    Abç...


    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    Eduardo Pires
    www.eduardopires.net.br

           

    segunda-feira, 16 de julho de 2012 17:24
  • Oi Eduardo!

    Bom, eu tb não curto essa lógica/modelo/arquitetura/gambiarra.

    Mas eu diria que o pessoal já implementou assim e ta meio difícil arrumar argumentos que convença eles de que dessa forma não é uma boa opção.

    Sacou?


    Wladiston Paiva - @wladiston - Microsoft MCTS, MTA

    segunda-feira, 16 de julho de 2012 17:30
  • O argumento que usei já não bastaria?

    Custo com administração de usuários de SGDB / Exposição de segurança da informação / Tratamento da regra de controle de acesso fora da camada do sistema /

    Simples, conecte-se ao banco com um usuário de sistema e faça algo que por regra de negócio não seria possível.

    Vai fazer eles pensarem no problema.


    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    Eduardo Pires
    www.eduardopires.net.br

           

    • Marcado como Resposta Mauricio P.d segunda-feira, 16 de julho de 2012 18:16
    segunda-feira, 16 de julho de 2012 18:13
  • Farei isso.

    Obrigado pela ajuda!


    Wladiston Paiva - @wladiston - Microsoft MCTS, MTA

    segunda-feira, 16 de julho de 2012 18:16