Classe SEGURANÇA Histórico de versões Data Autor Modificação 05/11/2008 Robinson Criação do documento 10/11/2008 Robinson Tópico Configuração para inclusão do script config.php Introdução Camada de segurança escrita em PHP – Personal Home Page que possibilita a integração dos sistemas corporativos da CETESB ao Sistema de Segurança. Como vantagens do uso deste recurso, podemos destacar: Uniformização dos procedimentos de controle de acesso aos sistemas corporativos, que elimina a redundância de esforços para sua implementação a cada sistema desenvolvido. Implementação Para o uso desta classe, sempre que necessário verificar que um usuário tem acesso a determinado módulo e funcionalidade de um sistema, deve-se requisitar o arquivo class_seguranca.php que representa fisicamente a classe e instanciar um novo objeto que representará a classe dentro do sistema. Exemplo: include_once("../../../classes/seguranca/class_seguranca.php"); $mySegur = new seguranca(); Em seguida a classe deve ser iniciada, para isto deve ser fornecido o login do usuário e a Descrição Resumida do sistema cadastrado no Sistema de Segurança. Exemplo: $mySegur->inicr(‘robinsont’,’ENQUETE’); Na prática, o login deve ser obtido por meio da utilização da classe LOGIN. Para verificar que o usuário tem acesso a determinado módulo e funcionalidade do sistema deve-se utilizar o método TemPermissao. Exemplo: $mySegur->TemPermissaoinicr(‘enqueteconsulta’,’consulta1’); Composição Esta classe é composta pelos seguintes atributos e métodos: Atributos usuri: Indica o login de usuário utilizado na inicialização da classe. Este atributo é somente leitura, ou seja, não pode ser alterado. Ele somente estará disponível após uma execução bem sucedida do método inicr(). sistm: Contém a descrição resumida do sistema informado na inicialização da classe. Este atributo é somente leitura, ou seja, não pode ser alterado. Ele somente estará disponível após uma execução bem sucedida do método inicr(). Métodos inicr(pUsuri, pSistm) Inicializa a classe. Durante a inicialização este método obterá os módulos e funcionalidades do sistema cadastrados no Sistema de Segurança bem como a relação dos privilégios de acesso do usuário. Requer somente uma execução por sessão, ou seja, não necessita ser instanciado a cada execução dos demais métodos da classe. Parâmetros pUsuri: Login o usuário autenticado na rede. O login do usuário deve ser obtido por meio da classe LOGIN. pSistm: Descrição resumida do sistema informado quando de seu cadastramento no Sistema de Segurança. Valores retornados Nenhum valor será retornado. A função se encarrega da interação com o usuário, emitindo as mensagens pertinentes. TemPermissao(pDResmdModul, pDResmdFuncl) Verifica se um usuário tem acesso a determinado módulo e funcionalidade de um sistema. Ele somente estará disponível após uma execução bem sucedida do método inicr(). Parâmetros pDResmdModul: Descrição resumida do módulo informado quando de seu cadastramento no Sistema de Segurança. pDResmdFuncl: Descrição resumida da funcionalidade quando de seu cadastramento no Sistema de Segurança. Valores retornados: Nenhum valor será retornado. A função se encarrega da interação com o usuário, emitindo as mensagens pertinentes. show_funcl_sistm() Método de apoio ao programador. Poderá ser invocado para exibir no browser, a lista de funcionalidades do sistema informado na inicialização da classe. show_funcl_usuri() Método de apoio ao programador. Poderá ser invocado para exibir no browser, a lista de funcionalidades para as quais o usuário, informado na inicialização da classe, tem acesso. Configuração Script: /config.php O caminho relativo onde a classe está localizado no servidor, deve ser atribuído à variável $var_caminho. Exemplo: $caminho = "/sistemas/Classes/seguranca/"; A variável $print pode ser utilizada ativar ou desativar mensagens durante a pesquisa das funcionalidades do sistema e permissões do usuário. Exemplo: $print = 1; Script: /mensg/mensg.php O caminho relativo onde o script está localizado no servidor, deve ser atribuído à variável $caminho. Exemplo: $caminho = "/sistemas/Classes/seguranca/msg/"; Dependências Nenhuma dependência conhecida.