LDAP LdifToIon

LDAP LdifToIon

Certified

Convert LDIF records to Ion

Reads LDIF entries or change records and emits Ion documents stored in internal storage. Supports add/delete/modify/moddn records; malformed items are logged and skipped.

yaml
type: io.kestra.plugin.ldap.LdifToIon

Make ION entries from LDIF ones.

yaml
id: ldap_ldif_to_ion
namespace: company.team

inputs:
  - id: file1
    type: FILE
  - id: file2
    type: FILE

tasks:
  - id: ldif_to_ion
    type: io.kestra.plugin.ldap.LdifToIon
    inputs:
      - "{{ inputs.file1 }}"
      - "{{ inputs.file2 }}"

Properties
SubTypestring

LDIF input URIs

URIs to LDIF files in internal storage; entries and change records are converted in order.

Example of an LDIF file content that may be inputted:

# simple entry
dn: cn=bob@orga.com,ou=diffusion_list,dc=orga,dc=com
description: Some description
someOtherAttribute: perhaps

# modify changeRecord
dn: cn=triss@orga.com,ou=diffusion_list,dc=orga,dc=com
changetype: modify
delete: description
description: Some description 3
-
add: description
description: Some description 4
-

# delete changeRecord
dn: cn=triss@orga.com,ou=diffusion_list,dc=orga,dc=com
changetype: delete

# moddn / modrdn must specify newrdn, then deleteoldrdn, then an optional newsuperior
dn: cn=triss@orga.com,ou=diffusion_list,dc=orga,dc=com
changetype: moddn
newrdn: cn=triss@orga.com
deleteoldrdn: 1

Reference (ref) of the pluginDefaults to apply to this task.

SubTypestring

Ion output URIs

URIs in internal storage for the generated Ion files.

Example of an ION file content that may be outputted:

# simple entry
{dn: "cn=bob@orga.com,...",attributes: {description: ["Some description","Some other description"]}}
# modify changeRecord
{dn: "cn=triss@orga.com,...",changeType: "modify",modifications: [{operation: "DELETE",attribute: "description",values: ["Some description 3"]}]}
# delete changeRecord
{dn: "cn=triss@orga.com,...",changeType: "delete"}
# moddn changeRecord (newrdn and deleteoldrdn are mandatory, newsuperior optional)
{dn: "cn=triss@orga.com,...",changeType: "moddn",newDn: {newrdn: "cn=triss@orga.com",deleteoldrdn: false,newsuperior: "ou=expeople,dc=example,dc=com"}}

The total number of entries found in the LDIF file.

The total number of entries successfully translated to ION format.