Отсутствует Id_Token Spring Oauth2 Auth Server и mod_auth_openidc - PullRequest
0 голосов
/ 07 января 2019

Я пытаюсь заставить сервер авторизации безопасности Spring работать на ресурсах, защищенных за Apache2 с mod_open_idc. Когда я получаю доступ к своему ресурсу, он перенаправляет меня на страницу входа, но после входа в систему я перенаправляюсь на страницу с сообщением об ошибке при обработке типа ответа. Если я смотрю в журнале ошибок Apache, он говорит oidc_proto_validate_code_response: requested flow is "code" but no "id_token" parameter found in the code response. URL возвращается с /redirect_uri?code=f0I4GB&state=DdA1Udo1lllEeed3V8LppkOtxPg в конце. Вот соответствующие части моей конфигурации Apache

OIDCProviderIssuer https://URL:9999/uaa/oauth
OIDCProviderAuthorizationEndpoint https://URL:9999/uaa/oauth/authorize
OIDCProviderJwksUri https://URL:9999/uaa/oauth/token_key
OIDCProviderTokenEndpoint https://URL:9999/uaa/oauth/token
OIDCProviderUserInfoEndpoint https://URL:9999/uaa/user
OIDCScope "openid"

OIDCClientID revproxy
OIDCClientSecret revsecret
OIDCSSLValidateServer Off
OIDCCryptoPassphrase MyPassword
OIDCRedirectURI https://URL/home/redirect_uri

<Location "/home">
     AuthType openid-connect
     Require valid-user
     ProxyPass  https://URL:8443/
     ProxyPassReverse  https://URL:8443/
  </Location>

Я также рад опубликовать любой весенний код, я просто не знаю, какие части могут быть предметом спора. Я также понятия не имею, какую часть я настроил неправильно, моя интуиция говорит mod_auth_openidc, но это может быть весна.

1 Ответ

0 голосов
/ 07 января 2019

Кажется, что Spring настроен не для OpenID Connect, а только для OAuth 2.0. Для клиентов OpenID Connect, использующих область действия openid, поставщик должен возвращать id_token. Очевидно, Spring неправильно настроен или, возможно, не поддерживает OpenID Connect.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...