Manual de permissões
Introdução
A configuração das permissões de acesso aos dados, processos e relatórios é feito no âmbito das classes de dados, seguindo a mesma lógica geral do sistema. Os dados contidos no sistema são valiosos e em algumas situações extremamente confidenciais. A maior responsabilidade do administrador é garantir o acesso correto às informações pelos usuários do sistema, permitindo que os usuários tenham acesso a todas as informações necessárias para desempenhar o seu papel na organização e impedir que vejam dados que estão além da sua competência.
A forma mais recomendável de gerenciar as permissões do sistema é dividir os usuários em grupos, que por sua vez receberão as devidas permissões de acesso. A estratégia de dividir os usuários em grupos, espelhando a organização da própria empresa. Isso permite o compartilhamento mais eficiente de informações, pois se adapta melhor ao fluxo natural de trabalho entre os colaboradores.
Apesar de ser possível controlar o acesso ao sistema individualmente, é recomendado associar os usuários a determinados grupos de trabalho, oferecendo as permissões para os grupos em vez dos indivíduos neles contidos.
Permissões de dados e de processos/relatórios
O sistema de permissões permite controlar o acesso dos grupos de usuários aos dados do sistema e aos processos/relatórios separadamente. Entender esta diferença é fundamental para gerenciar corretamente as permissões associadas às classes de dados e aos processos ou relatórios.
Quando estabelecemos permissões para o acesso aos dados, elas definem o acesso a estes dados independente do processo ou relatório onde eles sejam por ventura exibidos. Já as permissões relacionadas aos processos ou relatórios configuram o acesso dos usuários a estas interfaces em si (e sua disposição no menu Ir Para), mas não garantem que os dados relativos a elas estarão acessíveis. Tendo estes conceitos em mente, é recomendado começar definindo as permissões relativas aos dados para, em seguida, configurar as permissões relativas aos processos e relatórios que permitem a sua visualização.
Gestão de permissões por grupos
É extremamente recomendado categorizar os usuários em grupos relativos às suas funções na empresa para facilitar a aplicação das permissões. Essa prática favorece uma abordagem mais dinâmica, relacionando as permissões às funções desempenhadas pelos usuários, de forma que se for preciso realizar alguma substituição basta mudar as associações aos grupos, em vez de editar as permissões respectivas a cada usuário.
Entre outras vantagens, esse procedimento permite que as permissões sejam concedidas ou revogadas em massa e permite que elas sejam herdadas (soma de privilégios) ao longo da hierarquia da empresa, agilizando o seu gerenciamento. Mais informações sobre a associação de grupos a outro grupos na sessão Associação de grupos.
Permissões globais via grupo Todos usuários
Para conferir automaticamente permissões globais (que afetam todos os usuários do sistema), basta defini-las para o grupo especial Todos usuários.
Herança de permissões
Quando as permissões são definidas para uma determinada classe, elas são automaticamente replicadas ao longo das suas classes maternas, garantindo o acesso correto à classe configurada. Para estender as permissões às classes filhas é necessário utilizar o campo "Aplicar na" na grade de Permissões. Caso o campo seja preenchido com o valor "Classe", a permissão será aplicada apenas na classe em questão e não será aplicada nas classes e arquivos filhos. Já o valor "Classes e filhas" indica que essa permissão será aplicada também para todas as classes e arquivos filhos, inclusive para os criados após a concessão da permissão. Caso não deseje que a herança seja aplicada automaticamente para as novas classes e arquivos, configure o campo "Aplicar na" com o valor "Apenas na classe" e replique as permissões manualmente utilizando o botão "Replicar nas classes filhas".
As permissões atribuídas a um grupo podem ser facilmente somadas às permissões de outro grupo, basta associar o grupo de destino ao grupo de origem. Esta característica permite a construção de um sistema lógico e eficiente para gerenciar as permissões dos grupos aos quais os usuários são associados. Recomenda-se começar a configuração de permissões pelos grupos que possuem menor poder de acesso, para depois associá-los a outros grupos que possuem maior poder de acesso e então completar concedendo as novas permissões que faltam.
Processo Permissões
O processo de permissões é composto por duas grades: a Árvore de classes e a grade Permissões. A Árvore de classes serve para visualizar das classes do sistema e escolher a classe desejada, enquanto a grade Permissões exibe os registros de grupos (ou usuários) listados na classe selecionada, assim como suas respectivas permissões.
Árvore de classes
Grade de árvore que contém todas as classes cadastradas no sistema, organizadas e hierarquizadas. A árvore de classes permite visualizar e selecionar as classes do sistema. Fica localizada do lado esquerdo da tela.
Permissões
Grade de dados que contém os registros dos usuários (ou grupo de usuários) e suas respectivas permissões em relação à classe selecionada na árvore de classes. Fica localizada do lado direito da tela.
Permissões padronizadas
Após selecionar uma classe na Árvore de classes, é possível alterar as seguintes permissões na grade Permissões:
Ver: Permite que o usuário visualize os dados existentes
Inserir: Permite que o usuário insira novos dados
Alterar: Permite que o usuário altere os dados existentes
Excluir: Permite que o usuário exclua os dados existentes
Campos visíveis: Conjunto de campos visíveis pelo usuário na classe selecionada
Campos alteráveis: Conjunto de campos alteráveis pelo usuário na classe selecionada
Início: Data na qual as permissões serão concedidas automaticamente
Hora início: Hora na qual as permissões serão concedidas automaticamente
Fim: Data na qual as permissões serão revogadas automaticamente
Hora fim: Hora na qual as permissões serão revogadas automaticamente
Concedendo e revogando permissões para campos de classes
Por padrão, o sistema concede permissão para todos os campos definidos nas classes. Esta é uma abordagem simples que atende bem a realidade das empresas. No entanto, em ambientes com controle de informações mais elaborados, se faz necessário um controle mais específico, a nível de campos.
Para este fim, o sistema possui o conceito de concessão e revogação de permissões de campos. Ele controla dois tipos de permissões: visão e alteração.
Para conceder ou revogar essas permissões para algum campo específico de uma classe, você deve preencher a grade auxiliar apropriada - "Campos visíveis" ou "Campos alteráveis". Ambas as grades possuem os seguintes campos:
Ação: pode ser uma concessão (para ver ou alterar) ou revogação (para ocultar o campo, ou não permitir que seja alterado);
Nome: o nome "real" do campo, pelo qual o sistema o identifica;
Nome de exibição: o nome que é usado para exibição, nas telas que utilizam esse campo. É preenchido com base na definição do campo na classe.
De classe: indica se o campo foi definido em uma classe.
Dessa forma, se queremos, por exemplo, revogar a permissão de alteração para o campo "DEVOLUCAO" - fazendo assim com que seja inalterável pelo usuário, grupo ou papel em questão - preenchemos seu nome na grade "Campos Alteráveis". No campo "Ação", selecionamos a opção "- Revogar".
Como o padrão é a concessão da permissão para todos os campos, normalmente apenas se faz uso do conceito de revogação. O uso da concessão acaba se restringindo para cancelar uma revogação anterior. Exemplo: no grupo Operadores de Caixa, revogamos a permissão de alteração do preço unitário. Se criamos um grupo Gerentes de Loja e este incluir o grupo Operadores de Caixa, ele também não terá permissão de alterar este campo. Neste cenário, podemos conceder a permissão de alteração ao grupo Gerentes de Loja como forma de anular a restrição do grupo herdado. Apesar de ser um cenário válido, não recomendamos que grupos ou papéis menos restritos incluam grupos ou papéis mais restritos, justamente para evitar a necessidade de conceder permissões previamente revogadas.
As permissões de campos tem a característica de serem herdadas. Desta forma, cada classe repete o comportamento de sua classe-mãe com relação a campos visíveis e alteráveis. Se uma permissão for revogada na classe mãe e concedida em uma classe filha, prevalecerá a configuração da filha. Ou seja, a ordem de avaliação será da classe da Raiz até a classe do registro, prevalecendo a última configuração.
Para conceder ou revogar as permissões para todos os campos de uma classe, preencha um asterisco no nome do campo.
Lembre-se de que cada classe possui um conjunto de campos visíveis e outro de campos alteráveis para cada grupo cadastrado no sistema. Para que uma configuração afete todos os usuários, preencha as concessões e revogações para o grupo "Todos".
Caso um usuário faça parte de um grupo ou papel que conceda permissão a um campo, e de outro que revogue a permissão para o mesmo campo, valerá a definição do grupo ou papel de menor ordem. Por exemplo, suponha que temos um grupo chamado "Operadores de caixa", cadastrado com ordem 2, para o qual foi revogada a permissão de alteração do campo DEVOLUCAO; e outro grupo chamado "Gerentes de loja", com ordem 1, para o qual o mesmo campo teve a permissão concedida. Se um usuário fizer parte dos dois grupos, ele poderá alterar o valor do campo DEVOLUCAO nas grades que usarem esse campo, pois o grupo de menor ordem está concedendo a permissão.
Modelo antigo de permissões por campo
Existe um modelo antigo de permissões que era utilizado em versões anteriores do sistema. Embora não seja recomendado seu uso, ele ainda é suportado, para manter a compatibilidade com quaisquer permissões já cadastradas em uma base.
Nesse modelo, um conjunto de campos (visíveis ou alteráveis) vazio apenas repete o comportamento da classe-mãe, e por padrão todos os campos são visíveis e alteráveis. As grades são preenchidas com os nomes dos campos e com a ação de conceder no modelo antigo. Com a grade preenchida, considera-se que as permissões foram concedidas para todos os campos nela presentes, e que as permissões foram revogadas para todos os demais campos da classe.
Dessa forma, para se revogar a permissão de um único campo, era necessário relacionar os nomes de todos os demais campos da classe. Isso exigia muito esforço para classes com muitos campos, e por isso desencorajamos o uso desse modelo. Note que não é possível preencher os campos visíveis ou campos alteráveis com um modelo híbrido; ou deve-se utilizar os modelo atual (concessão ou revogação simples), ou a opção de concessão no modelo antigo.
Caso um usuário faça parte de grupos com os campos preenchidos no modelo novo e de grupos com os campos preenchidos no modelo antigo, serão aplicadas primeiro as permissões do modelo antigo, e em seguida as permissões do modelo novo. Valerão as permissões aplicadas por último, ou seja, as permissões do modelo novo se sobrepõem às do modelo antigo.
Permissões personalizadas
São permissões aplicadas a processos específicos de processos do ERP. Exemplo: Aprova pedido, etc.
Operações comuns
Permitir que usuários comuns mudem sua própria senha
Por padrão, apenas usuários do grupo Administradores podem realizar mudanças de senha. Para permitir que cada usuário seja capaz de mudar sua senha, basta conferir acesso do grupo Todos usuários à classe Perfil do Usuário (localizada em /INTEQengine/modules/Perfil do Usuário).
Processo Copiar permissões
Permite copiar permissões de um grupo para outro. Caso o grupo de destino já possua permissões, elas serão sobreescritas. Atualmente, o uso deste processo não é recomendado, pois é mais prático associar o grupo de destino ao grupo do qual se deseja copiar as permissões.
Processo Diferenças de permissões
Processo que compara e exibe as diferenças entre as permissões de um grupo ou papel de usuário de duas bases de dados. Esse processo é útil para visualizar as alterações de permissões que irá ocorrer após uma atualização de produtos. Ele apresenta as informações de forma similar ao relatório Análise de permissões.
Relatório Análise de permissões
Exibe as permissões do usuário, grupo ou papel selecionado. É possível refinar a pesquisa definindo filtros para produtos, módulos e aprovadores das permissões.
Relatório Permissões da classe
Exibe os grupos e usuários (separadamente) que estão cadastrados em determinada classe do sistema. Ao abrir a lista de seleção, será exibida uma grade de árvore com os diferentes níveis do sistema, permitindo a seleção individual e precisa das classes. Também é possível selecionar rapidamente todas as classes clicando no botão Todos.
Relatório Permissões do grupo
Exibe a lista de usuários cadastrados no grupo selecionado e a hierarquia das classes nas quais eles possuem permissões. Permite refinar os resultados em classes de hierarquia e permissões específicas. É possível refinar a pesquisa definindo o tipo de permissão individualmente nos campos que ficam na parte inferior da grade.
É recomendado o uso frequente deste processo para avaliação do estado das permissões do sistema, pois ele permite uma visão geral de todas as permissões em relação aos grupos/usuários cadastrados.