Интеграция Single Sign-On (SSO)

Настройка единого входа через корпоративные провайдеры идентификации: Microsoft Entra (Azure AD), Google Workspace, Okta, OneLogin и другие.

Что такое SSO

Single Sign-On (SSO) — технология единого входа, позволяющая пользователям авторизоваться один раз в корпоративном провайдере идентификации и получить доступ ко всем подключённым приложениям без повторного ввода пароля.

┌─────────────────────────────────────────────────────────────────────────┐
│                        СХЕМА РАБОТЫ SSO                                  │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│   ┌──────────────┐      1. Вход        ┌───────────────────────┐        │
│   │              │  ─────────────────► │                       │        │
│   │  Сотрудник   │                     │   Identity Provider   │        │
│   │              │  ◄───────────────── │   (Microsoft Entra,   │        │
│   └──────────────┘   2. SAML Token     │    Google, Okta)      │        │
│          │                             └───────────────────────┘        │
│          │                                        │                     │
│          │ 3. Доступ с токеном                    │ SCIM Sync           │
│          ▼                                        ▼                     │
│   ┌─────────────────────────────────────────────────────────────┐      │
│   │                    UniFi Identity Hub                        │      │
│   └─────────────────────────────────────────────────────────────┘      │
│          │                    │                    │                    │
│          ▼                    ▼                    ▼                    │
│   ┌────────────┐    ┌─────────────────┐    ┌─────────────┐            │
│   │   WiFi     │    │   VPN Access    │    │  SSO Apps   │            │
│   │  802.1X    │    │   WireGuard     │    │  SaaS       │            │
│   └────────────┘    └─────────────────┘    └─────────────┘            │
│                                                                          │
└─────────────────────────────────────────────────────────────────────────┘

Преимущества SSO

Безопасность

Единая точка аутентификации с MFA, политиками паролей и мониторингом в IdP.

Удобство

Один пароль для всех систем. Нет необходимости запоминать множество учётных данных.

Централизация

Управление доступом в одном месте. Увольнение сотрудника блокирует все системы.

Аудит

Все входы логируются в IdP. Полная видимость кто, когда и откуда заходил.

Протоколы SSO

ПротоколОписаниеИспользование в Identity
SAML 2.0Security Assertion Markup Language — XML-based стандарт для обмена аутентификационными даннымиВход пользователей, интеграция с IdP
OAuth 2.0Протокол авторизации для делегирования доступаSSO Apps, доступ к SaaS
OpenID ConnectСлой идентификации поверх OAuth 2.0Аутентификация в приложениях
SCIM 2.0System for Cross-domain Identity Management — стандарт provisioningСинхронизация пользователей и групп

Поддерживаемые провайдеры

UniFi Identity интегрируется с ведущими Identity Provider через стандартные протоколы SAML и SCIM.

ПровайдерSSO (SAML)Provisioning (SCIM)Требуемая редакция
Microsoft Entra ID (Azure AD)✓ Полная поддержка✓ Полная поддержкаStandard
Google Workspace✓ Полная поддержка✓ Полная поддержкаStandard
Okta✓ Полная поддержка✓ Полная поддержкаEnterprise
OneLogin✓ Полная поддержка✓ Полная поддержкаEnterprise
PingFederate✓ Полная поддержка✓ Полная поддержкаEnterprise
Другие SAML IdP✓ Generic SAML— ВручнуюStandard
Примечание: Microsoft Entra ID — это новое название Azure Active Directory. Microsoft переименовала продукт в 2023 году, но функциональность осталась той же.

Интеграция с Microsoft Entra ID (Azure AD)

Microsoft Entra ID — наиболее популярный корпоративный IdP. Интеграция включает SSO через SAML и автоматический provisioning через SCIM.

Требования

  • Microsoft Entra ID (любой план, включая Free)
  • Права Global Administrator или Application Administrator
  • UniFi Identity Standard или Enterprise

Часть 1: Настройка SSO (SAML)

1

Создайте Enterprise Application

  1. Войдите в Azure Portal
  2. Перейдите в Microsoft Entra ID → Enterprise applications
  3. Нажмите New application → Create your own application
  4. Введите имя: UniFi Identity
  5. Выберите Integrate any other application you don't find in the gallery (Non-gallery)
  6. Нажмите Create
2

Настройте Single sign-on

  1. В созданном приложении выберите Single sign-on → SAML
  2. В разделе Basic SAML Configuration нажмите Edit
  3. Заполните поля (значения из Identity Hub → Settings → Identity Providers):
    • Identifier (Entity ID): https://identity.ui.com/saml/<your-org-id>
    • Reply URL (ACS URL): https://identity.ui.com/saml/<your-org-id>/acs
  4. Сохраните изменения
3

Настройте Attributes & Claims

Убедитесь, что следующие атрибуты передаются:

Claim nameSource attribute
emailaddressuser.mail
givennameuser.givenname
surnameuser.surname
nameuser.displayname
4

Скачайте метаданные

В разделе SAML Certificates скачайте Federation Metadata XML — он понадобится для настройки Identity.

5

Настройте Identity Hub

  1. Откройте Identity HubSettings → Identity Providers
  2. Нажмите Add Provider → Microsoft Entra ID
  3. Загрузите скачанный Federation Metadata XML
  4. Или введите вручную:
    • Login URL: из Azure (SAML-P Sign-on endpoint)
    • Identifier: из Azure (Entity ID)
    • Certificate: из Azure (скачайте Certificate Base64)
  5. Сохраните конфигурацию
6

Назначьте пользователей

В Azure в разделе Users and groups добавьте пользователей или группы, которые должны иметь доступ к UniFi Identity.

Часть 2: Настройка SCIM Provisioning

SCIM Provisioning позволяет автоматически создавать, обновлять и удалять пользователей в Identity при изменениях в Azure AD.
1

Включите provisioning в Azure

  1. В Enterprise Application перейдите в Provisioning
  2. Нажмите Get started
  3. Выберите Provisioning Mode: Automatic
2

Получите SCIM credentials из Identity

  1. В Identity Hub → Settings → Identity Providers
  2. Выберите Microsoft Entra ID
  3. Скопируйте:
    • SCIM Endpoint URL
    • SCIM Bearer Token
3

Введите credentials в Azure

В разделе Admin Credentials:

  • Tenant URL: вставьте SCIM Endpoint URL
  • Secret Token: вставьте SCIM Bearer Token

Нажмите Test Connection для проверки.

4

Настройте маппинг атрибутов

В разделе Mappings проверьте маппинг пользователей:

Azure AD AttributeTarget Attribute
userPrincipalNameuserName
mailemails[type eq "work"].value
givenNamename.givenName
surnamename.familyName
departmenturn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department
jobTitletitle
5

Запустите синхронизацию

Включите Provisioning Status: On и нажмите Save. Начальная синхронизация запустится автоматически.

Важно: После включения SCIM синхронизации пользователи, импортированные из Azure AD, становятся read-only в Identity Hub. Все изменения нужно делать в Azure AD.

Интеграция с Google Workspace

Google Workspace (ранее G Suite) интегрируется с UniFi Identity через SAML SSO и автоматический provisioning.

Требования

  • Google Workspace Business Starter или выше
  • Права Super Admin в Google Admin Console
  • UniFi Identity Standard или Enterprise

Настройка SSO

1

Откройте Google Admin Console

Войдите в admin.google.com с учётной записью Super Admin.

2

Добавьте SAML-приложение

  1. Перейдите в Apps → Web and mobile apps
  2. Нажмите Add app → Add custom SAML app
  3. Введите имя: UniFi Identity
3

Скачайте метаданные Google

На шаге Google Identity Provider details скачайте IDP metadata или скопируйте SSO URL, Entity ID и Certificate.

4

Настройте Service Provider details

Введите данные из Identity Hub:

  • ACS URL: https://identity.ui.com/saml/<org-id>/acs
  • Entity ID: https://identity.ui.com/saml/<org-id>
  • Name ID format: EMAIL
  • Name ID: Basic Information > Primary email
5

Настройте атрибуты

Добавьте маппинг атрибутов:

Google Directory attributeApp attribute
Primary emailemail
First namefirstName
Last namelastName
Departmentdepartment
6

Включите приложение

Откройте созданное приложение и в разделе User access включите его для нужных организационных единиц или для всех.

7

Настройте Identity Hub

В Identity Hub → Settings → Identity Providers добавьте Google Workspace и загрузите метаданные или введите данные вручную.

Настройка Auto-provisioning

  1. В Google Admin Console откройте ваше SAML-приложение
  2. Перейдите в Auto-provisioning
  3. Нажмите Configure auto-provisioning
  4. Введите SCIM URL и Token из Identity Hub
  5. Выберите атрибуты для синхронизации
  6. Включите provisioning

Интеграция с Okta

Okta — enterprise-grade IdP с расширенными возможностями интеграции. Требует UniFi Identity Enterprise.

Настройка SSO

1

Создайте приложение в Okta

  1. Войдите в Okta Admin Console
  2. Перейдите в Applications → Applications
  3. Нажмите Create App Integration
  4. Выберите SAML 2.0
2

Настройте SAML Settings

  • Single sign-on URL: ACS URL из Identity
  • Audience URI (SP Entity ID): Entity ID из Identity
  • Name ID format: EmailAddress
  • Application username: Email
3

Добавьте Attribute Statements

NameValue
emailuser.email
firstNameuser.firstName
lastNameuser.lastName
departmentuser.department
4

Получите IdP Metadata

На вкладке Sign On найдите ссылку Identity Provider metadata и скачайте файл.

5

Завершите настройку в Identity

В Identity Hub добавьте Okta как IdP и загрузите полученный metadata файл.

SCIM Provisioning для Okta

  1. В приложении Okta перейдите на вкладку Provisioning
  2. Нажмите Configure API Integration
  3. Включите Enable API integration
  4. Введите:
    • SCIM connector base URL: из Identity Hub
    • API Token: Bearer token из Identity Hub
  5. Нажмите Test API Credentials
  6. Сохраните и настройте маппинг атрибутов
  7. Включите нужные действия (Create Users, Update User Attributes, Deactivate Users)

Настройка Generic SAML

Для IdP, не имеющих встроенной интеграции, используйте Generic SAML. Это работает с любым SAML 2.0 совместимым провайдером.

Данные для конфигурации Service Provider

UniFi Identity SP Metadata
Entity ID:          https://identity.ui.com/saml/<your-org-id>
ACS URL:            https://identity.ui.com/saml/<your-org-id>/acs
SLO URL:            https://identity.ui.com/saml/<your-org-id>/slo
Name ID Format:     urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
Binding:            HTTP-POST

Требуемые атрибуты SAML Response

АтрибутОбязательностьОписание
NameIDОбязательноEmail пользователя (формат emailAddress)
email или http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddressОбязательноEmail для идентификации
firstName или givennameРекомендуетсяИмя пользователя
lastName или surnameРекомендуетсяФамилия пользователя
departmentОпциональноОтдел
groupsОпциональноСписок групп (для group mapping)

Настройка в Identity Hub

  1. Перейдите в Settings → Identity Providers
  2. Нажмите Add Provider → Custom SAML
  3. Введите данные вашего IdP:
    • Name: название провайдера
    • SSO URL: URL для SAML-запросов
    • Entity ID: идентификатор IdP
    • Certificate: публичный сертификат для верификации подписи
  4. Настройте маппинг атрибутов если необходимо
  5. Сохраните и протестируйте подключение

SCIM Provisioning

SCIM (System for Cross-domain Identity Management) — стандартный протокол для автоматической синхронизации пользователей между системами.

Возможности SCIM

Provisioning

  • Автосоздание пользователей
  • Синхронизация групп
  • Обновление атрибутов

Deprovisioning

  • Деактивация уволенных
  • Удаление из групп
  • Отзыв доступов

SCIM Endpoints

SCIM API Endpoints
Base URL:           https://identity.ui.com/scim/v2/<org-id>

Users:
  GET    /Users                    # Список пользователей
  GET    /Users/{id}               # Получить пользователя
  POST   /Users                    # Создать пользователя
  PUT    /Users/{id}               # Обновить пользователя
  PATCH  /Users/{id}               # Частичное обновление
  DELETE /Users/{id}               # Удалить пользователя

Groups:
  GET    /Groups                   # Список групп
  GET    /Groups/{id}              # Получить группу
  POST   /Groups                   # Создать группу
  PUT    /Groups/{id}              # Обновить группу
  PATCH  /Groups/{id}              # Частичное обновление
  DELETE /Groups/{id}              # Удалить группу

Service Provider:
  GET    /ServiceProviderConfig    # Конфигурация
  GET    /Schemas                  # Схемы
  GET    /ResourceTypes            # Типы ресурсов

Аутентификация

SCIM API использует Bearer Token аутентификацию:

HTTP Header
Authorization: Bearer <your-scim-token>
Безопасность: SCIM токен предоставляет полный доступ к управлению пользователями. Храните его в секрете и регулярно ротируйте.

SSO для приложений

UniFi Identity может выступать Identity Provider для внешних SaaS-приложений, обеспечивая единый вход для сотрудников.

Требуется: UniFi Identity Enterprise для полной функциональности SSO Apps.

Поддерживаемые приложения

Identity включает готовые интеграции для популярных SaaS:

  • Slack
  • Zoom
  • Salesforce
  • Dropbox
  • Box
  • Atlassian (Jira, Confluence)
  • GitHub Enterprise
  • AWS Console
  • И другие SAML/OIDC приложения

Добавление приложения

  1. В Identity Hub перейдите в Applications
  2. Нажмите Add Application
  3. Выберите приложение из каталога или создайте Custom SAML/OIDC
  4. Следуйте инструкциям по настройке
  5. Назначьте приложение группам пользователей

Доступ пользователей

После настройки пользователи увидят назначенные приложения в:

  • Identity Endpoint App — раздел Applications
  • Браузерный портал — identity.ui.com/apps

Клик по приложению выполнит SSO-вход без ввода дополнительных паролей.

Устранение неполадок

Распространённые проблемы SSO

SAML Response Invalid

Симптом: Ошибка "Invalid SAML Response" при входе.

Решение:

  • Проверьте, что ACS URL точно совпадает (включая https и слеш в конце)
  • Убедитесь, что Entity ID идентичен в IdP и Identity
  • Проверьте срок действия сертификата IdP
  • Синхронизируйте время на серверах (разница не более 5 минут)

User Not Found

Симптом: SSO работает, но пользователь не находится.

Решение:

  • Убедитесь, что email в SAML Response совпадает с email в Identity
  • Проверьте маппинг атрибута email (NameID или claim)
  • Если используется SCIM — дождитесь синхронизации
  • Включите JIT (Just-In-Time) provisioning если нужно автосоздание

SCIM Sync Failed

Симптом: Пользователи не синхронизируются из IdP.

Решение:

  • Проверьте SCIM endpoint URL (без лишних слешей)
  • Убедитесь, что Bearer token действителен и не истёк
  • Проверьте логи provisioning в IdP на предмет ошибок
  • Убедитесь, что пользователи назначены на приложение в IdP

Certificate Error

Симптом: Ошибка "Certificate validation failed".

Решение:

  • Загрузите актуальный сертификат из IdP
  • Используйте формат Base64 (PEM)
  • Убедитесь, что сертификат не истёк
  • Проверьте, что вся цепочка сертификатов включена

Диагностика

Для отладки SSO-проблем используйте:

  1. SAML-tracer (расширение браузера) — для просмотра SAML-запросов
  2. IdP Audit Logs — логи в Azure/Google/Okta
  3. Identity Hub Logs — Settings → Logs
Пример SAML Response для диагностики
<saml:Assertion>
  <saml:Subject>
    <saml:NameID Format="emailAddress">
      user@company.com      <!-- Должен совпадать с email в Identity -->
    </saml:NameID>
  </saml:Subject>
  <saml:AttributeStatement>
    <saml:Attribute Name="email">
      <saml:AttributeValue>user@company.com</saml:AttributeValue>
    </saml:Attribute>
    <saml:Attribute Name="firstName">
      <saml:AttributeValue>John</saml:AttributeValue>
    </saml:Attribute>
  </saml:AttributeStatement>
</saml:Assertion>

Следующие шаги

Была ли эта статья полезной?

NetEvo
NetEvo Store Онлайн
👋

Привет!

Есть вопросы по оборудованию UniFi? Напишите нам, и мы поможем с выбором!

Представьтесь, чтобы начать диалог: