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

keycloak-esia-jcp-provider integration #4

Closed hamster1979 closed 2 years ago

hamster1979 commented 4 years ago

Как добавить поддержку в keycloak провайдера ЕСИА - https://mvnrepository.com/artifact/ru.playa.keycloak/keycloak-esia-jcp-provider ?

hrensgory commented 4 years ago

Этот провайдер требует работ по документированию, так как использует шифрование по ГОСТ и просто так его не поставить. Мы попробуем выложить его с соответствующими инструкциями в ближайшее время.

mrka3 commented 4 years ago

Здравствуйте, добавил авторизацию в keycloak с помощью keycloak-esia-jcp-provider. Всё поднял, сертификат есть, гостом подписывает, в есиа авторизует. После авторизации вылетает exception: ERROR [org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider] (default task-1) Failed to make identity provider oauth callback: java.lang.NullPointerException at org.keycloak.keycloak-model-jpa@10.0.0//org.keycloak.models.jpa.JpaUserProvider.addFederatedIdentity(JpaUserProvider.java:166) at org.keycloak.keycloak-services@10.0.0//org.keycloak.storage.UserStorageManager.addFederatedIdentity(UserStorageManager.java:205) at org.keycloak.keycloak-model-infinispan@10.0.0//org.keycloak.models.cache.infinispan.UserCacheSession.addFederatedIdentity(UserCacheSession.java:823) at org.keycloak.keycloak-services@10.0.0//org.keycloak.services.resources.IdentityBrokerService.performAccountLinking(IdentityBrokerService.java:954) at org.keycloak.keycloak-services@10.0.0//org.keycloak.services.resources.IdentityBrokerService.authenticated(IdentityBrokerService.java:553) at deployment.keycloak-esia-jcp-provider-1.0.11.jar//ru.playa.keycloak.modules.esia.EsiaIdentityProvider$Endpoint.authResponse(EsiaIdentityProvider.java:335)

Не подскажите?

nigredo-tori commented 4 years ago

Не стал создавать отдельный issue... В maven появился keycloak-esia-bc-provider - выложите, пожалуйста, его тоже если можно.

Если здесь препятствием становится написание документации - может, сделать feature-ветку с кодом для этих провайдеров, и писать в ней документацию силами сообщества? Судя по размеру библиотеки, разобраться в работе кода для людей знакомых с BC/JCP должно быть не слишком сложно. Когда документация достигнет приемлемого уровня - слить ветку в master.

nigredo-tori commented 4 years ago

@hrensgory, посмотрел на вашем Nexus, и увидел что доступны исходные коды для обоих провайдеров. Т.е. уже можно с ними разбираться. Остался вопрос лицензии: можно ли считать что эти провайдеры доступны по Apache-2.0 License, аналогично провайдерам в данном проекте? В самих артефактах этого не нашёл.

yurinaN commented 4 years ago

Этот провайдер требует работ по документированию, так как использует шифрование по ГОСТ и просто так его не поставить. Мы попробуем выложить его с соответствующими инструкциями в ближайшее время.

Добрый день! Планируется ли в ближайшее время публикация документации?

При настройке провайдера столкнулась со следующей ошибкой: 08:04:59,493 ERROR [org.keycloak.services.resources.IdentityBrokerService] (default task-2) identityProviderUnexpectedErrorMessage: java.lang.NullPointerException: Cannot invoke "String.toLowerCase()" because the return value of "org.keycloak.models.FederatedIdentityModel.getUserName()" is null

@hrensgory, как возможно её исправить?

onotoliy commented 2 years ago

Добрый день. Мы пока не распространяем этот провайдер (keycloak-esia-jcp-provider) как open source решение, его можно, конечно, физически скачать с нашего мавен репозитория, но это не значит что вы можете свободно его использовать. Если нужна консультация - напишите нам на корпоративную почту.

lipunis commented 2 months ago

ache-2.0 License, аналогично провайдерам в данном проекте? В самих артефактах этого не нашёл.

какой адрес корпоративной почты?

nigredo-tori commented 2 months ago

какой адрес корпоративной почты?

Оперативно вы, я там уже 3 года не работаю. 😄

@vegansk, ping на случай если ещё актуально.

hrensgory commented 2 months ago

ache-2.0 License, аналогично провайдерам в данном проекте? В самих артефактах этого не нашёл.

какой адрес корпоративной почты?

Если вы про нашу почту - то info@playa.ru