Código fonte Wiki de Cadastro de LDAP (710)

Última modificação por FlowFast em 2026/05/28 13:47

Mostrar últimos autores
1 Cadastro para realizar integração com LDAP
2
3 Possibilidades de integração:
4
5 1. Autenticação do usuário(validação de usuário e senha).
6 1. Criação e manutenção de usuário no FlowFast relacionando grupo do LDAP com usuário modelo do FlowFast.
7 1. Manutenção do setor usuário no FlowFast relacionando grupo do LDAP com setor do FlowFast.
8 1. Permissão de menus do FlowFast relacionando grupo do LDAP com menu do FlowFast.
9 1. Permissão de processos do FlowFast relacionando grupo do LDAP com processo do FlowFast.
10 1. Permissão de páginas/objetos relacionando grupo do LDAP com páginas do FlowFast.
11
12 ===== Campos para autenticação =====
13
14 Para realizar a autenticação (item 1) necessário somente informar os campos abaixo
15
16 |String de autenticação|String para autenticação do usuário no LDAP.
17 Deve conter a chave de substituição {usuario_ldap} onde será substituído pelo usuário informado.
18 Ex:(((
19 * dominio\{usuario_ldap}
20 * uid={usuario_ldap}, ou=usuarios, dc=subgrupo, dc=br
21 )))
22 |Host/URL|(((
23 URL para conexão com LDAP
24 Ex:
25
26 * ldap:~/~/192.168.1.15
27 )))
28 |Maiúsculas e minusculas|Identifica se o LDAP diferencia ou não maiúsculas e minusculas para identificar os usuários e grupos
29
30 ===== Campos para integração(criação/manutenção de usuários e/ou permissão) =====
31
32 Para realizar a manutenção e/ou dar permissões (item 2 ao 5) é necessário informar também os campos abaixo, configurar os grupos para integração e informar no cadastro de [[Tipo de usuários do sistema (308)>>doc:Main.help.adm.pagina.308.WebHome]] o campo //LDAP para importação.//
33
34 |Usuário|Usuário com permissão para buscar informações no LDAP dos grupos e dos usuários
35 |Senha|Senha do usuário acima
36 |Contexto da busca|Contexto inicial de busca dentro da árvore do LDAP.
37 Ex:(((
38 * DC=flowfast,DC=com
39 * OU=Usuarios,DC=flowfast,DC=com
40 )))
41 |RegEx grupo|Expressão regular para capturar o CN(Common Name) do grupo a partir do DN(distinguishedName). OBS: se não informada será utilizado o DN completo para identificar os grupos.
42 Ex: CN=(?<cn>.*?)(?:,[A-Z]+=~|$)
43 OBS: deve conter um grupo de captura nomeado com //**cn**//, como no exemplo
44 O exemplo acima será carregado como default no cadastramento.
45
46 ==== Configuração dos grupos para integração ====
47
48 |(% style="width:174px" %)Tipo|(% style="width:1350px" %)(((
49 Define o que o grupo fará com o usuário que possui-lo no LDAP
50
51 * 1-Definir usuário modelo - Criação e manutenção de usuário no FlowFast com o usuário modelo informado.
52 * 2-Definir setor - Altera o usuário no FlowFast para o setor informado.
53 * 3-Permissão de menu - Libera acesso ao menu informado.
54 * 4-Permissão de processo - Libera acesso a solicitação do processo informado.
55 * 5-Permissão de página/objeto avulso - Libera acessa a uma página.
56 )))
57 |(% style="width:174px" %)Tipo interpretação|(% style="width:1350px" %)(((
58 Define a forma como o grupo será interpretado para atrelar ao tipo relativo no FlowFast
59
60 * 1-Fixa (1 para 1) - O grupo definido é exatamente o nome do grupo no LDAP e deve ser informado o item correspondente no FlowFast.
61 * 2-Dinâmica (múltiplos) - O grupo definido deve seguir um padrão onde uma parte do nome do grupo deve ter o código do item correspondente no FlowFast.
62 * 3-Por atributo - Disponível somente para o tipo 2-Definir setor. O setor será determinado a partir de um atributo do usuário no LDAP.
63
64 Quando selecionada a opção 3-Por atributo serão habilitados os campos:
65
66 * Nome do atributo - Nome do atributo do LDAP que será lido do usuário.
67 * Função banco tratamento atributo - Função de banco responsável por interpretar o valor do atributo e retornar o código do setor.
68
69 A função deve receber:
70
71 * ID do usuário
72 * Valor do atributo lido no LDAP
73
74 E deve retornar:
75
76 * Código do setor (Long)
77
78 Exemplo de assinatura:
79
80 (((
81 {{code language="sql"}}
82 CREATE OR REPLACE FUNCTION xes_0000_busca_setor(
83 in_des_usuario VARCHAR,
84 in_valor VARCHAR
85 )
86 RETURNS NUMERIC
87 {{/code}}
88 )))
89
90 Exemplo:
91 O atributo department do usuário no LDAP possui valor "Comercial - 1500".
92 A função poderá converter este valor para o setor correspondente no FlowFast.
93 )))
94 |(% style="width:174px" %)ID do grupo|(% style="width:1350px" %)(((
95 Deve ser informado o Common Name(CN) do grupo do LDAP quando o campo RegEx grupo no cadastro principal está informado. Se não estiver informado deverá ser informado o Distinguished Name(DN) do grupo no LDAP
96
97 Caso o Tipo interpretação seja = 2-Dinâmica: Deve ser utilizado o carácter # para definir o local onde está o código dentro do nome do grupo com possibilidade de utilizar * como coringa.
98 Ex: Os grupos no LDAP para definir setor seguem o padrão SETOR_XXXX_DESCRITIVO, onde o XXXX é o código do setor no FlowFast e o DESCRITIVO é o descritivo de cada setor.(SETOR_10_RH, SETOR_15_FINANCEIRO). Neste caso deverá ser informado neste campo: **SETOR_#_***
99 )))
100 |(% style="width:174px" %)Prioridade|(% style="width:1350px" %)(((
101 É a ordem na qual cada será aplicada a definição do grupo para cada tipo, sendo que considerará a de menor valor encontrado.
102
103 Ex: No LDAP possui 2 grupos A e B, estes grupos estão configurados para definir usuário modelos, USU_A e USU_B, com prioridade 1 e 2, respectivamente.
104
105 Se Usuário X possuir os grupos A e B, ele será cadastrado como usuário modelo USU_A.
106 Se Usuário Y possuir apenas grupo B  ele será cadastrado como usuário modelo USU_B.
107 )))
108
109 ==== Como funciona a sincronização do usuário ====
110
111 A sincronização se dá a partir da leitura no LDAP com o identificador único do usuário(Account Name), buscando as informações do usuário, como nome(cn), e-mail(mail), matrícula(employeeNumber) e a lista dos grupos(memberOf) que usuário pertence.
112 Com essa lista de grupos é feita a checagem, um a um, com os grupos configurados neste cadastro do LDAP no FlowFast, verificando através do ID do grupo e com cada tipo identificando qual usuário modelo, setor, menus e processos a serem liberados. Com estas informações são realizadas as alterações necessárias no usuário.
113
114 Obs: Não é obrigatório o uso de todos os tipos de grupo, por exemplo, pode ser utilizado o LDAP somente para dar permissões aos menus, ou somente para manter o campo Setor, etc. Porém, para que faça a inclusão automática do usuário é necessário o grupo do tipo 1-Definir usuário modelo.
115
116 A sincronização pode ser feita da seguinte forma:
117
118 * Automaticamente a cada novo login do usuário.
119 * Sincronização unitária pelo cadastro do usuário.
120 * Através da página [[Sincronizar usuários com LDAP (1145)>>doc:Main.help.xcp.objeto.xcp_ldap_Sinc.WebHome]].