ADSI a řízení uživatelských účtů
Windows a Windows Server mají řízení uživatelských účtů, což má důsledky pro aplikace, které používají rozhraní služby Active Directory (ADSI). Konkrétně tato rozhraní byla navržena tak, aby byla spouštěná uživatelským účtem s oprávněními správce na místním počítači.
problému s
Pokaždé, když se aplikace připojí k adresáři a pokusí se vytvořit objekt ADSI, zkontroluje se změny schématu služby Active Directory. Pokud se od posledního připojení změnilo, schéma se stáhne a uloží do mezipaměti na místním počítači. Ve verzích Windows starších než Windows Vista bylo výchozím umístěním pro tuto mezipaměť.
%systemroot%\SchCache\
Aplikace spouštěné standardními účty (tj. účty bez oprávnění správce) ale nebudou mít přístup k tomuto adresáři a v důsledku toho aplikace, které používají rozhraní ADSI spuštěná v tomto režimu, budou stahovat schéma pro každé připojení, což bude mít vliv na propustnost a výkon.
řešení
jeden uživatel – Pokud chcete tento problém vyřešit, existují nové řídicí klíče registru zprostředkovatele ADSI, které určují umístění registru a umístění souborů pro objekty schémat u služby Active Directory v mezipaměti. Pokud klíč registru
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adsi\Cache\PerMachine
je nastavena na 0 (nula), každý uživatel bude mít jiné umístění úložiště pro ROZHRANÍ ADSI; klíče registru budou uloženy v
HKEY_CURRENT_USER\Software\Microsoft\ADs\Providers\LDAP\
a soubory mezipaměti budou uloženy v
%LOCALAPPDATA%\Microsoft\Windows\SchCache
Toto nastavení jsou výchozí nastavení na počítačích se systémem Windows Server 2008 nebo Windows Vista.
víceuživatelské – pokud používáte aplikace ADSI na počítači s mnoha uživatelskými účty (například webový server), je vhodnější mít mnoho kopií schématu služby Active Directory mezipaměti s využitím velkého množství místa na disku. Nastavení klíče registru
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adsi\Cache\PerMachine
na 1 (jeden) vrátí rozhraní ADSI na předchozí chování; všechny objekty schématu služby Active Directory budou uloženy v předchozích umístěních; klíč registru bude v
HKEY_LOCAL_MACHINE\Software\Microsoft\ADs\Providers\LDAP
a soubor mezipaměti bude v
%systemroot%\SchCache
V tomto případě by účty správce měly spustit aplikaci, což způsobí, že soubor schématu bude uložen do mezipaměti v globálním umístění pro budoucí použití méně privilegovanými uživateli.