Spring 5 Google OAuth2 требует URL-адрес перенаправления https, а не httpJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Spring 5 Google OAuth2 требует URL-адрес перенаправления https, а не http

Сообщение Гость »


У меня есть сайт с Apache httpd (порты 80 и 443) и Wildfly 15 (порт 8080). Мой веб-сервер настроен для обработки http и https и настроен для связи с Wildfly с помощью этих команд

ProxyPass / http://myhost.com:8080/ ProxyPassReverse/http://myhost.com:8080/ У меня есть приложение Java 11 Spring 5, развернутое в Wildfly в виде файла WAR. Он настроен на использование Google OAuth, чтобы пользователи могли проходить аутентификацию в моем приложении. Я пытаюсь использовать некоторые API YouTube, для которых требуется специальная «область действия», что означает наличие только https в моем списке «Авторизованные URI перенаправления». Однако мне нужно иметь «http://myhost.com:8080/login/oauth2/code/google» в этом списке прямо сейчас, чтобы пользователи могли успешно войти в систему, что нарушает требования API YouTube. Я понимаю, почему в этом URI есть «http» и «8080», поскольку запрос поступает из моего приложения, развернутого в Wildfly. Но мне нужно изменить его на «https://myhost.com/login/oauth2/code/google».

Как мне это сделать?

Ниже приведены некоторые дополнительные настройки, но их, похоже, недостаточно.

http.cors().and().csrf().disable()// .authorizeRequests()// .antMatchers("/secure/**").authenticated()// .antMatchers("/api/**", "/login/**").permitAll()// для redirectUri .antMatchers("/**").permitAll()// .antMatchers("/logout").permitAll()// .и()// .sessionManagement()// .sessionCreationPolicy(SessionCreationPolicy.ALWAYS) .и()// .userDetailsService(userDetailsManager())// .oauth2Login()// потому что нам нужно авторизовать наших пользователей, а не просто быть веб-клиентом //.oauth2Client()// не это .redirectionEndpoint().baseUri(this.redirectUri)// .и()// .clientRegistrationRepository(this.securityService.getClientRegistrationRepository())// .authorizedClientService(this.securityService.getAuthorizedClientService())// .loginPage(SecurityController.LOGIN_PAGE_MAPPING)// .defaultSuccessUrl(loginSuccessUrl)// //.successHandler(this.loginSuccessHandler)// .failureUrl("/login-failure-page")// application.properties:

spring.security.oauth2.client.registration.google.redirect-uri=https://myhost.com/login/oauth2/code/google Spring.security.oauth2.client.registration.google.redirectUri=https://myhost.com/login/oauth2/code/google Spring.security.oauth2.client.registration.google.preEstablishedRedirectUri=https://myhost.com/login/oauth2/code/google Spring.security.oauth2.client.use-current-uri=false Это также определено для CORS
@Бин общедоступный WebMvcConfigurer corsConfigurer() { вернуть новый WebMvcConfigurer() { @Override public void addCorsMappings( реестр CorsRegistry) { реестр.addMapping("/**")// .allowedOrigins(/*"http://myhost.com:8080",*/ "https://myhost.com", "https://myhost.com:8080")// .allowedMethods("HEAD", "GET", "PUT", "POST", "DELETE", "PATCH"); } }; }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»