OpenID Connect (OIDC) — это протокол аутентификации личности, предназначенный для стандартизации процесса проверки подлинности и авторизации пользователей при входе в систему.
Этот раздел объясняет, как подключить и использовать OpenID Connect (OIDC) для организации единого входа (SSO) в рабочее пространство Нейро42. Если вам нужно освежить теорию, обратитесь к официальному гиду “What is OpenID Connect” от OpenID Foundation. https://openid.net/developers/how-connect-works
Доступность функции
- Поддерживается на тарифах Enterprise платформы Нейро42.
- Для включения и настройки требуется роль владельца инстанса или администратора.
Что вы сможете сделать с OIDC в Нейро42
- Включить авторизацию через корпоративный IdP (Google, Azure AD, Okta, Auth0, Cognito и др.).
- Настроить безопасный SSO для всей вашей команды.
- Управлять протоколом авторизации централизованно, на уровне Identity Provider (IdP).
Настройка OIDC в Нейро42
1.Переход к настройкам SSO
-
- Войдите в Нейро42 под администратором или владельцем инстанса.
- Откройте Настройки — SSO.
- В блоке Тип протокола авторизации выберите OIDC.
После выбора вы увидите сгенерированный Redirect URL вида: https://yourworkspace.neuro42.app/rest/sso/oidc/callback
Этот URL нужно будет указать в вашем IdP.
2. Если вы запускаете Нейро42 за балансировщиком
Для корректной работы редиректов убедитесь, что установлена переменная окружения: N42_EDITOR_BASE_URL НУЖНЫ ПРИМЕРЫ
3. Настройка OIDC на стороне Identity Provider (IdP)
В вашем IdP вам нужно:
-
- Создать новое OIDC-приложение / OIDC Client.
- Указать Redirect URL, который вы скопировали из Нейро42.
- Получить Client ID и Client Secret.
- Найти адрес Discovery Endpoint (well-known). Обычно он выглядит так: https://your-idp.com/.well-known/openid-configuration
4. Завершение настройки в Нейро42
В разделе OIDC заполните поля:
-
- Discovery Endpoint — URL из IdP.
- Client ID — идентификатор клиента.
- Client Secret — секрет клиента.
Сохраните настройки и переключите статус OIDC в Активировано.
Настройки для популярных IdP
Auth0
1. Создайте приложение в Auth0:
-
- Войдите в свою панель управления Auth0.
- Перейдите в раздел Приложения > Приложения».
- Нажмите Создать приложение.
- Введите название (например, SSO Нейро42) и выберите Обычные веб-приложения.
- Нажмите Создать.
2. Настройте приложение:
-
- Перейдите на вкладку Настройки вашего нового приложения.
- Разрешенные URL-адреса обратного вызова: добавьте URL-адрес перенаправления Нейро42 из раздела Настройки > SSO > OIDC.
- Разрешенные веб-источники: добавьте базовый URL-адрес Нейро42 (например, https://yourworkspace.app.n8n.cloud).
- Нажмите Сохранить изменения.
3. Получите свои учетные данные:
-
- Идентификатор клиента: находится на вкладке Настройки.
- Секретный ключ клиента: находится на вкладке Настройки.
- Конечная точка обнаружения: https://{your-auth0-domain}.auth0.com/.well-known/openid-configuration.
4. В Нейро42 завершите настройку OIDC:
-
- Конечная точка обнаружения: введите URL конечной точки обнаружения из Auth0.
- Идентификатор клиента: введите идентификатор клиента, который вы нашли в настройках Auth0.
- Секретный ключ клиента: введите секретный ключ клиента, который вы нашли в настройках Auth0.
- Выберите Сохранить настройки».
- Установите OIDC в положение Активировано.
Примеры Discovery Endpoint для других поставщиков
Google — https://accounts.google.com/.well-known/openid-configuration
Azure AD — https://login.microsoftonline.com/{tenant-id}/v2.0/.well-known/openid-configuration
Okta — https://{your-domain}.okta.com/.well-known/openid-configuration
Amazon Cognito — https://cognito-idp.{region}.amazonaws.com/{user-pool-id}/.well-known/openid-configuratio
Технические особенности и ограничения (Troubleshooting)
Проблема: OIDC-провайдер требует параметр state
Некоторые провайдеры используют обязательный CSRF-токен state.
Если ваш IdP его принудительно добавляет, вы можете получить ошибку: {«code»:0,»message»:»authorization response from the server is an error»}
Текущая версия Neйro42 пока не обрабатывает параметр state.
Временное решение — отключить обязательный state в настройках IdP.
Полная поддержка параметра будет добавлена в будущих версиях.
Проблема: провайдер требует PKCE
Если ваш IdP настроен на обязательную PKCE-валидацию, запросы от Нейро42 могут отклоняться.
Текущая реализация OIDC не поддерживает PKCE.
Временное решение — отключить обязательное PKCE для OIDC-клиента, созданного под Нейро42.
Поддержка PKCE также запланирована.