Конфигурация сервиса
Backend может быть confidential client и хранить секрет в защищённом хранилище. Выбор grant и метода аутентификации зависит от модели угроз.
service config · dotenv
# Пример параметров приложения, не переменные RustCloak
OIDC_ISSUER=https://id.example.org/realms/master
OIDC_CLIENT_ID=my-backend
OIDC_REDIRECT_URI=https://service.example.org/callbackВалидация токенов
OIDC middleware получает metadata и JWKS по HTTPS, ограничивает допустимые алгоритмы и проверяет iss, aud, подпись, временные ограничения и права. При ротации ключей учитывайте kid и обновление JWKS.
Защита границы realm
Доверять имени realm из пользовательского URL без серверной проверки нельзя. Выберите ожидаемый issuer из серверной конфигурации, затем валидируйте токен.
Тестовый чек-лист
- Неверный issuer/audience и подпись отвергаются.
- Неизвестный
kidне проходит как доверенный. - Scopes сопоставляются серверными политиками.
- Токен другого realm не даёт доступ к ресурсам.