LLM Router
Руководства

Настройка SSO (OIDC)

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

Кому подходит

  • IT / ИБ — единый вход без отдельных паролей в LLM Router.
  • Администраторам — настройка доменов email и проверка провайдера.

Требуются роль owner или admin и зарегистрированный OIDC-провайдер (Keycloak, Okta, Azure AD и т.п.).

Обзор потока

  1. Сотрудник нажимает «Вход через SSO» на сайте.
  2. Сайт перенаправляет на страницу вашего IdP (Keycloak, Okta, Azure AD и т.п.).
  3. После успешного входа сотрудник возвращается в личный кабинет с активной сессией.

Технические детали endpoints — в справочнике API.

Шаг 1. Добавьте провайдер

TOKEN="<token>"
ORG_ID="<org-id>"

curl -s -X POST "https://api.example.com/api/organizations/$ORG_ID/auth-providers" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "oidc",
    "name": "Корпоративный SSO",
    "issuerUrl": "https://sso.example.com",
    "clientId": "llm-router",
    "clientSecret": "your-client-secret",
    "allowedDomains": ["example.com"]
  }'

Ответ (201) — объект провайдера без clientSecret. Тип local добавляется автоматически при регистрации организации.

Шаг 2. Проверьте discovery

PROVIDER_ID="<auth-id из ответа>"

curl -s -X POST "https://api.example.com/api/auth/oidc/providers/$PROVIDER_ID/discover" \
  -H "Authorization: Bearer $TOKEN"

Успех — JSON с issuer, authorization_endpoint, token_endpoint, jwks_uri.

Шаг 3. Начните вход

curl -s "https://api.example.com/api/auth/oidc/$PROVIDER_ID/login?redirect_uri=https://app.example.com/login/callback"

Ответ:

{
  "authorizationUrl": "https://sso.example.com/authorize?…",
  "state": "…"
}

Перенаправьте браузер на authorizationUrl. После входа IdP вернёт code и state на redirect_uri.

Шаг 4. Завершите callback

curl -s "https://api.example.com/api/auth/oidc/callback?state=…&code=…"

Ответ — сессия { "token", "email" }. Email должен соответствовать allowedDomains и быть участником организации (или будет создан по политике продукта).

Через кабинет

Раздел SSO — форма добавления провайдера и кнопка проверки discovery.

Демо-провайдер

Что дальше

На этой странице