Развёртывание

Единый вход

Microsoft Entra ID, OpenID Connect и AD/LDAP через брокер; роли назначаются по группам.

Пользователи могут входить в ScanSuite через поставщика удостоверений вашей организации: Microsoft Entra ID, любого поставщика OpenID Connect или Active Directory / LDAP через брокер OpenID Connect, например Keycloak. Поставщик подключается один раз на всю установку в настройках системы, а кто получит доступ и с какой ролью, решает команда: она сопоставляет группы каталога со своими ролями или связывает участников с их учётными записями у поставщика. Человек, которого исключили из группы каталога, теряет доступ.

Пока вы настраиваете единый вход, вход по паролю продолжает работать. Обязательным единый вход становится, только когда его потребует администратор системы, и даже тогда администраторы системы могут войти по паролю, если поставщик недоступен.

1. Включите единый вход на сервере

Добавьте параметры в файл /opt/scansuite/.env и примените их командой ./scansuite restart:

ПараметрЗначение
SSO_ENABLEDtrue. Без этого параметра форма единого входа в настройках системы недоступна.
SSO_CALLBACK_URLhttps://<хост scansuite>/sso/callback — только HTTPS, ровно этот путь и без параметров. Зарегистрируйте этот адрес у поставщика как адрес перенаправления (redirect URI).
OIDC_ALLOWED_HOSTSЧерез запятую — узлы, к которым ScanSuite может обращаться при входе. Для Entra: login.microsoftonline.com,graph.microsoft.com; для брокера — его имя узла.
SSO_MAX_STALE_SECONDSНеобязательный. Сколько живёт сессия единого входа: по истечении нужно войти заново, и ScanSuite перечитывает группы. По умолчанию 28800 (8 часов).

Все адреса поставщика — издатель, документ обнаружения, адреса авторизации, токенов и ключей — должны работать по HTTPS на стандартном порту 443, находиться на узлах из OIDC_ALLOWED_HOSTS и отвечать без перенаправлений. Брокер на нестандартном порту, например Keycloak на 8443, опубликуйте через обратный прокси на 443.

Если поставщик поддерживает выход по обратному каналу (back-channel logout), зарегистрируйте также адрес https://<хост scansuite>/sso/backchannel-logout. Тогда ScanSuite сразу завершает сессии человека, как только поставщик выводит его из системы.

2. Зарегистрируйте ScanSuite у поставщика

Microsoft Entra ID

  1. 01
    Зарегистрируйте приложение

    Выберите вариант для одного клиента (single tenant), укажите веб-адрес перенаправления https://<хост scansuite>/sso/callback и создайте секрет клиента.

  2. 02
    Добавьте утверждение с группами

    Token configuration → Add groups claim → Security groups, формат Group ID в ID-токене.

  3. 03
    Выдайте разрешение GroupMember.Read.All

    API permissions → Microsoft Graph → Application permissions, с согласием администратора. С этим разрешением ScanSuite каждые 30 минут перечитывает состав групп и узнаёт группы тех, кто состоит во многих группах. Без него изменения в группах вступают в силу только при следующем входе.

URL издателя для Entra указывается с идентификатором клиента (тенанта) в виде GUID: https://login.microsoftonline.com/<ID тенанта>/v2.0. URL обнаружения — это URL издателя с окончанием /.well-known/openid-configuration.

Другие поставщики OpenID Connect

Зарегистрируйте конфиденциального клиента с тем же адресом перенаправления. ScanSuite запрашивает только области openid и profile, поэтому, чтобы роли назначались по группам, поставщик должен сам добавлять в ID-токен утверждение groups со списком имён или идентификаторов групп. Если такого утверждения нет, связывайте участников по одному.

Active Directory / LDAP

ScanSuite не подключается к LDAP напрямую и никогда не видит паролей каталога. Он доверяет брокеру, к которому каталог подключён через федерацию. Для Keycloak:

  • добавьте федерацию пользователей LDAP (Active Directory, ldaps://, только чтение) и укажите objectGUID в качестве атрибута UUID, чтобы идентификаторы пользователей не менялись;
  • добавьте LDAP-маппер групп;
  • создайте конфиденциального клиента OpenID Connect с тем же адресом перенаправления;
  • добавьте маппер Group Membership, который записывает groups в ID-токен с полным путём группы, например /corp/security/scanners.

Если пользователя отключили в Active Directory, он теряет доступ при следующем входе, при выходе по обратному каналу от брокера или, самое позднее, через SSO_MAX_STALE_SECONDS.

3. Подключите поставщика в настройках системы

Администратор системы открывает Настройки системы → Вход и доступ и в карточке Единый вход (SSO) заполняет поля:

ПолеЧто указать
Тип поставщикаOpenID Connect, Microsoft Entra ID или Брокер федерации AD / LDAP.
URL издателяИдентификатор поставщика. После сохранения его изменить нельзя: он записан во всех связанных учётных записях. Чтобы сменить поставщика, понадобится новое подключение и новые связи.
URL обнаруженияОбычно URL издателя с окончанием /.well-known/openid-configuration.
Идентификатор клиента, Секрет клиентаИз регистрации приложения у поставщика. Сохранённый секрет не показывается; чтобы оставить его прежним, не заполняйте поле.
Разрешить вход через этого поставщикаВключает вход. Только что сохранённое подключение выключено, пока вы не включите этот переключатель.
Единый вход в настройках системы ScanSuite
Подключение Microsoft Entra ID в настройках системы

Кнопка Проверить подключение проверяет документ обнаружения и ключи подписи, а если хотя бы одна команда сопоставила группы Entra, — ещё и доступ к Microsoft Graph. В карточке видны результат последней проверки и время последнего успешного входа через поставщика.

На странице входа отдельной кнопки единого входа нет. Каждая команда входит по своему адресу https://<хост scansuite>/sso/<короткое имя команды>: человек входит у поставщика и попадает на страницу Команды. Сессия, открытая через единый вход, действует только в той команде, в которую он вошёл.

4. Определите, кто получит доступ

Поставщик подтверждает, кто входит, а права определяет каждая команда сама. Её администратор открывает Команды → Люди; карточка Группы единого входа появляется там, когда единый вход включён и поставщик подключён. Команда видит и меняет только свои сопоставления и связи.

РазделЧто делает
Сопоставление группПо одной строке на группу: идентификатор группы у поставщика, знак равенства и роль — team_admin, operator или reader. Войти может любой член сопоставленной группы: учётная запись создаётся при первом входе, без пароля, с самой высокой ролью из его групп. Сохранение завершает сессии всех, кто получил доступ через группы; при следующем входе они проверяются заново.
Связать участника с учётной записью у поставщикаСвязывает существующего участника с его неизменяемым идентификатором у поставщика (утверждение sub). Адреса почты для связывания не используются; у Entra sub — это не Object ID. После этого участник входит через поставщика и сохраняет роль, которую ему назначила команда.
Группы единого входа в ScanSuite
Сопоставление групп Entra с ролями и связывание участника

Участники, пришедшие через группы, отмечены в списке пометкой из каталога. Их роль определяют группы: она обновляется при каждом входе, не реже чем раз в SSO_MAX_STALE_SECONDS, а для Entra — каждые 30 минут. Кто вышел из всех сопоставленных групп, теряет доступ. Администратор команды может такого участника приостановить, но не может изменить ему роль. На роли участников, которых команда добавила сама, группы не влияют.

Один человек — это одна учётная запись во всех командах: если он входит в две команды через группы, в каждой у него своя роль. Учётную запись, у которой есть пароль ScanSuite, группы не добавляют в команду, где она ещё не состоит, — такого человека администратор команды добавляет сам. Так связь, созданная в одной команде, не даёт доступа в другие.

5. Сделайте единый вход обязательным (по желанию)

Переключатель Требовать единый вход в той же карточке настроек системы закрывает вход по паролю в работу команд: человек, вошедший по паролю, увидит отказ в доступе и ссылку на вход через поставщика. Чтобы никто случайно не остался без доступа, включить его можно только при трёх условиях:

  • подключение поставщика сохранено и вход через него разрешён;
  • администратор системы, который включает переключатель, в этой сессии вошёл через поставщика;
  • администраторы системы сохраняют вход по паролю — это запасной путь, если поставщик недоступен. Каждый такой вход записывается в журнал.

ScanSuite попросит подтвердить включение.

Обязательный единый вход в ScanSuite
Вход через поставщика разрешён и обязателен

Прежде чем сделать единый вход обязательным, проверьте на практике вход и выход через поставщика.

Проверка

Что проверитьГде смотреть
Поставщик доступен и настроенКнопка «Проверить подключение» в настройках системы.
Изменения в группах применилисьЖурнал команды на вкладке «Активность», тема «Люди и доступ»: записи «вошёл(ла) через группу каталога», «Каталог обновил…», «Каталог удалил…».
Выход у поставщика доходит до ScanSuiteТам же: «Поставщик завершил сессию…».
Кто-то вошёл по паролю при обязательном едином входеТам же: «…вошёл(ла) по паролю, хотя требуется единый вход».

Проверено: 2026-09-30