СКУД - PNR24.RU

Настройка единого входа (SSO) между Active Directory и системой контроля доступа

  • Сен, 24, 2025
Настройка SSO между Active Directory и СКУД

Пошаговая инструкция для системных администраторов и интеграторов безопасности

Введение

Единый вход (Single Sign-On, SSO) между Active Directory (AD) и системой контроля доступа (СКУД) — это ключевой элемент цифровой трансформации на современных предприятиях. Он позволяет:

  • Использовать одни и те же учётные данные для доступа к сети и физическим зонам
  • Автоматизировать назначение прав доступа
  • Упростить увольнение и перевод сотрудников
  • Повысить безопасность за счёт централизованного управления

В этой статье — практическая, технически точная инструкция по настройке SSO между Active Directory (Windows Server 2016/2019/2022) и типовой СКУД (на примере ZNK-OASIS, Paxton, Beward, PerCo) через стандартные протоколы: LDAP, SAML или API-интеграцию.

✅ Все данные основаны на:
— Официальной документации Microsoft по Active Directory и LDAP
— Руководствах ZKTeco, Paxton, PerCo, Beward
— Стандартах SAML 2.0, OAuth 2.0, SCIM
— Практиках интеграции в корпоративных средах

1. Принцип работы SSO между AD и СКУД

Что происходит при SSO?

  1. Администратор создаёт пользователя в Active Directory
  2. Интеграционный механизм передаёт данные в СКУД
  3. Пользователь получает:
    • Доступ к компьютеру (через домен)
    • Ключ-карту / брелок / мобильный ключ
    • Права прохода в заданные зоны
  4. При увольнении — удаление из AD автоматически блокирует доступ в СКУД

Варианты интеграции:

Метод Протокол Подходит для
LDAP Sync LDAP over SSL Локальные СКУД (Paxton, PerCo)
SAML + IdP SAML 2.0 Облачные СКУД (Brivo, Openpath)
API-интеграция REST API + SCIM Современные платформы (ZNK, Beward)
Промежуточный сервер PowerShell / Python скрипты Гибридные решения

2. Требования к инфраструктуре

Со стороны Active Directory:

  • Доменная служба Active Directory Domain Services (AD DS)
  • Учётная запись с правами чтения (например, svc-sso-reader)
  • Открыт порт LDAPS (636) или LDAP (389) с разрешением шифрования
  • Включена аутентификация Kerberos / NTLM
  • Атрибуты пользователей: sAMAccountName, displayName, department, employeeID

Со стороны СКУД:

  • Поддержка внешней аутентификации (LDAP, API, SAML)
  • Возможность импорта пользователей
  • Наличие полей для привязки к AD (логин, ID, карта)
  • Доступ к административному интерфейсу

3. Вариант 1: Интеграция через LDAP (на примере Paxton Net2)

Шаг 1: Настройка LDAPS на контроллере домена

  1. Установите сертификат на контроллер домена (через MMC → Certificates)
  2. Разрешите LDAPS:
    nntdsutil "ldap policies" "connections" "connect to server localhost" "list"
  3. Откройте порт 636 в брандмауэре

Шаг 2: Настройка Paxton Net2

  1. Войдите в Net2 Desktop
  2. Перейдите:
    Tools → System Settings → External Authentication
  3. Выберите LDAP Authentication
  4. Укажите:
    • Server Address: IP-адрес контроллера домена
    • Port: 636 (LDAPS) или 389 (если без шифрования)
    • Bind DN: CN=svc-sso-reader,CN=Users,DC=company,DC=local
    • Password: пароль учётной записи
    • Base DN: DC=company,DC=local
    • User Filter: (objectClass=user)
    • Username Attribute: sAMAccountName
    • Display Name Attribute: displayName
  5. Нажмите Test Connection → должно быть Success

Шаг 3: Сопоставление прав

  1. Создайте группы доступа в Net2 (например, «Офис», «Серверная»)
  2. В разделе User Import настройте:
    • Автоматическое создание пользователей
    • Привязку группы AD → группе доступа в СКУД
  3. Включите синхронизацию по расписанию (каждые 15 минут)
✅ После этого новый пользователь в AD автоматически получит доступ в здание.

4. Вариант 2: Интеграция через API (на примере ZNK-OASIS)

Шаг 1: Настройка SCIM-совместимого API в ZNK

  1. В панели администратора ZNK:
    Настройки → Интеграции → REST API
  2. Включите SCIM 2.0
  3. Сгенерируйте API-токен
  4. Получите URL:
    https://api.znk.ru/scim/v2/Users

Шаг 2: Настройка синхронизации (PowerShell)

Используйте скрипт для регулярного экспорта пользователей из AD и отправки в ZNK.

# Подключение к AD
$users = Get-ADUser -Filter * -Properties sAMAccountName, displayName, department, employeeID

foreach ($user in $users) {
    $body = @{
        userName = $user.sAMAccountName
        displayName = $user.displayName
        emails = @(@{value = "$($user.sAMAccountName)@company.local"})
        active = $true
    } | ConvertTo-Json

    Invoke-RestMethod `
        -Uri "https://api.znk.ru/scim/v2/Users" `
        -Method POST `
        -Headers @{Authorization = "Bearer YOUR_API_TOKEN"; "Content-Type" = "application/scim+json"} `
        -Body $body
}
    

Шаг 3: Назначение прав

— В ZNK создайте правила доступа на основе:

  • Подразделения (department)
  • Должности
  • Графика работы

— Привяжите правило к пользователю через API или вручную

5. Вариант 3: SAML для облачных СКУД (на примере Brivo)

Шаг 1: Настройка Azure AD как IdP

  1. Войдите в Azure PortalAzure Active Directory
  2. Перейдите: Enterprise ApplicationsNew ApplicationNon-gallery application
  3. Назовите: Brivo Access
  4. В разделе Single sign-on выберите SAML
  5. Укажите:
    • Identifier (Entity ID): https://api.brivo.com/saml/sp
    • Reply URL: https://login.brivo.com/saml/consumer-post
  6. Скачайте сертификат подписи SAML

Шаг 2: Настройка Brivo

  1. Войдите в Brivo Admin Panel
  2. Перейдите: SettingsSecurityIdentity Provider
  3. Загрузите сертификат из Azure AD
  4. Сохраните конфигурацию

Шаг 3: Назначение пользователей

  1. Вернитесь в Azure AD
  2. Перейдите в Users and groups → назначьте пользователей приложению Brivo Access
  3. После входа в Azure пользователь автоматически авторизуется в Brivo

6. Безопасность и аудит

Рекомендации:

  • Используйте зашифрованный канал (LDAPS, HTTPS)
  • Не используйте учётную запись Administrator для синхронизации
  • Включите аудит событий:
    • В AD: Audit Account Management
    • В СКУД: журнал входов, изменений прав
  • Настройте оповещения о массовых изменениях
  • Регулярно проверяйте соответствие данных (ревизия)

7. Распространённые ошибки

Ошибка Причина Решение
Нет подключения к LDAP Блокировка порта 636 Проверьте брандмауэр и сертификат
Пользователь не создаётся Неправильный Base DN Используйте ADSI Edit для проверки структуры
Права не применяются Не настроено сопоставление групп Настройте mapping групп AD → зонам СКУД
Частые ошибки аутентификации Устаревший пароль учётной записи Обновите пароль в сервисной учётной записи
Задержка синхронизации Редкий интервал опроса Уменьшите до 5–15 минут

8. Заключение

Настройка SSO между Active Directory и СКУД — это не просто удобство, а повышение уровня безопасности и операционной эффективности.

Ключевые принципы:

  1. Выбирайте метод интеграции в зависимости от типа СКУД (локальная / облачная)
  2. Используйте шифрование (LDAPS, HTTPS)
  3. Автоматизируйте создание, изменение и удаление пользователей
  4. Регулярно проводите аудит соответствия
  5. Документируйте все этапы — для передачи в эксплуатацию

Правильно настроенная интеграция позволяет полностью отказаться от ручного ввода данных и минимизировать человеческий фактор.