= Validar Acesso = == 1 Descrição == A camada de controle valida se um usuário tem acesso a uma ação da aplicação através da consulta de determinadas tabelas do banco de dados do expresso. Estas tabelas utilizam o prefixo app e são populadas no cadastro ou manutenção da aplicação. Sempre que a camada de controle for executar uma ação é executada a rotina de validação de acesso utilizando o usuário mantido na sessão do expresso. O acesso as ações são propriedades de grupos que contém usuário e são cadastrados na tabela app_groups. Existe uma tabela que faz o relacionamento entre usuários e grupos e outra que liga grupos a permissões de acesso. Para que um ator do sistema possa executar uma ação é necessário que este pertença ao grupo que pode executa-la. A camada de controle do módulo tem implementado os métodos necessários para acessar o banco de dados e recuperar a sessão do expresso para realizar a validação dos dados. Esta validação serve também para fornecer para a camada qual a classe deve ser instânciada e qual o método deve ser executado para a ação. Estas informações são utilizadas para executar as regras de negócio relativas a ação. == 2 Atores == 1. Usuários do Sistema == 3 Pré-condições == Usuário ter sido validado pelo expresso == 4 Eventos == 1. Camada de controle solicita a validação do usuário passando o id contido na sessão. 2. Camada de controle executa consulta no banco de dados utilizando o id da sessão, codigo da aplicação e código da ação como parâmetro da consulta; 3. Banco de dados retorna classe e método a ser executado pela camada de controle.{A1}{E1} == 5 Eventos Alternativos == 1. Banco de dados não localiza nenhum registro e retorna que o usuário não tem permissão de acesso para realizar a ação. == 6 Tratamento de Erros == 1. Ocorreu erro no acesso ao banco de dados ou erro na instrução SQL, gera mensagem de erro {M1}{M2} para a classe de controle. == 7 Mensagem == 1. Não foi possível acessar o banco de dados, tente novamente mais tarde. 2. Erro ao acessar as informações do usuário. == 8 Pós-condições == Informação de validação ou não do usuário. == 9 Regras de Negócio == O usuário somente poderá executar uma atividade se pertence ao grupo que tem acesso a execução da mesma. == 10 Imagens == [[Image(app_model.png)]] == 11 Notas ==