de
combiner ADO et le dialecte SQL d’ADSI pour mes recherches.
Le code VBScript du listing 1 utilise le fournisseur
ADO pour Active Directory afin de récupérer les noms d’instance
enregistrés dans l’annuaire pour tous les ordinateurs
exécutant SQL Server.
Vous pouvez aussi interroger AD et récupérer une liste
de toutes les bases de données enregistrées en sélectionnant
l’attribut mS-SQL-Name, comme l’illustre le listing 2, de nouveau
à l’aide du fournisseur ADO pour Active Directory. La
liste complète des attributs AD est disponible dans la documentation
MSDN (Microsoft Developer Network) du schéma
AD Windows 2000. Examinez en particulier les classes mSSQL-
SQLServer et mS-SQL-SQLDatabase.
L’utilisation du dialecte SQL ADSI pour interroger Active
Directory présente quelques limitations. Par exemple, vous
ne pouvez pas employer la syntaxe SELECT * et vous devez
spécifier les colonnes dans votre liste
SELECT. De même, vous ne pouvez
pas employer la syntaxe SQL ADSI
pour mettre à jour l’annuaire, mais
faire appel à ADSI pour cette opération.
Cette dernière restriction s’applique
également aux serveurs liés
ADSI. Pour plus d’informations, consultez
la documentation en ligne de
SQL Server (mise à jour avec le SP3)
et, en particulier, la rubrique « OLE DB
Provider for Microsoft Directory
Services ». Enfin, du fait de la structure
hiérarchique d’Active Directory, il est
plus facile de recourir à ADSI que
d’employer exclusivement le dialecte
SQL ADSI pour retourner des informations
sur les conteneurs parent.
Le code VBScript du listing 3 combine
ADO, le SQL ADSI et les fonctions
ADSI pour obtenir le nom du serveur
sur lequel réside la base de données.
Dans un premier temps, le code utilise
une requête SQL ADSI afin d’obtenir
l’information ADsPath pour le
conteneur mS-SQL-SQLDatabase
contenant la base de données Northwind.
Le code attribue ensuite ce chemin
à ObjADSI. Il utilise ensuite la propriété
ADSI Parent pour obtenir le
conteneur parent MSSQLSERVER de
mS-SQL-SQLDatabase. Après avoir
obtenu l’information ADsPath pour
mS-SQL-SQLServer, le code se sert de
nouveau de la propriété ADSI Parent pour récupérer le nom du serveur ou
nom complet (CN), lequel est stocké en
tant qu’attribut .cn.
Le renouvellement d’un parc IT peut rapidement faire grimper les dépenses. Inventaire incomplet, postes surdimensionnés, manque de standardisation, perte de valeur du matériel et achats réactifs : découvrez les cinq…
Passez à la cybersécurité proactive, transformez la collecte et l’analyse des logs en un bouclier dynamique contre les cybermenaces. Découvrez comment mettre en place une approche SIEM modulaire, évolutive et…