Войдите с командой через SSO
Что вы получите
Заголовок раздела «Что вы получите»К концу этого учебника у вас будет:
- SAML-подключение между вашим сервером Control Center и провайдером удостоверений (в примере мы используем Okta),
- один пользователь, подготовленный автоматически при первом входе, и
- политика членства в рабочих пространствах, которую вы выбрали осознанно.
Вам понадобится сервер, которым вы управляете (владелец сервера — оператор установки), и приложение IdP, которое вы можете настроить. Заложите 20 минут.
1. Откройте настройки единого входа
Заголовок раздела «1. Откройте настройки единого входа»Войдите в Control Center и перейдите в Настройки → Сервер → Единый вход. Экран переключается между SAML и OpenID Connect, а также содержит карточку Подготовка пользователей (SCIM). Останьтесь на SAML.
Всё на этом экране действует на уровне всего сервера: один IdP аутентифицирует людей во всех рабочих пространствах, поэтому редактировать это может только владелец сервера.
2. Вставьте метаданные IdP
Заголовок раздела «2. Вставьте метаданные IdP»В Okta откройте вкладку Sign On вашего приложения и скопируйте XML метаданных (или скачайте файл и вставьте его содержимое). Вернувшись в Control Center, вставьте его в поле XML метаданных IdP и нажмите Проверить подключение.
Всплывающее уведомление показывает эндпоинт входа IdP — доказательство
того, что метаданные разобраны, сертификат прочитан и сервер может
построить запрос на вход (тест проверяет всё, кроме самого перехода
через браузер). Если проверка не проходит, значит XML не был полным
EntityDescriptor (во вкладке SAML в Okta это называется “Metadata URL”;
откройте URL и скопируйте то, что он отдаёт). Та же кнопка на вкладке
OpenID Connect вместо этого проверяет документ обнаружения вашего
издателя. Чтобы также заметить истекающий сертификат и узнать,
распознаёт ли IdP Control Center, воспользуйтесь
проверкой из шага 6.
3. Зарегистрируйте Control Center в IdP
Заголовок раздела «3. Зарегистрируйте Control Center в IdP»Нажмите Копировать метаданные SP и передайте их тому, кто настраивает сторону Okta (или продиктуйте два значения, которые у вас запросят):
- ACS URL:
https://<your-server>/saml/acs - Entity ID:
https://<your-server>/saml
Эти URL выводятся из origin, по которому браузеры ваших пользователей обращаются к серверу. Если сервер работает за туннелем или обратным прокси, убедитесь, что origin стабилен (Настройки → Сервер → Подключение и состояние → Открыть доступ к серверу показывает публичный URL) — или явно зафиксируйте entity ID в поле Entity ID SP.
4. Выберите, что даёт вход
Заголовок раздела «4. Выберите, что даёт вход»Что произойдёт при первом входе, определяют две политики:
- Добавлять пользователей во все рабочие пространства при первом входе — оставьте включённой для развёртывания одной команды, где SSO равнозначен доверию. Отключите её, когда сервер совместно используют несколько команд или заказчиков: тогда каждому новичку потребуется явное приглашение в рабочее пространство — это более безопасное значение по умолчанию.
- Создавать неизвестных пользователей при первом входе — включено по умолчанию; отключите, чтобы отклонять всех, у кого ещё нет учётной записи.
При необходимости сопоставьте атрибут с именами групп (в Okta обычно это
groups) и переведите группы в роли с помощью таблицы сопоставления —
например {"platform-leads": "admin"}. SSO никогда не может выдать роль
владельца.
5. Включите вход и выполните его
Заголовок раздела «5. Включите вход и выполните его»Включите Вход через SAML, нажмите Сохранить подключение, затем
откройте приватное окно браузера по адресу
https://<your-server>/saml/login. Войдите в Okta — и вернётесь в
веб-клиент уже с выполненным входом: учётная запись создана, а членство
выдано согласно выбранной вами политике.
Та же точка входа появляется на экране подключения в веб-клиенте (Войти через SAML), как только вы введёте адрес сервера — форма подстраивается под то, что предлагает сервер (для OpenID Connect отображается Войти через OpenID Connect). Кнопка открывает вход в новой вкладке; когда переход завершается, ожидающая вкладка автоматически подхватывает сессию. Экран настройки сервера в настольном приложении работает так же: введите URL сервера, появится кнопка Войти через SAML, которая откроет браузер, и приложение выполнит вход, когда переход завершится.
6. Проверьте это на этой странице
Заголовок раздела «6. Проверьте это на этой странице»Прежде чем разворачивать SSO, а также когда вход не срабатывает, проверьте компоненты здесь. Проверка полностью выполняется в вашем браузере: она читает метаданные, которые вы вставляете на этой вкладке, и применяет те же правила, что и сервер. Получив адрес вашего сервера, она также спрашивает у него, включён ли вход через SAML.
Она выявляет то, чего не видит Проверить подключение в приложении: сертификат подписи, близкий к истечению; IdP, который настаивает на подписанных запросах; а с помощью тестового входа — распознаёт ли IdP Control Center вообще.
Runs in your browserYour metadata is read in this tab and never uploaded. Add a server address and your browser also asks that server which sign-in methods it offers.
Test sign-in at your IdP
- Your IdP's sign-in page: it recognizes Control Center's entity ID. You can close the tab.
- An error at your IdP: it names what to fix, usually an unknown entity ID (Entra: AADSTS700016) or a user not assigned to the app.
- Your server's "Sign-in failed" page: also a pass. The IdP accepted the request and posted back to your ACS URL; your server refuses it only because this page started the sign-in, not your server.
Куда двигаться дальше
Заголовок раздела «Куда двигаться дальше»- Передайте IdP и управление жизненным циклом: настройте создание и удаление пользователей через SCIM.
- Ваш IdP работает по OpenID Connect вместо SAML? Подключите провайдер OpenID Connect.
- Хотите узнать, что именно проверяет переход через браузер? Как работает единый вход.