quarta-feira, 8 de maio de 2013

Configurando permissões de acesso no ADempiere - Parte 1

Todo sistema, independente do tipo, necessita ter controles de acesso. Isso impede, por exemplo, que usuários façam operações indevidas no sistema que possam comprometer o funcionamento do mesmo. Além disso é fundamental que possam ter meios de se controlar quem pode acessar o que. O ADempiere tem algumas maneiras de se controlar o acesso a registros, janelas e campos. Nesse artigo pretendo mostrar brevemente como é o controle de acesso no ADempiere.

O controle de acesso no ADempiere é baseado em dois aspectos principais:

  • Usuários
  • Perfis de Acesso: no ADempiere também chamado de Papel/Função

Todo acesso no ADempiere é baseado no conjunto desses dois aspectos. O acesso que o usuário vai ter no sistema vai depender do perfil de acesso que ele estiver utilizando. No processo de login no sistema, além de preencher os dados básicos de acesso (usuário e senha), o usuário tem de informar com qual perfil de acesso vai acessar. Isso quer dizer que para um mesmo usuário pode estar configurado mais de um tipo de acesso. Exemplo: imagine que um usuário pode acessar o sistema tanto com um perfil Comercial quanto com um perfil Financeiro. Assim ele poderia fazer funções destinadas a usuário do perfil Comercial bem como funções dos usuários do perfil Financeiro.

Um dado importante no ADempiere é que o usuário não vai usar dois perfis ao mesmo tempo. Ele define o acesso, como falado antes, no momento do login, como mostra a tela abaixo:


O tipo de acesso é indicado no campo Regra, que no exemplo acima está preenchido com o perfil GardenWorld Admin, que é um tipo de acesso configurado para a empresa de teste GardenWorld. Se já tem o ADempiere instalado, veja quais são as regras definidas para os usuários da instalação padrão do ADempiere (para lembrar sobre usuários padrões: http://adempierebr.blogspot.com.br/2012/02/adempiere-usuarios.html)

Uma vez escolhida o perfil de acesso, o ADempiere mostrará o menu de acordo com o perfil escolhido. Mas como são criados os perfis de acesso e são configuradas permissões? Ao fazer login com o perfil GardenWorld Admin, acesse a janela Papel (Função) que na instalação padrão do ADempiere fica no menu Administrador do Sistema -> Regras Gerais -> Segurança. 
Clique na imagem para ver em tamanho maior


É na janela mostrada na figura acima que se cadastra perfis de acesso bem como se configura as permissões que os perfis terão. Para explicação detalhada dessa janela seriam necessários alguns artigos,  então vou apenas me concentrar nos itens que uso mais.

A primeira aba, Papel (Função), contém os dados básicos do perfil. Recomendo tomar muito cuidado e não alterar o perfil Admin da empresa (no exemplo acima GardenWorld Admin) pois uma manutenção indevida pode fazer com que o próprio administrador fique sem acesso às configurações.

Na aba Acesso Org indicam-se as organizações as quais esse perfil terá acesso. Pode ser que em uma implantação precise se definir perfis diferentes para cada organização. Então nessa aba se faz o vínculo da Organização com o Perfil de Acesso. Caso o perfil tenha acesso a todas as organizações basta marcar o campo Acessar Todas Orgs da aba principal. Se não fizer uma coisa e nem outra o perfil não conseguirá acessar o sistema.

Em Designação de Usuário define-se quais usuários pode usar esse perfil de acesso. Como falado antes,   um usuário pode ter acesso a mais um perfil.

Por fim, temos as abas de permissões de acesso aos elementos do ADempiere: janelas, processos, formulários, fluxos e tarefas. Para cada aba se indica quais elementos o perfil pode acessar. Isso faz, por exemplo, que um usuário não veja a janela no menu ou tenha acesso de somente leitura em uma janela. Como exemplo, olhem como é a configuração de acesso a janelas:

Clique na imagem para ver em tamanho maior


Assim, pode-se configurar para o perfil quais janelas ele terá acesso e como ele acessará. No exemplo acima o perfil é o administrador da empresa que obviamente pode ter acesso a todas as janelas.

A mesma ideia vale para os outros elementos. Recomendo verificar a configuração para o perfil GardenWorld User. 

No próximo artigo continuaremos explicando o controle de acesso no ADempiere. Até lá!