我在Keycloak中看到一个奇怪的情况:
关于为什么发生这种情况的任何想法? Keycloak版本5.0.0。
发生这种情况时报告的堆栈跟踪为:
keycloak_1 | 2019-05-07 20:57:06,598 ERROR [org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider] [cid: 9d4851670ce44e17a39a8910c2a3f24d] (default task-13) Failed to make identity provider oauth callback: java.lang.IllegalStateException: Not found in database
keycloak_1 | at org.keycloak.models.cache.infinispan.UserAdapter.getDelegateForUpdate(UserAdapter.java:67)
keycloak_1 | at org.keycloak.models.cache.infinispan.UserAdapter.setSingleAttribute(UserAdapter.java:136)
keycloak_1 | at org.keycloak.broker.provider.HardcodedAttributeMapper.updateBrokeredUser(HardcodedAttributeMapper.java:97)
keycloak_1 | at org.keycloak.services.resources.IdentityBrokerService.updateFederatedIdentity(IdentityBrokerService.java:968)
keycloak_1 | at org.keycloak.services.resources.IdentityBrokerService.authenticated(IdentityBrokerService.java:578)
keycloak_1 | at org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider$Endpoint.authResponse(AbstractOAuth2IdentityProvider.java:432)
答案 0 :(得分:0)
我们将此问题追溯到Keycloak与我们的MySQL实例之间的网络延迟问题。启动Keycloak时,我们观察到数据库连接问题和Liquibase模式生成。
关于我们为什么看到此特定问题的理论:
/endpoint
端点。/endpoint
端点。Duplicate user
)而失败,因为已经插入了用户。这将导致重定向到first-browser-login
页面,该页面显示“帐户已存在”对话框。