我是Security的新手,我正在尝试用谷歌登录开发Spring应用程序,使用的是OAuth2,它的主机名是:8080。这个应用程序在Apache反向代理服务器https://url.com后面。
Spring版本2.1.0
Spring安全版本5.1.1
build.gradle:
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.security:spring-security-oauth2-client")
implementation("org.springframework.security:spring-security-oauth2-jose")
}application.yml:
oauth2:
client:
registration:
google:
clientId: <clientId>
clientSecret: <clientSecret>
scope: profile, email, openid
server:
use-forward-headers: true
servlet:
session:
cookie:
http-only: falseSpring安全配置:
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf()
.disable()
.authorizeRequests()
.anyRequest()
.authenticated()
.and()
.oauth2Login();
}
}invalid_token_response在试图检索OAuth 2.0访问令牌响应时发生了错误:针对“https://www.googleapis.com/oauth2/v4/token”的POST请求出现I/O错误:连接超时(连接超时);嵌套异常为java.net.ConnectException:连接超时(连接超时)
此错误是由代理服务器设置或引导应用程序引起的吗?谢谢你帮忙。
发布于 2018-12-12 06:40:44
解决了。我必须设置JVM参数:
https.proxyHost=[host]
https.proxyPort=[port]
http.proxyHost=[host]
http.proxyPort=[port]https://stackoverflow.com/questions/53536904
复制相似问题