Перейти к основному содержимому

Домены входа

Актуально для: identity после 0.35, mail после 0.47 · Проверено: 30.09.2026

Единого реестра доменов в SimpleTwo нет (решение владельца продукта, 28.09.2026). У каждого списка один хозяин:

  • identity ведёт домены входа — домены, с которыми люди входят, и владельца каждого;
  • почтовая роль ведёт принимаемые домены — для каких доменов она принимает почту и какого они типа: mailboxes (ящики), aliases (только приём), relay (пересылка);
  • координатор читает оба списка и сам ни одним не владеет.

Владелец домена​

У каждого домена входа ровно один владелец:

  • identity — человек из этого домена входит собственными учётными данными identity (пароль, второй фактор, ключ доступа);
  • корпоративный провайдер (ADFS, Entra, Keycloak, SAML IdP) — человек из этого домена входит только через него: ни пароля здесь, ни другого провайдера.

Поле domains у провайдера в списке провайдеров — это тот же список, показанный со стороны провайдера. Изменить владельца можно в любом из двух мест, результат один:

  • записать домен в domains провайдера — домен переходит этому провайдеру (в том числе от identity); два провайдера один домен назвать не могут, такая запись отклоняется;
  • убрать домен из domains провайдера или удалить самого провайдера — домен возвращается identity и остаётся в списке: это по-прежнему домен, с которым люди входят. Убрать его совсем можно только удалением в таблице доменов входа.

Домены хранятся в нижнем регистре и в IDNA-виде: Пример.РФ сохраняется как xn--e1afmkfd.xn--p1ai.

Где это в консоли​

В консоли identity на вкладке «Федерация» первой идёт карточка «Домены входа»: таблица доменов с выбором владельца в каждой строке, поле для нового домена с владельцем и кнопка удаления. Каждое изменение пишется в журнал аудита (signin_domain.put, signin_domain.delete, signin_domain.apply — изменение через провайдера).

Первое заполнение​

Список заполняется один раз — при первом чтении, пока в него ещё ничего не записывали:

  1. домены, которые до этого были записаны у каждого провайдера, — с этим провайдером;
  2. домены из логинов существующих учётных записей, в которых есть @, — с владельцем identity.

Заполнение пишется в журнал одной строкой signin_domain.seed. Если потом удалить все домены, повторного заполнения не будет.

Сверка с доменами почты​

Identity читает принимаемые домены почтовой роли (GET /v1/service/domains, служебный токен svc:identity) и держит ответ пять минут.

  • Коды для входа по почте. Домены организации для этого фактора — домены входа identity и все принимаемые домены почты любого типа, а также их поддомены. Адрес в них не принимается как личный. Если почтовая роль не ответила, код не отправляется.
  • Основной адрес учётной записи. Когда основной адрес задают или меняют (координатор, SCIM, заведение учётки через провайдера), identity отказывает, если домен адреса — не домен почты типа mailboxes или relay (во время миграции домен компании пересылает почту на старый сервер, и новым сотрудникам адрес в нём нужен); домен типа aliases не подходит. Проверка идёт, только если почтовая роль развёрнута и отвечает: без почтовой роли ящиков в установке нет и спорить не с чем, а неответившая роль не может сказать «нет» — запись проходит, в журнале службы остаётся предупреждение. Гостей и ботов проверка не касается: почта им ящиков не заводит. Неизменённый адрес не проверяется.

Для интеграций​

  • GET /v1/service/signin-domains — для svc:coordinator и svc:mail: {rev, domains: [{domain, upstream?}]}, по алфавиту; upstream нет — владелец identity.
  • GET /control/signin-domains, PUT /control/signin-domains/{domain} с телом {upstream?}, DELETE /control/signin-domains/{domain} — консоль и координатор. Владелец должен существовать; неизвестный провайдер — ошибка 400.