- Criado por Danilo Basilio Medeiros, última alteração por Caio Renan Oliveira Lima em 25 jul, 2023
A rotina Privilégios do Protheus permite definir regras de acessos a rotinas para usuários e grupos, facilitando a administração e manutenção de direitos.
Para configurar a rotina Privilégios, existem 2 opções:
1. Inclusão manual de rotinas: você cria um novo privilégio e inclui apenas as rotinas que deseja configurar.
- Acesse Configurador > Usuário > Senhas > Privilégios
- Clique em Incluir
- Defina um nome (campo Regra) e descrição (campo Comentário) para o Privilégio
- Clique 2 vezes abaixo da coluna Transação/Rotina, e digite o nome do objeto da rotina que deseja configurar (MATA010 por exemplo)
- Para incluir outras rotinas, tecle seta para baixo no teclado
Informação:
Para a maioria das rotinas, é possível visualizar o nome do objeto pressionando a tecla SHIFT+F6 na tela da rotina. Algumas rotinas, como a rotina Spool do menu Miscelânea (que possui o nome de objeto OURSPOOL), podem não exibir o nome real do objeto no SHIFT+F6. Nestes casos, recomendamos entrar em contato com a equipe de suporte responsável pelo módulo para verificar o nome a ser utilizado.
Nota:
A partir da lib com label 20170208 será permitido controlar o acesso de funções de usuário. Para isso, faça o cadastro informando o "U_" e sem o "()", como no exemplo: U_CUSTFUNC.
Para funções de usuário que queriam ter suas funcionalidades controladas é necessário que a mesma esteja compilada em um fonte de mesmo nome e que possua
implementada a função estática MenuDef()
que é responsável pela definição do menu de funcionalidades.
Exemplo de Fonte: custfunc.prw
User Function CustFunc local aRotina := MenuDef() //... restante do código. Return Static Function Menudef Local aRotina := { {"Pesquisar" ,"AxPesqui",0,1} ,; {"Visualizar" ,"AxVisual",0,2} ,; {"Incluir" ,"AxInclui",0,3} ,; {"Alterar" ,"AxAltera",0,4} ,; {"Excluir" ,"AxDeleta",0,5}} Return aRotina
2. Inclusão de todas as rotinas de um menu: você cria um novo privilégio baseado em um menu. Todas as rotinas desse menu serão carregadas para configuração.
- Acesse Configurador > Usuário > Senhas > Privilégios
- Clique em Incluir
- Clique em Outras Ações (Ações Relacionadas) e selecione Menu
- Clique em Avançar, clique na Lupa e localize o arquivo .xnu do menu que deseja configurar os privilégios
- Clique em Finalizar. As rotinas do menu serão carregadas
- Após incluir as rotinas na seção Regras por transação/rotina, clique sobre cada rotina para exibir os itens de menu na seção Funcionalidades das transações/rotinas
- Ao lado de cada rotina na seção Regras por transação/rotina, na coluna Acesso, é possível definir o acesso à rotina como: Negado, Permitido ou Não Permitido.
- Ao lado de cada item de menu na seção Funcionalidades das transações/rotinas, na coluna Acesso, é possível definir o acesso ao item de menu como: Negado, Permitido ou Não Permitido.
Dica:
Importante
Quando o usuário possuir mais de um grupo informado e caso não esteja com a regra igual a desconsiderar grupo, os privilégios dos grupos sempre iram somar, o campo da grid de grupo priorizar igual a sim não será levado em consideração. Caso tenha algum conflito de privilégio será utilizada a regra de hierarquia apontada acima.
- Após concluir a configuração das rotinas do Privilégio, clique em Confirmar
Associando Privilégios a um usuário ou grupo de usuários
Com o privilégio configurado, para que ele entre em vigor, você deve associá-lo a um Usuário ou Grupo de Usuários.
- Acesse Configurador > Usuário > Senhas > Usuários (ou Grupos)
- Clique no usuário (ou grupo) e clique em Outras Ações (Ações Relacionadas)
- Clique em Privilégios
- Clique 2 vezes abaixo da coluna Regra e clique na Lupa
- Selecione o privilégio que deseja associar a este usuário/grupo e clique em OK
- Caso queira que este privilégio tenha efeito apenas em determinada Empresa/Filial, digite o código destas nas colunas Grupo de Empresas / Filial do Sistema. Caso queira que este privilégio tenha efeito para todas as empresas/filiais que o usuário tem acesso, deixe estes campos em branco
- Clique em Confirmar. A Regra de Privilégio está configurada.
Visualizando usuários relacionados ao privilégio
Após associar o privilégio à usuários ou grupos de usuários, é possível visualizar quais usuários foram relacionados à ele:
- Acesse Configurador > Usuário > Privilégios > Posicionar no privilégio desejado > Alterar > Outras Ações > Usuarios relacionados:
- Será apresentada uma tela com todos os usuários relacionados ao privilégio:
- A coluna "Definição do Privilégio" identifica qual a origem do privilégio:
"Usuario" para quando o privilégio for associado ao usuário a partir do cadastro do usuário;
"Grupo" para quando o privilégio for associado ao usuário a partir do cadastro de grupo;
"Ambos" para quando o privilégio for associado ao usuário a partir do cadastro de usuário e do cadastro de grupo.
Importante: Os usuários que pertencem à um grupo e tem a opção "Regra de acesso por grupo" igual à "Desconsiderar", não são apresentados nessa lista.
A coluna "Definição do Privilégio" esta disponível a partir da lib 20220905.
Maiores informações sobre a configuração de grupos: Criar um Grupo de Usuários