Nginx 错误org.keydape.adapters.OAuthRequestAuthenticator-无法将代码转换为令牌
我们的应用程序Nginx和keybeave存在问题。共有3个实例:实例1应用程序、实例2 NGINX(反向代理)和实例3密钥斗篷 当用户登录时,他在keydove中创建会话,但当他返回到SiAe应用程序时,他返回403。 我们进入keydove管理控制台,看到会话成功并已打开。但返回到应用程序是不可能的 日志 Nginx: 应用程序: 钥匙斗篷:Nginx 错误org.keydape.adapters.OAuthRequestAuthenticator-无法将代码转换为令牌,nginx,single-sign-on,keycloak,http-status-code-403,Nginx,Single Sign On,Keycloak,Http Status Code 403,我们的应用程序Nginx和keybeave存在问题。共有3个实例:实例1应用程序、实例2 NGINX(反向代理)和实例3密钥斗篷 当用户登录时,他在keydove中创建会话,但当他返回到SiAe应用程序时,他返回403。 我们进入keydove管理控制台,看到会话成功并已打开。但返回到应用程序是不可能的 日志 Nginx: 应用程序: 钥匙斗篷: **INFO**[org.keydapore.storage.ldap.LDAPIdentityStoreRegistry](默认任务-1)为ldap
**INFO**[org.keydapore.storage.ldap.LDAPIdentityStoreRegistry](默认任务-1)为ldap存储提供程序创建新的ldap存储:'ldap_pre',ldap配置:{pagination=[true],fullSyncPeriod=[-1],usersDn=[ou=usuarios,dc=domain,dc=es],connectionPooling=[true],cachePolicy=[default],useKerberosForPasswordAuthentication=[false],importEnabled=[true],enabled=[true],changedSyncPeriod=[86400],bindDn=[cn=admin,dc=domain,dc=es],usernameldapatribute=[uid],lastSync=[1575269470],vendor=[other],uuiddapattribute=[entryUUID],connectionUrl=[ldap://MIIP:389],allowkerberbersauthentication=[false],syncRegistrations=[false],authType=[simple],debug=[false],searchScope=[1],useTruststoreSpi=[ldapsOnly],priority=[0],UserObjectClass=[inetOrgPerson,organizationalPerson,person],rdnLDAPAttribute=[cn],editMode=[WRITABLE],validatePasswordPolicy=[false],batchSizeForSync=[1000]},binaryAttributes:[]
配置:
Nginx:
钥匙斗篷:
有人能帮我们吗?错误
连接重置
意味着应用程序无法向Keyclope服务器发出请求。由于将auth server url
设置为https://domainkeycloak/
错误连接重置
意味着应用程序无法向KeyClope服务器发出请求。由于将auth server url
设置为https://domainkeycloak/
解决方案是将keydove与其他Nginx分开,而不是将一个Nginx用于APP和keydove。现在,我们有两个Nginx,并在我们的应用程序中运行OK keydove。解决方案是将keydove与其他Nginx分开,而不是将一个Nginx用于应用程序和keydove。现在,我们有2个Nginx,并在我们的应用程序中运行OK Keyclope。您的应用程序中的异常是否提供了更长的stracktrace(例如,更多信息,可能是由引起的)-当应用程序尝试连接到Keyclope以使用访问令牌交换临时密钥时,似乎出现了问题。不,它没有。结束如下:。。。。。在java.lang.Thread.run(Thread.java:745)2019-12-23 14:29:24811 localhost-startStop-2 error您的应用程序中的异常是否提供了更长的stracktrace(例如,更多信息,由
引起的)-当应用程序试图连接到Keyclope以使用访问令牌交换临时密钥时,似乎存在问题不存在。结束如下:。。。。。在java.lang.Thread.run(Thread.java:745)2019-12-23 14:29:24811 localhost-startStop-2 ERRORHello!,感谢您的回复,但配置身份验证服务器url是正常的:“身份验证服务器url”:https://midomain.com/auth“
我们有相同的本地配置,运行正常,但AWS上的此配置不运行。您好!,感谢您的回复,但配置身份验证服务器url是正常的:“身份验证服务器url”:https://midomain.com/auth“
我们有相同的本地配置,运行正常,但AWS上的此配置不运行。
"GET /opensat/?state=dcc1c40f-3183-4c7b-8342-f7df620cf0b3&session_state=605ba79a-ee05-4918-a96d-71466e31210a&code=fe066a17-a97a-495c-94f9-b1e5e3d6ac1f.605ba79a-ee05-4918-a96d-71466e31210a.f91920a4-3267-4de5-9788-24093a32c217 HTTP/1.1" **403 405** "https://mydomain/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:71.0) Gecko/20100101 Firefox/71.0"
ERROR org.keycloak.adapters.OAuthRequestAuthenticator - failed to turn code into token
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:196)
at java.net.SocketInputStream.read(SocketInputStream.java:122)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:442)
at sun.security.ssl.InputRecord.read(InputRecord.java:480)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:934)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1332)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1359)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1343)
at org.apache.http.conn.ssl.SSLSocketFactory.createLayeredSocket(SSLSocketFactory.java:573)
at org.keycloak.adapters.SniSSLSocketFactory.createLayeredSocket(SniSSLSocketFactory.java:114)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:557)
at org.keycloak.adapters.SniSSLSocketFactory.connectSocket(SniSSLSocketFactory.java:109)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:414)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180)
location / {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://IP_KEYCLOAK:8081;
}
....
<server name="default-server">
<http-listener name="default" socket-binding="http" redirect-socket="proxyhttps" proxy-address-forwarding="true" enable-http2="true"/>
......
<socket-binding name="proxy-https" port="443"/>
.....
{
"realm": "domain",
"auth-server-url": "https://domainkeycloak/",
"ssl-required": "none",
"resource": "sso",
"enable-cors" : true,
"credentials": {
"secret": "98236f9a-c8b1-488c-8b36-ace4f95b1aa6"
},
"confidential-port": 0,
"disable-trust-manager":true,
"allow-any-hostname" : true
}