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

Is it possible to use prompt=select_account for yandex? #47

Open thdonatello opened 1 day ago

thdonatello commented 1 day ago

Привет! Подскажите, как можно заставить провайдера спрашивать yandex аккаунт? Поймал типичную проблему, что имея более одного аккаунта (войдя, например, в личный и рабочий), провайдер автоматически авторизует под одним из них и никогда не предлагает выбора. Единственный вариант - выйти из Я-аккаунтов.

thdonatello commented 1 day ago

Поизучал немного проблему. В настройках google провайдера имеется специальное поле prompt, позволяющее задать этот параметр. Так же параметр Hosted Domain, передающий hd=<domain> в yandex провайдере этого не делает.

paragor commented 6 hours ago

Тоже столкнулся с проблемой, что у пользователя может быть несколько аккаунтов. Яндекс говорит, что необходимо использовать login_hint и/или force_confirm: https://yandex.ru/dev/id/doc/ru/codes/code-url#optional

На данный момент я не вижу способа прокинуть эти параметры. Но очень хотелось бы их видеть в конфиге провайдера.

P.S. Hosted Domain - это параметр, который уже на стороне keycloak не дает пройти невалидным доменам https://github.com/playa-ru/keycloak-russian-providers/blob/master/src/main/java/ru/playa/keycloak/modules/yandex/YandexIdentityProvider.java#L86