LDAP

Descubra mais sobre o componente LDAP e saiba como utilizá-lo na Digibee Integration Platform.

O LDAP realiza operações em um servidor LDAP.

Parâmetros

Dê uma olhada nas opções de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB).

Parâmetro
Descrição
Valor padrão
Tipo de dado

Account

Conta a ser utilizada pelo componente.

N/A

String

Operation

Comando a ser acionado (Search, Add, Delete ou Modify).

Search

String

Search Operation

Operação de busca (Object, One level ou Sub trees).

Object

String

Modify Operation

Comandos disponíveis (Add Attribute, Remove Attribute, Replace Attribute ou Increment Attribute).

Add Attribute

String

Host Name

Nome ou IP do servidor LDAP.

199.199.199.1

String

Port

Porta do LDAP.

389

Inteiro

Authentication DN

Distinguished Name (DN) utilizado para conectar o servidor LDAP.

CN=Users,DC=digibee,DC=io

String

Operation DN (DB)

Distinguished Name (DN) usado para operações (expressões de Double Braces são suportadas).

{{message.$.dnOperation}}

String

Filter (DB)

Expressões de filtros.

{{message.$.dnOperation}}

String

Entries (DB)

Expressão JSON que representa as entradas que serão adicionadas ou modificadas. Suporta expressões Double Braces.

N/A

String

SSL

Se a opção estiver ativada, um protocolo de segurança SSL pode ser configurado através do parâmetro Custom SSL Certificate.

False

Booleano

Custom SSL certificate

Especifica a conta personalizada que será usada para a conexão segura.

N/A

String

Fail On Error

Se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".

False

Booleano

Informação adicional de parâmetros

Authentication DN

O parâmetro Authentication DN deve ser configurado com o path completo até o usuário desejado. Com isso, se o Distinguished Name for igual a "CN=UserExample,OU=FOLDER1,DC=abc,DC=com,DC=br", o parâmetro Authentication DN ficará configurado com "OU=FOLDER1,DC=abc,DC=com,DC=br".

A configuração "CN=UserExample" deve ser utilizada no username do account configurado no componente, ou seja, username recebe o valor "UserExample".

LDAP em Ação

Você pode:

  • utilizar um valor fixo:

(dnOperation = "ou=system,cn=users")

  • conseguir algum JSON da mensagem, que vai buscar o objeto 'data' da mensagem:

(dnOperation = "{{ message.$.dn }}

  • combinar ambos os exemplos:

(dnOperation = " ou={{ message.$.dn }}")

  • searchOperation: integra entre 0 e 2 utilizado para buscar, sendo:

0 -> Base Object

1 -> One Level

2 -> Full Subtree

  • modifyOperation: integra entre 0 e 3 utilizado para alterar, sendo:

0 -> Adicionar atributo

1 -> Excluir atributo

2 -> Substituir atributo

3 -> Incrementar atributo

  • filter: filtra configurações para a mesma operação de busca.

Exemplo: filtro "(objectClass=)"

Você pode:

  • utilizar um valor fixo:

filtro = ("objectClass=)"

  • conseguir algum JSON da mensagem, que vai buscar o objeto 'data' da mensagem:

filtro = "{{ message.$.filter }}

  • combinar ambos os exemplos:

filtro = "objectClass={{ message.$.filter }}"

  • entries: o objeto utilizado para adicionar ou alterar as entradas no servidor LDAP.

Você pode:

  • utilizar um valor fixo:

filtro = ("objectClass":["top","person"],"cn":"test_ad","sn":"test_sn"}

  • conseguir algum JSON da mensagem, que vai buscar o objeto 'data' da mensagem:

entries = "{{ message.$.entries }}

  • combinar ambos os exemplos:

entries = {"objectClass":["top","person"],"cn":"{{ message.$.entries }}","sn":"test_sn"}"

  • operation: a operação que você deseja executar no servidor LDAP: BUSCAR / ADICIONAR / ALTERAR / EXCLUIR

  • useSsl: se verdadeiro, será conectado utilizando SSL (conexão segura); do contrário, não será conectado

  • failOnError: se verdadeiro, um erro vai suspender a execução do pipeline

O LDAP precisa de autenticação. Para isso, você deve criar uma conta com privilégios de administrador (tipo BASIC) e utilizá-la no componente.

Importante: o username a ser utilizado no account deve ser o campo "name" configurado no servidor LDAP.

Para converter Double Braces, nós utilizamos especificações de JSON Path. Clique aqui para saber mais.

Fluxo de Mensagens

Operação Search

Entrada

{
"type": "connector",
"name": "ldap-connector",
"accountLabel": "ldap",
"stepName": "ldap",
"params": {
"operation": "SEARCH",
"host": "LDAP_IP",
"port": 389,
"dnAuthentication": "DC=digibee,DC=io",
"dnOperation": "DC=digibee,DC=io",
"filter": "(objectClass=)",
"searchOperation": 0,
"useSsl": false,
"failOnError": false
}
}

Saída

{
"result": [
{
"pwdhistorylength": "24"
},
{
"msds-alluserstrustquota": "1000"
},
{
"otherwellknownobjects": [
"B:32:683A24E2E8164BD3AF86AC3C2CF3F981:CN=Keys,DC=digibee,DC=io",
"B:32:1EB93889E40C45DF9F0C64D23BBB6237:CN=Managed Service Accounts,DC=digibee,DC=io"
]
}
]
}

Operação Add

Entrada

{
"type": "connector",
"name": "ldap-connector",
"accountLabel": "ldap",
"stepName": "ldap",
"params": {
"operation": "ADD",
"host": "LDAP_IP",
"port": 389,
"dnAuthentication": "DC=digibee,DC=io",
"entries": "{{ message.$.entries }}",
"dnOperation": "DC=digibee,DC=io",
"useSsl": false,
"failOnError": false
}
}

Payload

{"entries": {
"objectClass": ["top", "person"],
"cn": "test_ad",
"sn": "test_sn"

}
}

Saída

{
"message": "Entry added successfully",
"success": true
}

Operação Modify

Entrada

{
"type": "connector",
"name": "ldap-connector",
"accountLabel": "ldap",
"stepName": "ldap",
"params": {
"operation": "MODIFY",
"host": "LDAP_IP",
"port": 389,
"dnAuthentication": "DC=digibee,DC=io",
"entries": "{{ message.$.entries }}",
"dnOperation": "DC=digibee,DC=io",
"modifyOperation": 0,
"useSsl": false,
"failOnError": false
}
}

Payload

{"entries": {
"objectClass": ["top", "person"],
"cn": "test_ad",
"sn": "test_sn"

}
}

Saída

{
"message": "Entry modified successfully",
"success": true
}

Operação Delete

Entrada

{
"type": "connector",
"name": "ldap-connector",
"accountLabel": "ldap",
"stepName": "ldap",
"params": {
"operation": "DELETE",
"host": "LDAP_IP",
"port": 389,
"dnAuthentication": "DC=digibee,DC=io",
"dnOperation": "DC=digibee,DC=io",
"useSsl": false,
"failOnError": false
}
}

Saída

{
"message": "Entry modified successfully",
"success": true
}

O LDAP suporta Double Braces estáticos nos seguintes parâmetros previamente especificados:

  • operation

  • host

  • dnAuthentication

  • port

  • modifyOperation

  • searchOperation

  • useSsl

Atualizado