Desafiando convicciones

Hasta una simple gota de agua solo por ser constante, con el tiempo puede perforar una roca

Excepción cuando trabajamos con DirectoryServices

Algo que hoy descubrí con asombro es que cuando trabajamos con las clases de System.DirectoryServices en específico DirectoryEntry para hacer consultas en un directorio activo es importante pasar la ruta del servidor LDAP utilizando mayúsculas en la cadena.

Si, así es.

Si utilizamos la línea con letra minusculas:

DirectoryEntry de = new DirectoryEntry("ldap://litwaredc:389/CN=Users,DC=litwareinc,DC=com");

Surgirá una excepción de tipo COM. La dirección DN es correcta, solo que se necesita modificar la parte ldap por LDAP para que DirectoryEntry se digne a funcionar como se espera.

DirectoryEntry de = new DirectoryEntry(LDAP://litwaredc:389/CN=Users,DC=litwareinc,DC=com);

 

Seguro existe una razón, sin embargo que alguien me explique!

Originalmente publicado en msmvps.com

Previous

Construcción de Interface REST para acceso a datos via HTTP desde Word 2010

Next

Deteniendo y Encendiendo Aplicaciones de Servicio de SharePoint 2010

1 Comment

  1. jorge

    Hola Haaron,

    LDAP tiene que ver con ADSI (Active Directory Service Interfaces).
    Al tener relación con COM, es posible que tenga relación con C++, y por ende relación con case sensitive (esto es una conjetura de como esté desarrollada por debajo la API, algo que sospecho pero que también desconozco, por lo que me puedo equivocar en la razón que estoy dando).

    Lo que sí te aseguro 100% es que lo que te ha ocurrido pasa simplemente porque el proveedor es case sensitive.

    LDAP debe estar en mayúsculas.

    Esa es la razón principal.

    Un saludo y gracias por comentarlo, siempre hay que tenerlo en cuenta. 🙂

    Jorge

Deja un comentario

Powered by WordPress & Theme by Anders Norén