Интеграция VoxKey
VoxKey -- стандартный OIDC-провайдер. Любая библиотека или фреймворк с поддержкой OpenID Connect может интегрироваться с ним.
OIDC Discovery
Каждый realm предоставляет discovery-эндпоинт:
GET /oauth2/{realmUUID}/.well-known/openid-configuration
Возвращает все эндпоинты, поддерживаемые grant types и алгоритмы подписи. Большинство OIDC-клиентов могут автоматически настроиться по этому URL.
Основные эндпоинты
| Эндпоинт | Путь | Описание |
|---|---|---|
| Авторизация | POST /oauth2/{realmUUID}/code | Запуск потока входа |
| Токен | POST /oauth2/{realmUUID}/token | Обмен кода на токены |
| UserInfo | GET /oauth2/{realmUUID}/userinfo | Информация о пользователе |
| JWKS | GET /oauth2/{realmUUID}/oidc/jwks | Публичные ключи для проверки JWT |
| Интроспекция | POST /oauth2/{realmUUID}/introspect | Проверка валидности токена (RFC 7662) |
| Отзыв | POST /oauth2/{realmUUID}/revoke | Отзыв токенов (RFC 7009) |
Порядок интеграции
- Зарегистрируйте приложение в админ-панели (Traditional Web, SPA или M2M)
- Настройте OIDC-клиент с discovery URL и креденшелами приложения
- Перенаправляйте пользователей на эндпоинт авторизации для входа
- Обменяйте authorization code на токены на эндпоинте токенов
- Валидируйте токены в API через JWKS или интроспекцию
Grant types
| Grant | Сценарий | Тип клиента |
|---|---|---|
| Authorization Code + PKCE | Вход пользователя из SPA | Публичный |
| Authorization Code | Вход пользователя из серверного приложения | Конфиденциальный |
| Client Credentials | M2M / бэкенд-сервисы | Конфиденциальный |
| Refresh Token | Обновление истекших access-токенов | Оба |
Resource indicators
Для получения токенов, привязанных к конкретному API, передайте параметр resource в запросе токена:
curl -X POST https://your-domain.com/oauth2/{realmUUID}/token \
-d grant_type=authorization_code \
-d code=AUTH_CODE \
-d resource=https://api.example.com
Значение resource должно совпадать с indicator API Resource, настроенного в realm.
Что дальше
- Защита API -- валидация токенов в бэкенде
- Быстрый старт -- полное руководство по настройке