playa-ru / keycloak-russian-providers

Popular russian mail (Yandex, Mail.ru) and social networks (VK, OK) identity providers for Keycloak Identity and Access Management server.
Apache License 2.0
142 stars 35 forks source link

Ошибка при попытке логина через VK #34

Closed vzhurin closed 7 months ago

vzhurin commented 7 months ago

Версия Keycloak: 24.0.1 keycloak-russian-providers устанавливал путем копирования готового jar файла в /providers После того, как VK редиректит обратно в Keycloak в браузере отображается ошибка, см. скриншот. В логах контейнера появляется такая ошибка:

2024-03-22 18:33:25 2024-03-22 15:33:25,650 ERROR [org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-31) Uncaught server error: java.lang.NoClassDefFoundError: javax/ws/rs/WebApplicationException
2024-03-22 18:33:25     at ru.playa.keycloak.modules.AbstractRussianOAuth2IdentityProvider.callback(AbstractRussianOAuth2IdentityProvider.java:44)
2024-03-22 18:33:25     at org.keycloak.services.resources.IdentityBrokerService.getEndpoint(IdentityBrokerService.java:422)
2024-03-22 18:33:25     at org.keycloak.services.resources.IdentityBrokerService$quarkusrestinvoker$getEndpoint_106b3afe16881212afc5cdb68385f5f8615e233e.invoke(Unknown Source)
2024-03-22 18:33:25     at org.jboss.resteasy.reactive.server.handlers.InvocationHandler.handle(InvocationHandler.java:29)
2024-03-22 18:33:25     at io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:141)
2024-03-22 18:33:25     at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
2024-03-22 18:33:25     at io.quarkus.vertx.core.runtime.VertxCoreRecorder$14.runWith(VertxCoreRecorder.java:582)
2024-03-22 18:33:25     at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
2024-03-22 18:33:25     at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
2024-03-22 18:33:25     at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
2024-03-22 18:33:25     at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
2024-03-22 18:33:25     at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
2024-03-22 18:33:25     at java.base/java.lang.Thread.run(Thread.java:840)
2024-03-22 18:33:25 Caused by: java.lang.ClassNotFoundException: javax.ws.rs.WebApplicationException
2024-03-22 18:33:25     at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
2024-03-22 18:33:25     at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
2024-03-22 18:33:25     at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
2024-03-22 18:33:25     at io.quarkus.bootstrap.runner.RunnerClassLoader.loadClass(RunnerClassLoader.java:115)
2024-03-22 18:33:25     at io.quarkus.bootstrap.runner.RunnerClassLoader.loadClass(RunnerClassLoader.java:65)
2024-03-22 18:33:25     ... 13 more

Screenshot from 2024-03-22 18-48-37

onotoliy commented 7 months ago

Добрый день. Какую версию провайдера используете?

vzhurin commented 7 months ago

Добрый день! Я брал последнюю доступную тут nexus.playa.ru, это версия 1.0.28. Кажется, я понимаю в чем дело, я взял старую версию. А где можно взять свежий jar файл?

hrensgory commented 7 months ago

Добрый день! Я брал последнюю доступную тут nexus.playa.ru, это версия 1.0.28. Кажется, я понимаю в чем дело, я взял старую версию. А где можно взять свежий jar файл?

Добрый день. В Maven Central https://repo1.maven.org/maven2/ru/playa/keycloak/keycloak-russian-providers/24.0.1.rsp/

vzhurin commented 7 months ago

Спасибо!

vzhurin commented 7 months ago

Установил свежую версию провайдера, настроил все, как рекомендуется в инструкции, теперь возникает такая ошибка после редиректа из VK обратно в keycloak:

2024-03-25 13:34:50 2024-03-25 10:34:50,277 ERROR [org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider] (executor-thread-13) Failed to make identity provider oauth callback: java.lang.NullPointerException: Cannot invoke "com.fasterxml.jackson.databind.JsonNode.asText()" because the return value of "com.fasterxml.jackson.databind.JsonNode.get(String)" is null
2024-03-25 13:34:50     at ru.playa.keycloak.modules.JsonUtils.asText(JsonUtils.java:36)
2024-03-25 13:34:50     at ru.playa.keycloak.modules.AbstractVKOAuth2IdentityProvider.getFederatedIdentity(AbstractVKOAuth2IdentityProvider.java:139)
2024-03-25 13:34:50     at ru.playa.keycloak.modules.AbstractRussianOAuth2IdentityProvider$AbstractRussianEndpoint.authResponse(AbstractRussianOAuth2IdentityProvider.java:139)
2024-03-25 13:34:50     at org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider$Endpoint$quarkusrestinvoker$authResponse_fef2d69ce31937f365a37fb3083f9247bc4c56d2.invoke(Unknown Source)
2024-03-25 13:34:50     at org.jboss.resteasy.reactive.server.handlers.InvocationHandler.handle(InvocationHandler.java:29)
2024-03-25 13:34:50     at io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:141)
2024-03-25 13:34:50     at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
2024-03-25 13:34:50     at io.quarkus.vertx.core.runtime.VertxCoreRecorder$14.runWith(VertxCoreRecorder.java:582)
2024-03-25 13:34:50     at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
2024-03-25 13:34:50     at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
2024-03-25 13:34:50     at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
2024-03-25 13:34:50     at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
2024-03-25 13:34:50     at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
2024-03-25 13:34:50     at java.base/java.lang.Thread.run(Thread.java:840)

Screenshot from 2024-03-25 13-44-03

onotoliy commented 7 months ago

Поправил NPE - https://repo1.maven.org/maven2/ru/playa/keycloak/keycloak-russian-providers/24.0.1.rsp-1/

vzhurin commented 7 months ago

Заработало, спасибо!