Compatibilidad con lenguajes de programación
Puede escribir aplicaciones cliente ADSI en muchos idiomas. Para la mayoría de las tareas administrativas, ADSI define interfaces y objetos accesibles desde lenguajes compatibles con Automation. Por ejemplo, el sistema de desarrollo de Microsoft Visual Basic, Microsoft Visual Basic Scripting Edition (VBScript) y Java, así como lenguajes más eficaces y de rendimiento, como C y C++.
La integración fluida con Active Server Pages y VBScript facilita la escritura de aplicaciones de Internet que acceden a los servicios de directorio. Para la integración con aplicaciones OLE DB, ADSI proporciona un proveedor OLE DB al admitir un subconjunto de las interfaces de consulta OLE DB. El proveedor OLE DB admite el acceso de solo lectura a Active Directory.
En el caso de las aplicaciones de Internet, el uso de scripts en archivos de página active Server (ASP) puede crear y manipular objetos ADSI en el servidor y mostrar los resultados en una página web. En Microsoft Management Console, los complementos de administración de servicios de directorio pueden usar ADSI para buscar servicios de directorio de interés. En resumen, las interfaces de servicio de Active Directory pueden proporcionar acceso a un amplio y diverso conjunto de servicios de directorio, incluidos los que aún no se han creado.
Para acceder a estructuras que usan API tradicionales, la arquitectura ADSI define interfaces de bajo nivel que no admiten automatización a las que se puede acceder desde lenguajes como C y C++. Estas interfaces son poco más que contenedores COM para protocolos de red en un servicio de directorio.
Escribir código en las interfaces publicadas permite a la aplicación acceder a los servicios de directorio para todos los proveedores ADSI instalados e integrar los datos resultantes. Con poco o ningún cambio en el código, la aplicación puede seguir accediendo a servicios de directorio adicionales en la red a medida que se instalan nuevos proveedores ADSI.
En la ilustración siguiente se muestra cómo se adapta ADSI a un entorno de aplicación. Tanto si la aplicación está escrita en Visual Basic, C/C++, VBScript, sistema de desarrollo de Microsoft JScript o como una aplicación web mediante Active Server Pages, las interfaces de servicio de Active Directory proporcionan un acceso limpio y fácil de usar a los servicios de directorio subyacentes sin tener que usar las API de red nativas.
Como se muestra en la ilustración anterior, los clientes que no admiten Automation tienen acceso a todas las interfaces ADSI, incluidas las interfaces COM puras con la convención de nomenclatura IDirectoryXXX y las interfaces COM de Automation con la convención de nomenclatura IADsXXX. Dado que los clientes solicitan principalmente información de servicios de directorio, el modelo de consulta flexible ADSI a través de OLE DB e IDirectorySearch es eficaz.