Foros del Web » Programación para mayores de 30 ;) » Java »

Como Me conecto a LDAP con java?

Estas en el tema de Como Me conecto a LDAP con java? en el foro de Java en Foros del Web. Hola amigos Nesecito verificar si el usuario y el password existen en ldap pero no tengo ni idéa... Me han dado la siguiente información para ...
  #1 (permalink)  
Antiguo 02/03/2007, 20:47
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 19 años, 5 meses
Puntos: 2
Pregunta Como Me conecto a LDAP con java?

Hola amigos

Nesecito verificar si el usuario y el password existen en ldap pero no tengo ni idéa...

Me han dado la siguiente información para conectarme.

ipServidor:389
ou=personas,o=bogota,o=fuaa

si alguien sabe como hacerlo, realmente le estaría muy agradecido.

Antony
  #2 (permalink)  
Antiguo 03/03/2007, 10:21
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 21 años, 1 mes
Puntos: 51
Re: Como Me conecto a LDAP con java?

Sería bueno que empezaras por saber que es LDAP, como funciona etc y luego de ahi pasar a conectarte con Java.

En cualquier caso, hay bastantes tutoriales e informacion por ahí:
http://www.google.com/search?q=java+ldap

No me he metido mucho nunca con el tema, así que más no te puedo decir.
  #3 (permalink)  
Antiguo 03/03/2007, 12:56
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 19 años, 5 meses
Puntos: 2
Re: Como Me conecto a LDAP con java?

Muchas gracias...

Amigo yo se que es LDAP, ldap es un protocolo establesido para acceder a directorios creados de forma jerárquicay creeme que ya busqué en google, solo quería saber el codigo para conectarme con la información que posteé, si lo haz hecho por favor coloca el código o dime como, pero creeme , una respuesta como la que me das no ayuda mucho...

Cuidate y gracias de todas formas

Última edición por antony_fire; 05/03/2007 a las 06:02
  #4 (permalink)  
Antiguo 03/03/2007, 13:13
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 19 años, 5 meses
Puntos: 2
Re: Como Me conecto a LDAP con java?

Hola...

en el siguiente código que se postearon anteriormente colocaron esto

Código PHP:
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;

public class 
ldap {
    private 
String INITCTX "com.sun.jndi.ldap.LdapCtxFactory";
    private 
String MY_HOST "ldap://mail.grupobafar.com:389";

    public 
ldap() {}
    public 
String Authenticate(String domainString userString pass) {           
        
Hashtable env = new Hashtable();
        if (
pass.compareTo("") == || user.compareTo("") == 0)
            return 
null;
        
env.put(Context.INITIAL_CONTEXT_FACTORY,INITCTX);
        
env.put(Context.PROVIDER_URLMY_HOST);
        
env.put(Context.SECURITY_AUTHENTICATION"simple");
        
env.put(Context.SECURITY_PRINCIPAL,new String(domain+"\\"+user));
        
env.put(Context.SECURITY_CREDENTIALS,new String(pass));
        try {
            
DirContext ctx = new InitialDirContext(env);
        } 
        catch (
NamingException e) {
            
e.printStackTrace();
            return 
null;
        }

        return 
user;   
    }

    public static 
void main(String[] argv) {
        
ldap Aut = new ldap();
        if (
Aut.Authenticate("dominio","usuario","password")!=null
        {
            
System.out.println("Autenticado");
        }
        else
        {
            
System.out.println("No Auntenticado");
        }

        
    }

Yo quisiera saber que iría en la parte que dice "dominio"... la linea if (Aut.Authenticate("dominio","usuario","password")! =null)

Gracias

Última edición por antony_fire; 05/03/2007 a las 06:01
  #5 (permalink)  
Antiguo 03/03/2007, 14:31
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 21 años, 1 mes
Puntos: 51
Re: Como Me conecto a LDAP con java?

Pues siento no haberte ayudado pero si no explicas lo que sabes y lo que no, lo que has buscado y lo que no, pues es dificil adivinar. Por la forma en que escribiste la pregunta pense que no estabas familiarizado con LDAP, cosa que no tan rara, y de ahí la respuesta.

Suerte
  #6 (permalink)  
Antiguo 05/03/2007, 06:10
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 19 años, 5 meses
Puntos: 2
Pregunta Re: Como Me conecto a LDAP con java?

Ok, ok, ok... ya llevo 3 días en esto y aún no puedo conectarme... ¿COMO SE HACE?... vamos amigos yo se que muchos de ustedes lo han hecho, con C# ya lo hize y fue re-fácil pero con java que es mi lenguaje madre, aún no puedo y quiero hacerlo por que sino empiezan a traer programadores que solo le hacen al .Net, y una de mis filosofías es meter gente que programe en código libre(en especial JAVA).

Gracias.

Pdt... si miran el código de arriba, por favor contestenme que iría en donde dice "dominio"
  #7 (permalink)  
Antiguo 05/03/2007, 10:39
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 21 años, 1 mes
Puntos: 51
Re: Como Me conecto a LDAP con java?

Teoricamente y siguiendo los ejemplos encontrados en Internet, en Context.SECURITY_PRINCIPAL se ha de poner el usuario con el que se accede al LDAP, ya que normalmente hace falta un usuario/clave para poder acceder.

Si el ejemplo que tienes esta basado en Windows y Active Directory, seguramente con "domain" se refiera al dominio de Windows del usuario con el que quieres acceder al LDAP/Active Directory.
  #8 (permalink)  
Antiguo 05/03/2007, 12:09
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 19 años, 5 meses
Puntos: 2
Re: Como Me conecto a LDAP con java?

mmmm

al DN, osea ou=personas,o=bogota,o=fuaa//cn=miLogin.... sería algo así?

Antony
  #9 (permalink)  
Antiguo 22/08/2008, 03:41
 
Fecha de Ingreso: diciembre-2006
Mensajes: 14
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Como Me conecto a LDAP con java?

Este ejemplo funciona correctamente, lo malo es que no imprime la contraseña como debe ser? alguien me puede ayudar? quisiera saber como puedo obtener la contraseña y de paso como modificarla

public RecordatorioBean getObtenerUsuario(String domain, String user, String pass,String inictx, String login, String security, String base){

Hashtable env = new Hashtable();

RecordatorioBean recordatorio = null;



if (pass.compareTo("") == 0 || user.compareTo("") == 0)

return null;



env.put(Context.INITIAL_CONTEXT_FACTORY, inictx);

env.put(Context.PROVIDER_URL, domain);

env.put(Context.SECURITY_AUTHENTICATION, security);

env.put(Context.SECURITY_PRINCIPAL, new String(user));

env.put(Context.SECURITY_CREDENTIALS, new String(pass));



try {



DirContext ctx = new InitialDirContext(env);

String filter = "(&(uid="+login+")(objectclass=Person))";

SearchControls constraints = new SearchControls();

constraints.setSearchScope(SearchControls.SUBTREE_ SCOPE);

NamingEnumeration results = ctx.search(base,filter,constraints);



SearchResult sr=null;



Attributes att=null;

if (results.hasMore()){

sr=(SearchResult) results.next();

att = (Attributes) sr.getAttributes();



NamingEnumeration ne = null;

recordatorio = new RecordatorioBean();



recordatorio.setPregunta ((String)this.atributo("PIFPregunta", att, ne));

recordatorio.setRespuesta ((String)this.atributo("PIFRespuesta", att, ne));

recordatorio.setEmail ((String)this.atributo("mail", att, ne));

recordatorio.setContrasena(this.atributo("userPass word", att, ne).toString());



System.out.println("String givenname: " + this.atributo("givenname", att, ne));

System.out.println("String uid: " + this.atributo("uid", att, ne));

System.out.println("String ibm-primaryEmail: " + this.atributo("mail", att, ne));

System.out.println("String PIFPregunta: " + this.atributo("PIFPregunta", att, ne));

System.out.println("String PIFRespuesta: " + this.atributo("PIFRespuesta", att, ne));

System.out.println("String userPassword: " + this.atributo("userPassword", att, ne));

ctx.close();

}



} catch (NamingException e) {

e.printStackTrace();

return null;

}catch (Exception ex){

System.out.println("Error en la búsqueda: " + ex.getMessage());

}



return recordatorio;

}





public Object atributo(String campo, Attributes att, NamingEnumeration ne)throws NamingException {



if (att.get(campo) != null) {

ne = att.get(campo).getAll();

while (ne.hasMore()) {

return ne.next().;

}

}

return "";

}
  #10 (permalink)  
Antiguo 28/10/2008, 09:53
 
Fecha de Ingreso: diciembre-2006
Mensajes: 14
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Como Me conecto a LDAP con java?

Hola quien sabe como guardar una foto en ldap? en el atributo jpegphoto
  #11 (permalink)  
Antiguo 11/02/2011, 14:49
 
Fecha de Ingreso: junio-2007
Mensajes: 8
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: Como Me conecto a LDAP con java?

hola amigo me podrias ayudar ya logre autenticarme con un codigo java con estos ejemplos, pero a mas de eso necesito saber si me pueden ayudar con infromacion de como puedo agregar una opcion para cambiar el password, del usuario Ladp, o por emplo que me llame a la ventana de cambiar el password del usuario en windows
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:02.