Технологія Access-based Enumeration (доступ на основі дозволів) дозволяє на загальних мережевих ресурсах (кулях) приховати від користувачів файли і папки, до яких у них відсутня NTFS-доступ. Тим самим можна забезпечити додаткову конфіденційність інформації, що зберігається в мережевому каталозі (за рахунок приховування структури та імен каталогів і файлів), поліпшити юзабіліті для користувача, якому в процесі роботи з мережевим каталогом не буде доступний широкому зайва інформація (тим більше доступ до якої у нього все одно відсутній) і, найголовніше, захистимо системного адміністратора від постійних питань користувачів «чому мене не пускає в цю папку !! ». Спробуємо детальніше розібратися в цій технології і особливості її налаштування і використання в різних версіях Windows.
трохи теорії
Яким чином відбувається взаємодія між клієнтом і сервером при зверненні до спільної папки:
З цієї схеми ясно, що сервер спочатку показує користувачеві весь вміст папки, а перевірку прав доступу здійснює тільки після спроби доступу до його вмісту.
Функціонал Access-based Enumeration (ABE) дозволяє реалізувати перевірку прав доступу на об'єкти файлової системи до того, як користувачу відправляється список вмісту папки. Отже, в кінцевий список потраплятимуть тільки ті об'єкти, до яких у користувача є доступ на рівні NTFS, а все недоступні ресурси - ховаються.
Тобто користувач одного відділу (наприклад, складу) в одному і тому ж каталозі буде бачити один список папок і файлів.
А користувачі іншого департаменту, наприклад ІТ, - інший.
Основний недолік використання ABE на файлових серверах - додаткове навантаження на сервер. Особливо це можна відчути на високонавантажених файлових серверах. Чим більше кількість об'єктів в просматриваемом каталозі, і чим більше кількість користувачів, тим більше затримка. За заявою Microsoft в разі наявності в видимій частині каталозі 15000 об'єктів (файлів і каталогів), швидкість відкриття папки сповільнюється на 1-3 секунди. Саме тому, при проектуванні структури загальних папок, рекомендується приділити велику увагу створенню чіткої та ієрархічної структури підпапок, в цьому випадку уповільнення швидкості відкриття каталогів буде непомітним.
Примітка. Варто розуміти, що Access-based Enumeration не приховує від користувача сам список загальних ресурсів (куля) на файловому сервері, а діє тільки по відношенню до їх вмісту. Якщо потрібно приховати від користувача саме кулі, необхідно в кінець назви загальної папки додати символ $.
Управляти ABE можна з командного рядка (утиліта abecmd.exe), з графічного інтерфейсу або через спеціальний API.
обмеження ABE
Access-based Enumeration в Windows не працює в випадках:
Щоб активувати ABE для конкретної папки, включіть в її властивостях опцію Enable access-based enumeration on this shared folder.
І в розділі Settings включити опцію Enable access-based enumeration.
Управління ABE з командного рядка
Утиліта Abecmd.exe дозволяє активувати ABE відразу для всіх каталогів або ж персонально. Наступна команда включить Access-Based Enumeration відразу для всіх куля:
Або для конкретної папки (наприклад, кулі з ім'ям Docs):
ABE в клієнтських ОС: Windows Vista, Windows 7, Windows 8
Примітка. У корпоративному середовищі ABE чудово поєднується з папками DFS. приховуючи від користувача «непотрібні» папки і надаючи більш зручну структуру дерева загальних папок. Включить ABE на DFS можна за допомогою консолі DFS Management або утиліти dfsutil.exe:
dfsutil property abde enable \\