Управление ведением журнала доступа пользователей
Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
В этом документе описываются принципы управления ведением журнала доступа пользователей (UAL).
Ведение журнала доступа пользователей (UAL) — это компонент, который помогает администраторам сервера подсчитать количество уникальных клиентских запросов ролей и служб на локальном сервере.
UAL установлен и включен по умолчанию и выполняет сбор данных в режиме, практически приближенном к реальному времени. Существует всего несколько параметров конфигурации для UAL. Данный документ описывает эти параметры и их назначение.
дополнительные сведения о преимуществах UAL см. в разделе Начало работы с ведением журнала доступа пользователей.
Содержание документа
Параметры конфигурации, описываемые в данном документе, включают в себя следующее:
Отключение и включение службы UAL
Сбор и удаление данных
Удаление данных, записанных службой UAL
Управление UAL в крупномасштабных средах
Восстановление из ошибочного состояния
Включение отслеживания использования лицензий рабочих папок
Отключение и включение службы UAL
UAL включается и запускается по умолчанию, когда компьютер под управлением Windows Server 2012 или более поздней версии устанавливается и запускается впервые. Для удовлетворения требований конфиденциальности или других рабочих нужд администратору может понадобиться отключить или запретить работу UAL. Можно отключить UAL с помощью консоли служб, из командной строки или с помощью командлетов PowerShell. Однако, чтобы гарантировать, что UAL не будет запускаться снова при следующем запуске компьютера, необходимо также отключить службу. В следующих процедурах описывается отключение и отключение UAL.
Примечание
Для получения информации о службе UAL, включая сведения о том, работает или приостановлена служба, включена она или отключена, можно использовать командлет Get-Service UALSVC
PowerShell.
Остановка и отключение службы UAL через консоль службы
Выполните вход на сервер с помощью учетной записи с правами локального администратора.
В диспетчере серверов выберите Средства, затем щелкните Службы.
Прокрутите вниз и выберите пункт Служба ведения журнала доступа пользователей. Щелкните Остановка службы.
Правой кнопкой мыши щелкните имя службы и выберите Свойства. На вкладке Общие поменяйте Тип запуска на Отключено и нажмите кнопку ОК.
Остановка и отключение UAL из командной строки
Выполните вход на сервер с помощью учетной записи с правами локального администратора.
Нажмите клавишу с эмблемой Windows + R, а затем введите cmd, чтобы открыть окно командной строки.
Важно!
Если появится диалоговое окно контроля учетных записей, подтвердите, что отображаемое в нем действие именно то, которое требуется, и нажмите кнопку Да.
Введите net stop ualsvc и нажмите клавишу ВВОД.
Введите netsh ualsvc set opmode mode=disable и нажмите клавишу ВВОД.
Следующие командлеты Windows PowerShell выполняют ту же функцию, что и предыдущая процедура. Вводите каждый командлет в одной строке, несмотря на то, что здесь они могут отображаться разбитыми на несколько строк из-за ограничений форматирования.
Также остановить и отключить UAL можно с помощью команд Windows PowerShell: Stop-service и Disable-Ual.
Stop-service ualsvc
Disable-ual
Если позднее вы хотите перезапустить и снова включить UAL, это можно сделать с помощью следующих процедур.
Запуск и включение службы UAL через консоль служб
Выполните вход на сервер с помощью учетной записи с правами локального администратора.
В диспетчере серверов выберите Средства, затем щелкните Службы.
Прокрутите вниз и выберите пункт Служба ведения журнала доступа пользователей. Щелкните Запуск службы.
Правой кнопкой мыши щелкните имя службы и выберите Свойства. На вкладке Общие поменяйте Тип запуска на Автоматически и нажмите кнопку ОК.
Запуск и включение UAL из командной строки
Выполните вход на сервер с помощью учетной записи локального администратора.
Нажмите клавишу с эмблемой Windows + R, а затем введите cmd, чтобы открыть окно командной строки.
Важно!
Если появится диалоговое окно контроля учетных записей, подтвердите, что отображаемое в нем действие именно то, которое требуется, и нажмите кнопку Да.
Введите net start ualsvc и нажмите клавишу ВВОД.
Введите netsh ualsvc set opmode mode=enable и нажмите клавишу ВВОД.
Следующие командлеты Windows PowerShell выполняют ту же функцию, что и предыдущая процедура. Вводите каждый командлет в одной строке, несмотря на то, что здесь они могут отображаться разбитыми на несколько строк из-за ограничений форматирования.
Также запустить и вновь включить UAL можно с помощью команд Windows PowerShell: Start-service и Enable-Ual.
Enable-ual
Start-service ualsvc
Сбор данных UAL
В дополнение к командлетам PowerShell, описанным в предыдущем разделе, для получения данных UAL можно использовать 12 дополнительных командлетов:
Get-UalOverview: предоставляет сведения, относящиеся к UAL, а также журнал установленных продуктов и ролей.
Get-UalServerUser: предоставляет данные о доступе пользователя клиента на локальный или целевой сервер.
Get-UalServerDevice: предоставляет данные о доступе устройства клиента на локальный или целевой сервер.
Get-UalUserAccess: предоставляет данные о доступе пользователя клиента к каждой роли или продукту, установленным на локальном или целевом сервере.
Get-UalDeviceAccess: предоставляет данные о доступе устройства клиента к каждой роли или продукту, установленным на локальном или целевом сервере.
Get-UalDailyUserAccess: предоставляет данные о доступе пользователя клиента за каждый день года.
Get-UalDailyDeviceAccess: предоставляет данные о доступе устройства клиента за каждый день года.
Get-UalDailyAccess: предоставляет данные о доступе как пользователя, так и устройства клиента за каждый день года.
Get-UalHyperV: предоставляет данные о виртуальной машине, относящиеся к локальному или целевому серверу.
Get-UalDns: предоставляет специальные данные DNS-клиента локального или целевого DNS-сервера.
Get-UalSystemId: предоставляет специальные системные данные для уникальной идентификации локального или целевого сервера.
Get-UalSystemId
предназначен для того, чтобы предоставлять уникальный профиль сервера всем остальным данным с этого сервера для проведения сопоставления с ним. Если на сервере происходят какие-либо изменения одного из параметров Get-UalSystemId
, то создается новый профиль. Get-UalOverview
предназначен для того, чтобы предоставлять администратору список установленных и используемых на сервере ролей.
Примечание
Основные возможности службы печати и документов и файловых служб устанавливаются по умолчанию. Поэтому администраторы могут всегда видеть информацию по этим службам, как при установленных полных ролях. Отдельные командлеты UAL входят в состав Hyper-V и службы DNS из-за уникальных данных, которые UAL собирает для этих ролей сервера.
Вариант сценария обычного использования командлетов UAL мог бы быть таким: администратор запрашивает у UAL уникальные клиентские доступы за определенный диапазон дат. Это можно сделать несколькими способами. Далее приводится рекомендуемый метод запроса уникальных доступов устройств за диапазон дат.
PS C:\Windows\system32>Gwmi -Namespace "root\AccessLogging" -query "SELECT * FROM MsftUal_DeviceAccess WHERE LastSeen >='1/01/2013' and LastSeen <='3/31/2013'"
Он возвращает подробный список всех уникальных клиентских устройств по IP-адресам, которые совершали запросы к серверу в этот диапазон дат.
Значение "Активитикаунт" для каждого уникального клиента ограничено 65 535 в день. Вызов WMI из PowerShell также необходим только при запросе по дате. Все остальные параметры командлета UAL могут использоваться в рамках запросов PowerShell, как в следующем примере:
PS C:\Windows\system32> Get-UalDeviceAccess -IPAddress "10.36.206.112"
ActivityCount : 1
FirstSeen : 6/23/2012 5:06:50 AM
IPAddress : 10.36.206.112
LastSeen : 6/23/2012 5:06:50 AM
ProductName : Windows Server 2012 Datacenter
RoleGuid : 10a9226f-50ee-49d8-a393-9a501d47ce04
RoleName : File Server
TenantIdentifier : 00000000-0000-0000-0000-000000000000
PSComputerName
UAL позволяет хранить историю в течение двух лет. Чтобы разрешить получение данных UAL администратором при запуске службы, UAL создает копию активного файла базы данных Current. mdb в файле с именем GUID. mdb каждые 24 часа для использования поставщиком WMI.
В первый день года UAL создает новый GUID.mdb. Старый GUID. mdb сохраняется в качестве архива для использования поставщиком. По прошествии двух лет исходный GUID.mdb будет перезаписан.
Важно!
Следующая процедура должна выполняться только опытным пользователем или разработчиком, тестирующими свой собственный инструментарий интерфейсов программирования приложений UAL...
Настройка 24-часового интервала по умолчанию так, чтобы данные стали видимы поставщику WMI
Выполните вход на сервер с помощью учетной записи с правами локального администратора.
Нажмите клавишу с эмблемой Windows + R, а затем введите cmd, чтобы открыть окно командной строки.
Добавьте значение реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\WMI\AutoLogger\Sum\PollingInterval (REG_DWORD).
Предупреждение
Неправильное изменение реестра может серьезно повредить систему. Перед внесением изменений в реестр следует сделать резервную копию всех ценных данных на компьютере.
В следующем примере показано, как добавить двухминутный интервал (не рекомендуется в качестве долгосрочного рабочего состояния). REG ADD HKLM\System\CurrentControlSet\Control\WMI\AutoLogger\Sum /v PollingInterval /t REG_DWORD /d 120000 /F
Единица измерения времени — миллисекунды. Минимальное значение — 60 секунд, максимальное — семь дней, а значение по умолчанию — 24 часа.
Для остановки и перезапуска службы ведения журнала доступа пользователей используйте консоль служб.
Удаление данных, записанных службой UAL
Служба UAL не задумывалась как компонент для решения критически важных задач. Данная служба спроектирована так, чтобы как можно меньше воздействовать на работу локальной системы и при этом обеспечивать высокий уровень надежности. Это также позволяет администратору при необходимости вручную удалять базу данных и поддерживающие файлы UAL (каждый файл в каталоге \Windows\System32\LogFiles\SUM\).
Удаление данных, записанных службой UAL
Остановите службу ведения журнала доступа пользователей.
Откройте проводник.
Перейдите в папку \Windows\System32\Logfiles\SUM\.
Удалите все файлы из этой папки.
Управление UAL в крупномасштабных средах
В данном разделе описывается, что может ожидать администратор, когда UAL используется на сервере с большим количеством клиентов.
Максимальное количество доступов, которое может быть записано UAL, составляет 65 535 в день. UAL не рекомендуется использовать на серверах, которые подключены непосредственно к Интернету, таких как веб-серверы, напрямую подключенные к Интернету, или в тех случаях, когда предельно высокая производительность является основной функцией сервера (например, в средах с рабочими нагрузками высокопроизводительных вычислений). В основном он предназначен для малых, средних и корпоративных интрасетей, в которых предполагается наличие большого объема данных, но не так высокое, как и многие из развертываний, которые регулярно обслуживают объем трафика в Интернете.
ual в памяти: поскольку в UAL используется расширяемый механизм служба хранилища (ESE), требования к памяти UAL увеличиваются со временем (или по количеству клиентских запросов). Но память будет освобождаться, поскольку это необходимо системе для минимизации воздействия на производительность.
UAL на диске. требования к жесткому диску для жестких дисков необходимы примерно так, как показано ниже:
0 уникальных клиентских записей: 22 МБ
50 000 уникальных клиентских записей: 80 МБ
500 000 уникальных клиентских записей: 384 МБ
1 000 000 уникальных клиентских записей: 729 МБ
Восстановление из ошибочного состояния
в этом разделе описывается использование расширенного механизма служба хранилища (ESE) на высоком уровне, а также действия администратора в случае повреждения или восстановления данных UAL.
Служба UAL использует ESE для оптимизации использования системных ресурсов и обеспечения их устойчивости к повреждению. Дополнительные сведения о преимуществах ESE см. в разделе Расширяемый обработчик хранилищ в MSDN.
При каждом запуске службы UAL обработчик ESE выполняет "мягкое" восстановление. Дополнительные сведения см. в разделе Файлы расширяемого обработчика хранилищ в MSDN.
Если выполнить "мягкое" восстановление будет проблематично, то ESE выполнит восстановление после сбоя. Дополнительные сведения см. в разделе Функция JetInit в MSDN.
Если UAL все же не может запуститься с существующим набором файлов ESE, то все файлы в каталоге \Windows\System32\LogFiles\SUM\ будут удалены. После удаления этих файлов будет вновь запущена служба ведения журнала доступа пользователей и созданы новые файлы. В этом случае служба UAL продолжит работу, как если бы она функционировала на вновь установленном компьютере.
Важно!
Файлы в каталоге базы данных UAL никогда не должны перемещаться или изменяться. Если это случится, то будут инициированы действия по восстановлению, включая процедуру очистки, описанную в данном разделе. Если требуются резервные копии каталога \Windows\System32\LogFiles\SUM\, то необходимо архивировать каждый файл из этого каталога, чтобы стала возможной операция восстановления.
Включение отслеживания использования лицензий рабочих папок
Сервер рабочих папок может использовать UAL для отчета по использованию клиента. В отличие от UAL, ведение журнала рабочих папок не включено по умолчанию. Вы можете включить его, изменив следующий раздел реестра:
Reg add HKLM\Software\Microsoft\Windows\CurrentVersion\SyncShareSrv /v EnableWorkFoldersUAL /t REG_DWORD /d 1
После добавления этого раздела реестра необходимо перезапустить службу SyncShareSvc на сервере, чтобы включить ведение журнала.
После включения ведения журнала 2 информационных события регистрируются в канал Windows Logs\Application каждый раз, когда клиент подключается к серверу. Для рабочих папок каждый пользователь может иметь одно или несколько клиентских устройств, которые подключаются к серверу проверяют наличие обновлений данных каждые 10 минут. Если с сервером взаимодействует 1000 пользователей, каждый из которых имеет 2 устройства, журналы приложений будут перезаписываться каждые 70 минут, что затрудняет устранение независимых проблем. чтобы избежать этого, можно временно отключить службу ведения журнала доступа пользователей или увеличить размер Windowsного канала логс\аппликатион сервера.