ADSI dan Kontrol Akun Pengguna
Windows dan Windows Server memiliki Kontrol Akun Pengguna, yang memiliki ramifikasi untuk aplikasi yang menggunakan Antarmuka Layanan Direktori Aktif (ADSI). Secara khusus, antarmuka ini dirancang untuk dijalankan oleh akun pengguna dengan hak istimewa administrator di komputer lokal.
Masalah
Setiap kali aplikasi terhubung ke direktori dan mencoba membuat objek ADSI, Skema Direktori Aktif diperiksa untuk perubahan. Jika telah berubah sejak koneksi terakhir, skema diunduh dan disimpan dalam cache di komputer lokal. Dalam versi Windows sebelum Windows Vista, lokasi default untuk cache ini adalah
%systemroot%\SchCache\
Namun, aplikasi yang dijalankan berdasarkan akun standar (yaitu, non-administrator) tidak akan memiliki akses ke direktori ini, dan akibatnya, aplikasi yang menggunakan antarmuka ADSI yang dijalankan dalam mode ini akan mengunduh skema pada setiap koneksi, yang akan berdampak pada throughput dan performa.
Solusi
Pengguna tunggal - Untuk mengatasi masalah ini, ada kunci kontrol registri Penyedia ADSI baru yang menentukan lokasi registri dan lokasi file untuk objek Skema Direktori Aktif yang di-cache. Jika kunci registri
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adsi\Cache\PerMachine
diatur ke 0 (nol), setiap pengguna akan memiliki lokasi penyimpanan yang berbeda untuk ADSI; kunci registri akan disimpan di
HKEY_CURRENT_USER\Software\Microsoft\ADs\Providers\LDAP\
dan file cache akan disimpan di
%LOCALAPPDATA%\Microsoft\Windows\SchCache
Pengaturan ini adalah pengaturan default pada komputer yang menjalankan Windows Server 2008 atau Windows Vista.
Multi-pengguna - Jika Anda menjalankan aplikasi ADSI di komputer dengan banyak akun pengguna (misalnya, server web), sebaiknya tidak memiliki banyak salinan cache Skema Direktori Aktif menggunakan ruang disk dalam jumlah besar. Mengatur kunci registri
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adsi\Cache\PerMachine
ke 1 (satu) akan mengembalikan ADSI ke perilaku sebelumnya; semua objek Skema Direktori Aktif akan disimpan di lokasi sebelumnya; kunci registri akan berada di
HKEY_LOCAL_MACHINE\Software\Microsoft\ADs\Providers\LDAP
dan file cache akan berada di
%systemroot%\SchCache
Dalam hal ini, akun administrator harus menjalankan aplikasi, yang akan menyebabkan file skema di-cache di lokasi global untuk digunakan di masa mendatang oleh pengguna yang kurang istimewa.