Suporte à linguagem de programação
Você pode escrever aplicativos cliente ADSI em vários idiomas. Para a maioria das tarefas administrativas, o ADSI define interfaces e objetos acessíveis a partir de linguagens compatíveis com automação. Por exemplo, o sistema de desenvolvimento Microsoft Visual Basic, Microsoft Visual Basic Scripting Edition (VBScript) e Java, bem como linguagens mais conscientes de desempenho e eficiência, como C e C++.
A integração suave com Active Server Pages e VBScript facilita a gravação de aplicativos da Internet que acessam serviços de diretório. Para integração com aplicativos OLE DB, o ADSI fornece um provedor OLE DB oferecendo suporte a um subconjunto das interfaces de consulta OLE DB. O provedor OLE DB oferece suporte a acesso somente leitura ao Active Directory.
Para aplicativos da Internet, o uso de scripts em arquivos ASP (Active Server Page) pode criar e manipular objetos ADSI no servidor e exibir os resultados em uma página da Web. No Console de Gerenciamento Microsoft, snap-ins de administração de serviço de diretório podem usar ADSI para localizar serviços de diretório de interesse. Em resumo, as Interfaces de Serviço do Active Directory podem fornecer acesso a um conjunto amplo e diversificado de serviços de diretório — incluindo aqueles ainda não criados.
Para acesso a estruturas que usam APIs tradicionais, a arquitetura ADSI define interfaces de baixo nível que não oferecem suporte à automação e que são acessíveis a partir de linguagens como C e C++. Essas interfaces são pouco mais do que wrappers COM para protocolos de rede para um serviço de diretório.
Gravar código nas interfaces publicadas permite que seu aplicativo alcance serviços de diretório para todos os provedores ADSI instalados e integre os dados resultantes. Com pouca ou nenhuma alteração em seu código, seu aplicativo pode continuar a acessar serviços de diretório adicionais em sua rede à medida que novos provedores ADSI são instalados.
A figura a seguir mostra como o ADSI se encaixa em um ambiente de aplicativo. Se o aplicativo é escrito em Visual Basic, C/C++, VBScript, sistema de desenvolvimento Microsoft JScript ou como um aplicativo Web usando Active Server Pages, as Interfaces de Serviço do Active Directory fornecem um acesso limpo e fácil de usar aos serviços de diretório subjacentes sem precisar usar as APIs de rede nativas.
Como mostrado na figura anterior, os clientes que não oferecem suporte à automação têm acesso a todas as interfaces ADSI, incluindo interfaces COM puras com a convenção de nomenclatura IDirectoryXXX e interfaces COM de automação com a convenção de nomenclatura IADsXXX. Como os clientes solicitam predominantemente informações de serviços de diretório, o modelo de consulta flexível ADSI por meio de OLE DB e IDirectorySearch é eficaz.