Contrôle de compte d’utilisateur et ADSI
Windows et Windows Server ont contrôle de compte d’utilisateur, qui a des conséquences pour les applications qui utilisent Active Directory Service Interfaces (ADSI). Plus précisément, ces interfaces ont été conçues pour être exécutées par un compte d’utilisateur disposant de privilèges d’administrateur sur l’ordinateur local.
problème
Chaque fois qu’une application se connecte au répertoire et tente de créer un objet ADSI, l' de schéma Active Directory est vérifiée pour les modifications. S’il a changé depuis la dernière connexion, le schéma est téléchargé et stocké dans un cache sur l’ordinateur local. Dans les versions de Windows antérieures à Windows Vista, l’emplacement par défaut de ce cache était
%systemroot%\SchCache\
Toutefois, les applications exécutées par des comptes standard (autrement dit, non administrateur) n’ont pas accès à ce répertoire, et par conséquent, les applications qui utilisent des interfaces ADSI exécutées dans ce mode téléchargent le schéma sur chaque connexion, ce qui aura un impact sur le débit et les performances.
Solutions
d’utilisateur unique : pour résoudre ce problème, il existe de nouvelles clés de contrôle de registre du fournisseur ADSI qui déterminent les emplacements du Registre et les emplacements des fichiers pour les objets schéma Active Directory mis en cache. Si la clé de Registre
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adsi\Cache\PerMachine
est défini sur 0 (zéro), chaque utilisateur aura un emplacement de stockage différent pour ADSI ; Les clés de Registre sont stockées dans
HKEY_CURRENT_USER\Software\Microsoft\ADs\Providers\LDAP\
et les fichiers de cache seront stockés dans
%LOCALAPPDATA%\Microsoft\Windows\SchCache
Ces paramètres sont les paramètres par défaut sur les ordinateurs exécutant Windows Server 2008 ou Windows Vista.
multi-utilisateurs : si vous exécutez des applications ADSI sur un ordinateur avec de nombreux comptes d’utilisateur (par exemple, un serveur web), il est préférable de ne pas avoir de nombreuses copies du schéma Active Directory cache à l’aide de grandes quantités d’espace disque. Définition de la clé de Registre
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adsi\Cache\PerMachine
à 1 (un) rétablira ADSI au comportement précédent ; tous les objets schéma Active Directory seront stockés dans leurs emplacements précédents ; la clé de Registre se trouvera dans
HKEY_LOCAL_MACHINE\Software\Microsoft\ADs\Providers\LDAP
et le fichier cache se trouvera dans
%systemroot%\SchCache
Dans ce cas, les comptes d’administrateur doivent exécuter l’application, ce qui entraîne la mise en cache du fichier de schéma dans l’emplacement global pour une utilisation ultérieure par les utilisateurs moins privilégiés.