tcADUtilLDAPController class

This class is a part of Microsoft Active Directory User Management connector.

Create

Create a new controller.

tcDataProvider dataProvider = XLDatabase.getInstance().getDataBase();
ConnectorLogger logger = new ConnectorLogger(ThisClass.class.getName());
 
HashMap configMap = new HashMap();
configMap.put("BackupServerURL", "");           // required, the backup server URL or an empty string
configMap.put("LDAPConnectTimeOut", "3000");    // optional, "3000" by default
configMap.put("LdapOrganizationDNPrefix", "");  // required
configMap.put("LdapUserDNPrefix", "cn=Users");  // required
 
HashMap constantMap = new HashMap();
 
// Copy these values from the "Lookup.AD.Constants" lookup
constantMap.put("ATT_BINARY", "java.naming.ldap.attributes.binary");
constantMap.put("ATT_VERSION", "java.naming.ldap.version");
constantMap.put("FALSE", "FALSE");
constantMap.put("LDAP_DISTINGUISHED_NAME", "distinguishedName");
constantMap.put("LDAP_OBJECT_GUID", "objectGUID");
constantMap.put("LDAP_SAMACCOUNT_NAME", "sAMAccountName");
constantMap.put("LDAP_WHENCHANGED", "whenChanged");
constantMap.put("LOCKOUT_THRES", "lockoutThreshold");
constantMap.put("LOOKUP_CODE", "Field Lookup Code");
constantMap.put("NONE", "[NONE]");
constantMap.put("OBJECTCLASS_ASTERIK", "(objectclass=*)");
constantMap.put("PLUS_VALUE", "%20");
constantMap.put("PROVIDER", "com.sun.net.ssl.internal.ssl.Provider");
constantMap.put("SCONTEXTFACTORY", "com.sun.jndi.ldap.LdapCtxFactory");
constantMap.put("SSL", "ssl");
constantMap.put("TCLOOKUP", "Thor.API.Operations.tcLookupOperationsIntf");
constantMap.put("TRUE", "TRUE");
constantMap.put("USNCHANGED", "uSNChanged");
constantMap.put("UTF", "UTF-8");
constantMap.put("X_509", "X.509");
 
tcADUtilLDAPController controller
  = new tcADUtilLDAPController("192.168.0.11", // AD DC address
                               "dc=example,dc=com", // Root context DN
                               "cn=Administrator,cn=Users,dc=example,dc=com", // Admin FQDN
                               "Pa$$w0rd",
                               false, // Use SSL?
                               389,   // port number
                               logger,
                               configMap,
                               constantMap,
                               dataProvider);

Search

Search for entries at "CN=Users" base matching the "(objectclass=*)" criteria.

Vector<String> result = controller.search("CN=Users", "(objectclass=*)");
System.err.println(result);

prints something like this
[, CN=Administrator, CN=Guest, CN=Domain Computers, CN=Domain Controllers, ...]
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License