Home‎ > ‎SSO Single Sign-On‎ > ‎

Configuring JDBC LDAP Driver

Description:

Basically this tool uses a JDBC driver or a JNDI pool connection to connect to a LDAP server using SQL commands. this is only JDBC -> LDAP, not LDAP -> JDBC.

This is a working example in order to run it execute the following commands on command line:
javac -cp .:* Main.java
java -cp .:* Main

The example extract the mail field from LDAP using a SQL query.

Main.java

import com.octetstring.jdbcLdap.jndi.*;
import com.octetstring.jdbcLdap.sql.*;
import com.octetstring.jdbcLdap.sql.statements.*;
import java.sql.*;

public class Main {
public static void main(String[] parametro) {
System.out.println("Hola Mundo Java");
String ldapConnectString = "jdbc:ldap://idp-ldap.sso.appsedudemo.com:389/dc=idp-ldap,dc=sso,dc=appsedudemo,dc=com?SEARCH_SCOPE:=subTreeScope"; 
java.sql.Connection con;
try {
DriverManager.registerDriver(new JdbcLdapDriver());
con = DriverManager.getConnection(ldapConnectString,"cn=admin,dc=idp-ldap,dc=sso,dc=appsedudemo,dc=com","egdpassword");
String field = "mail";
String stmt =  "SELECT " + field  + " FROM subTreeScope;dc=idp-ldap,dc=sso,dc=appsedudemo,dc=com WHERE uid = 'demo'";
PreparedStatement pstmt = con.prepareStatement(stmt);
ResultSet rs = pstmt.executeQuery(stmt);
while(rs.next()) {
System.out.println(field + "=" + rs.getString(field));
}
System.out.println("OK");
} catch ( SQLException e ) {
System.out.println(e.getMessage());
} catch ( Exception e ) {
System.out.println(e.getMessage());
}
}
}



Comments