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

Yandex provider with keycloak:25.0.4-debian-12-r1 #42

Closed thdonatello closed 1 month ago

thdonatello commented 1 month ago

Спасибо за вашу работу! Я не нашел готового jar файла в вашем репо, поэтому извлек его из docker образа playaru/keycloak-russian:24.0.1.2 и поместил в образ keycloak:25.0.4-debian-12-r1. В провайдерах keycloak появился yandex. Я настроил его по инструкции, на странице моего приложения появилась кнопка авторизации yandex, перенаправляющая на passport.yandex.ru, но после успешной авторизауии и перенаправления обратно в kk получаю:

image

в логах kk:

ERROR [org.keycloak.services.error.KeycloakErrorHandler] (executor-thread-364) Uncaught server error: java.lang.NoSuchMethodError: 'void org.keycloak.broker.provider.BrokeredIdentityContext.<init>(java.lang.String)'
at ru.playa.keycloak.modules.yandex.YandexIdentityProvider.extractIdentityFromProfile(YandexIdentityProvider.java:79)
at ru.playa.keycloak.modules.yandex.YandexIdentityProvider.doGetFederatedIdentity(YandexIdentityProvider.java:110)
at org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider.getFederatedIdentity(AbstractOAuth2IdentityProvider.java:314)
at org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider$Endpoint.authResponse(AbstractOAuth2IdentityProvider.java:557)
at org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider$Endpoint$quarkusrestinvoker$authResponse_ab908fbdd086ee82e140d8a818c077362a2d04b4.invoke(Unknown Source)
at org.jboss.resteasy.reactive.server.handlers.InvocationHandler.handle(InvocationHandler.java:29)
at io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:141)
at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
at io.quarkus.vertx.core.runtime.VertxCoreRecorder$14.runWith(VertxCoreRecorder.java:582)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:1583)

Сам keycloak установлен в kubernetes с помощью helm чарта bitnami (keycloak-22.1.3)

Помогите справиться с проблемой.

onotoliy commented 1 month ago

Здравствуйте. Какую версию Keycloak используете 25.0.4? Тогда вам нужна версия провайдера 25.0.2.rsp

thdonatello commented 1 month ago

Да я бы рад, но говорю же, я не нахожу ни jar файла в релизах/nexus-репо, ни docker образа, откуда я бы мог его вытащить. К сожалению самостоятельно его сбилдить я не умею.

onotoliy commented 1 month ago

https://mvnrepository.com/artifact/ru.playa.keycloak/keycloak-russian-providers/25.0.2.rsp