Red de conocimiento informático - Material del sitio web - Cómo utilizar Java para operar conexiones LDAP LDAP

Cómo utilizar Java para operar conexiones LDAP LDAP

public static void main(String[] args) {

String url = "ldap://10.0.0.10:389/"

String domain = "dc=dtas,dc" =com";

String usuario = "cn=administrador,cn=usuarios";

String contraseña = "111111";

Hashtablelt; String, Stringgt ; env = new Hashtablelt; String, Stringgt ();

env.env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); >

env.put(Context.User", " dominio); // Complete el DN

env.put(Context.SECURITY_CREDENTIALS, contraseña // Contraseña de AD

<); p> env.put("java.naming.ldap. atributos.binary", "objectSid objectGUID");

LdapContext ldapCtx = null

try {

<; p> ldapCtx = new InitialLdapContext(env, null);

queryGroup(ldapCtx);

//queryUser(ldapCtx);

} catch (NamingException e ) {

e.printStackTrace();

} finalmente {

if(ldapCtx ! = null) {

prueba {

ldapCtx.close();

} catch (NamingException e) {

} //queryUer(ldapCtx).

}

}

}

}

grupo de consultas vacío estático privado (LdapContext ldapCtx) lanza NamingException {

SearchControls searchCtls = new SearchControls();

searchCtls.SUBTREE_SCOPE);

String searchFilter = "objectClass=organizationalUnit"

String searchBase = " ou=myDeptSubDept, ou; =miDepto, dc=DS-66, dc=com";

Cadena devueltaAtts[] = {"dist

inguishedName", "objectGUID", "name"};

searchCtls.setReturningAttributes(returnedAtts);

NamingEnumerationlt; SearchResultgt; respuesta = ldapCtx.search(searchBase, searchFilter, searchCtls);

while (answer.hasMoreElements()) {

SearchResult sr = respuesta.next();

Atributos Atributos = sr. p>

p>

if (Attrs ! = null) {

NamingEnumerationlt;? gt; ne = Attrs.getAll(); ()) {

Atributo Attr = (Atributo)ne.next();

Nombre de cadena = Attr.getID()

Enumeraciónlt;? ; valores = Attr.

if (valores! = null) { // Iterar

while (values.hasMoreElements()) {

Valor de cadena = "";

if("objectGUID".nameUUIDFromBytes((byte[]) valores.nextElement()).toString();

} else {

valor = (Cadena) valores.nextElement();

}

System.out.println(nombre " " valor

}

}

}

}

System.out.println("============= ========== ");

}

}

}

}

p>}