технологія Доступ-на основі Перерахування (ABEПерерахування на підставі доступу) дозволяє на загальних мережевих ресурсах (кулях) приховати від користувачів файли і папки, до яких у них відсутня права доступу на читання на рівні NTFS. Тим самим можна забезпечити додаткову конфіденційність даних, що зберігаються в мережевому каталозі (за рахунок приховування структури та імен каталогів і файлів), поліпшити юзабіліті для користувача, якому в процесі роботи з мережевим каталогом не буде доступний широкому зайва інформація (тим більше доступ до якої у нього все одно відсутній) і, найголовніше, захистимо системного адміністратора від постійних питань користувачів «чому мене не пускає в цю папку !!». Спробуємо детальніше розібратися в цій технології і особливості її налаштування і використання в різних версіях Windows.

Особливості доступу до загальних мережних папок Windows

Одним з недоліків мережевих папок Windows є той факт, що за замовчуванням всі користувачі при перегляді вмісту загальної папки могли, як мінімум, бачити її структуру та список що містяться в ній файлів і каталогів, в тому числі тих, доступ до яких на рівні NTFS у них відсутня (при спробі відкрити такий файл або папку користувач отримує помилку доступу «Доступ заборонений / Доступ Заперечується»). Так чому б не приховати від користувача ті каталоги і файли, до яких у нього все одно немає доступу? Допомогти в цьому завданні повинна технологія Доступ На основі Перерахування (ABE). Включивши ABE на загальній мережевий папці можна домогтися того, щоб різні користувачі бачили різний список каталогів і файлів в одній і тій же мережевий кулі, заснований індивідуальних правах доступу користувача до цих папок (ACL).

Яким чином відбувається взаємодія між клієнтом і сервером при зверненні до спільної папки:

  • Клієнт звертається до сервера з запитом на доступ до цікавого для його каталогу в загальній мережевий папці;
  • служба LanmanServer на сервері перевіряє, чи є у користувача права доступу до даного каталогу на рівні дозволів файлової системи NTFS;
  • Якщо доступ дозволений (перегляд вмісту / читання / запис), користувач бачить список вмісту каталогу;
  • Потім користувач за такою ж схемою може відкрити конкретний файл або вкладений каталог (ви можете подивитися, хто відкрив конкретний файл в мережевій папці так). Якщо доступу до папки немає, користувач отримує відповідне повідомлення.

З цієї схеми ясно, що сервер спочатку показує користувачеві весь вміст папки, а перевірку прав доступу на конкретний об’єкт здійснює тільки після спроби доступу до його вмісту.

Функціонал Access Based Enumeration (ABE) дозволяє реалізувати перевірку прав доступу на об’єкти файлової системи до того, як користувачу відправляється список вмісту папки. Отже, в кінцевий список потраплятимуть тільки ті об’єкти, до яких у користувача є хоча б права Прочитайте на рівні NTFS, а все недоступні ресурси просто не відображаються (ховаються).

Тобто користувач одного відділу (наприклад, складу) в одному і тому ж мережевому каталозі (\ filesrv1 docs) буде бачити один список папок і файлів. Як ви бачите, у користувача відображаються тільки дві папки: Public і Sklad.

Доступ на підставі дозволів - ABE

У користувачів іншого департаменту, наприклад, ІТ (які включені в іншу групу безпеки Windows), відображається інший список вкладених каталогів. Крім каталогів Public і Sklad у даних користувачів в мережевій теці видно ще 6 директорій. Access-Based Enumeration - як приховати вміст загальної кулі в Windows

Основний недолік використання ABE на файлових серверах – додаткове навантаження на сервер. Особливо це можна відчути на високонавантажених файлових серверах. Чим більше кількість об’єктів в просматриваемом каталозі, і чим більше кількість користувачів відкривають файли на ньому, тим більше затримка. За заявою Microsoft в разі наявності в видимій частині каталозі 15000 об’єктів (файлів і каталогів), швидкість відкриття папки сповільнюється на 1-3 секунди. Саме тому, при проектуванні структури загальних папок, рекомендується приділити велику увагу створенню чіткої та ієрархічної структури підпапок, в цьому випадку уповільнення швидкості відкриття каталогів буде непомітним.

Примітка. Варто розуміти, що Access Based Enumeration не приховує від користувача сам список загальних мережевих ресурсів (куля) на файловому сервері, а діє тільки по відношенню до їх вмісту. Якщо потрібно приховати від користувача саме мережеву папку, необхідно в кінець назви загальної папки додати символ $.

Управляти ABE можна з командного рядка (утиліта abecmd.exe), З графічного інтерфейсу, PowerShell або через спеціальний API.

Обмеження Перелік на основі доступу

Access-based Enumeration в Windows не працює в випадках:

  1. Якщо в якості файл-сервера використовується Windows XP або Windows Server 2003 без Service Pack;
  2. При локальному перегляді каталогів (безпосередньо з сервера). Наприклад, користувач, підключившись до RDS сервера буде бачити всі локальні папки, якщо даний сервер використовується і як файловий сервер);
  3. Для членів локальної групи адміністраторів файлового сервера (вони завжди бачать повний список файлів).

Використання ABE в Windows Server 2008/2008 R2

У Windows Server 2008 / R2 для використання функціоналу Доступ На основі Перерахування ніяких додаткових компонентів встановлювати не потрібно, тому що можливість управління функціоналом ABE вже вбудована в графічний інтерфейс Windows. Щоб включити Access-based Enumeration для конкретної папки в Windows Server 2008/2008 R2, відкрийте mmc консоль управління Управління часткою та зберіганням (Start -> Programs -> Administrative Tools -> Share and Storage Management). Перейдіть у вікно властивостей потрібної кулі. Потім перейдіть у вікно розширених налаштувань (кнопка Розширений) І включіть опцію Увімкнути перерахування на основі доступу.

windows 2008 Доступ на основі дозволів

Налаштування Access Based Enumeration в Windows Server 2012 R2 / 2016

Налаштування ABE в Windows Server 2012 R2 / 2016 також виконується просто. Щоб включити Доступ На основі Перерахування необхідно спочатку, природно, встановити роль файлового сервера (Файли та служби зберігання), А потім в консолі Server Manager перейти в властивості загальної папки. windows server 2012 загальна папка

І в розділі Налаштування включити опцію Увімкнути перерахування на основі доступу.

windows server 2012 активувати abe

Налаштування Access Based Enumeration в Windows Server 2003

У Windows Server 2003 (знята з підтримки) технологія ABE стала підтримуватися починаючи з Пакет оновлень 1. Щоб включити Access-based Enumeration в Windows Server 2003 SP1 (і вище), потрібно завантажити і встановити пакет _http: //www.microsoft.com/en-us/download/details.aspx? Id = 17510. В процесі установки необхідно вказати, чи потрібно автоматично включити ABE для всіх загальних папок на сервері, або настройка буде проводитися в індивідуальному порядку. Якщо обраний другий пункт, то після закінчення установки пакета, у властивостях загальних папок з’явиться нова вкладка Access-based Enumeration.

включити access base enumeration на кулі в windows server 2003

Щоб активувати ABE для конкретної папки, включіть в її властивостях опцію Увімкніть перелік на основі доступу для цієї спільної папки.

Також відзначимо, що в Windows 2003 підтримується використання Access Based Enumeration на основі DFS, однак налаштувати його можна тільки з командного рядка за допомогою утиліти cacls.

Управління ABE з командного рядка

Настройками Access-based Enumeration можна управляти з командного рядка за допомогою утиліти Abecmd.exe. Дана утиліта входить в пакет Access-based Enumeration для Windows Server 2003 SP1 (посилання вище).

утиліта Abecmd.exe дозволяє активувати ABE відразу для всіх каталогів або ж персонально. Наступна команда включить Access-Based Enumeration відразу для всіх куля:

abecmd /enable /all

Або для конкретної папки (наприклад, кулі з ім’ям Docs):

abecmd /enable Docs

Управління Access Based Enumeration за допомогою PowerShell

Для управління настройками Access Based Enumeration для конкретних папок можна використовувати PowerShell модуль SMBShare (встановлений за замовчуванням в Windows 10 / 8.1 і Windows Server 2016/2012 R2). Виведемо властивості конкретної мережевої папки:

Get-SmbShare Install|fl *

Get-SmbShare FolderEnumerationMode

Зверніть увагу на значення атрибута FolderEnumerationMode. У нашому випадку його значення – Необмежений. Це означає, що ABE відключений для цієї папки.

Можна перевірити статус ABE для всіх мережевих папок сервера:

Get-SmbShare | Select-Object Name,FolderEnumerationMode

Щоб включити ABE для папки, виконайте:

Get-SmbShare Install | Set-SmbShare -FolderEnumerationMode AccessBased

powershell включити Access Based Enumeration для загальної мережевої папки

Ви можете включити Access Based Enumeration для всіх опублікованих мережевих папок (в тому числі адміністративних куля ADMIN $, C $, E $, IPC $), виконайте:

Get-SmbShare Install | Set-SmbShare -FolderEnumerationMode AccessBased

Щоб відключити ABE, виконайте:

Get-SmbShare Install | Set-SmbShare -FolderEnumerationMode Unrestricted

Перерахування на основі доступу в Windows 10 / 8.1 / 7

Багатьом користувачем, особливо в домашніх мережах, також хотілося б мати можливість скористатися функціоналом Access-Based Enumeration. Проблема полягає в тому, що в клієнтських ОС Microsoft відсутня як графічний, так і командний інтерфейс управління «Перерахуванням на основі доступу».

У Windows 10 (Server 2016) і Windows 8.1 (Server 2012R2) для управління Access-based Enumeration можна використовувати PowerShell (див. Розділ вище). У старіших версіях Windows, вам необхідно встановити останню версію PowerShell (> = 5.0) або використовувати утиліту abecmd.exe з пакету для Windows Server 2003, прекрасно працює і на клієнтських ОС. Оскільки пакет Windows Server 2003 Access-based Enumeration на Windows 10 / 8.1 / 7 не встановлюється, доведеться спочатку встановити його на Windows Server 2003, а потім скопіювати його з каталогу C: windows system32 в такий же каталог на клієнті. Після цього включити ABE можна за сценарієм з командним рядком, описаного вище.

Примітка. У корпоративному середовищі ABE чудово поєднується з папками DFS, приховуючи від користувача «непотрібні» папки і надаючи більш зручну структуру дерева загальних папок. Включити ABE на просторі імен DFS можна за допомогою консолі DFS Management або утиліти dfsutil.exe:
dfsutil property abde enable \<namespace root>

Крім того, ви можете включати ABE на комп’ютерах домену AD за допомогою групових політик. Для цього використовується GPP в секції: Конфігурація комп’ютера -> Преференції -> Налаштування Windows -> Мережеві акції).

Включити Access-Based Enumeration за допомогою групових політик

Як ви бачите, у властивостях мережевої папки є опція Доступ-На основі Перерахування, Якщо змінити значення на Enable, для всіх загальних папок, створених за допомогою даної GPO буде включений режим ABE.

Leave a Reply

Your email address will not be published. Required fields are marked *