Пользовательские заголовки в общедоступном запросе JWK для Spring Security OpenID Connect

Я использую OAM Oracle в качестве поставщика аутентификации. Наша настройка требует, чтобы запрос к общедоступной конечной точке JWK (той, которую вы установили с помощью .jwkSetUri()), имел собственный заголовок:

x-oauth-identity-domain-name: AppSpecificDomainName

До сих пор мне не удалось найти правильную конфигурацию параметров в среде Spring Security OpenID Connect.

Я использую Spring Security 5.8.4.

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

Затем я изменил

      protected <T> T doExecute(URI url, @Nullable HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor);

метод и добавлен код внедрения заголовка:

          ...
    ClientHttpRequest request = createRequest(url, method);

    // Inject custom headers if this is a security-related outbound call
    if (url.toString().startsWith("https://access.mycompany.com")) {
        request.getHeaders().add("x-oauth-identity-domain-name", "AppSpecificDomainName");
    }
    ...

но очевидно, что я хочу более чистое решение. Так как этот вряд ли ремонтопригоден.

0 ответов

Другие вопросы по тегам