This repository provides source code for a sample program that demonstrates the use of the LDAP join control in the Ping Identity Directory Server and the UnboundID LDAP SDK for Java. It issues a search request to retrieve a user from the directory, where that search request includes a join request control that uses a DN join to retrieve entry for that user’s manager, and a nested join that also uses a reverse DN join to retrieve the entries for the manager’s direct reports.
The UnboundID LDAP SDK for Java is the only dependency for this example.
Code in this repository is available under three licenses:
-
The GNU General Public License version 2.0 (GPLv2). See the LICENSE-GPLv2.txt file for this license.
-
The GNU Lesser General Public License version 2.1 (LGPLv2.1). See the LICENSE-LGPLv2.1.txt file for this license.
-
The Apache License version 2.0. See the LICENSE-Apache-v2.0.txt file for this license.
The following is an example of the output generated by the program when run with a directory populated with some sample data:
The server presented the following certificate chain:
Subject: CN=ds.example.com,O=Ping Identity Self-Signed Certificate
Valid From: Friday, February 8, 2019 at 12:23:34 AM CST
Valid Until: Friday, February 4, 2039 at 12:23:34 AM CST
SHA-1 Fingerprint: 78:f1:49:a0:06:0b:bd:1e:2c:88:cb:76:60:cb:87:cb:c4:c3:76:97
256-bit SHA-2 Fingerprint: 55:9c:9a:54:97:48:8c:51:fa:10:da:a0:08:f0:15:dc:f0:92:75:3e:e9:be:56:c5:5c:5c:ec:d5:d4:85:15:a2
WARNING: The certificate is self-signed.
Do you wish to trust this certificate? Enter 'y' or 'n': y
User Type First Name Last Name Email Address Phone Number
--------- ---------- ---------- -------------------------------- ---------------
Employee Ernest Employee ernest.employee@example.com +1 123 456 7890
Boss Betty Boss betty.boss@example.com +1 123 456 7891
Peer Charlie Coworker charlie.coworker@example.com +1 123 456 7892
Peer Patricia Peer patricia.peer@example.com +1 123 456 7893
Peer Aaron Associate aaron.associate@example.com +1 123 456 7894
Peer Christina Colleague christina.colleague@example.com +1 123 456 7895
Peer Wendy Workmate wendy.workmate@example.com +1 123 456 7896