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

Publicado por

haarongonzalez

Consultor de tecnología de la información dedicado a entregar soluciones de misión crítica para organizaciones donde la colaboración, la comunicación y el conocimiento son su inversión estratégica. Reconocido como Microsoft Most Valuable Professional en ASP / ASP.NET desde 2005 y SharePoint Server desde 2009. Interés: Satisfacción del Cliente, Excelencia Operacional, Desarrollo de Personas, Ingeniería en Pre-Ventas Especialidades: Colaboración, Gestión de Contenidos Web, Gestión del Conocimiento, Gestión de Contenidos Empresariales, Gestión de Formularios, Intranet, Extranet, Portales, Implementaciones de entornos on-premises de SharePoint, Arquitectura de soluciones, Soporte Especializado en SharePoint y Office 365 Tecnologías: SharePoint todas las versiones, Office 365, Nintex, DocuSign, Sharegate, PowerApps, Flow, SPDocKit, InfoPath, .NET, C #, JavaScript, CSS, Skeleton Framework, Office 365 PnP

One thought on “Excepción cuando trabajamos con DirectoryServices”

  1. 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

Responder a jorge Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *