Есть ли способ сопоставить один маршрут обратного вызова с несколькими стратегиями, используя Omniauth? - PullRequest
0 голосов
/ 29 мая 2018

Я портирую существующее приложение SAML для использования Rails.Текущая реализация использует одну конечную точку обратного вызова и различает несколько вызывающих абонентов через тег SAML эмитента.

В этом новом приложении я хотел бы использовать одну конечную точку обратного вызова, /saml, для обратной совместимости, но динамически выбирать стратегию OmniAuth.Это позволило бы мне выбрать разные idp_cert и attribute_statements в зависимости от вызывающего пользователя.

Возможно ли это сделать или есть другой (лучший) способ решения этой проблемы?

1 Ответ

0 голосов
/ 29 мая 2018

Вот решение.Конфигурацию провайдера можно настроить динамически, до фазы запроса или обратного вызова, согласно вики OmniAuth: https://github.com/omniauth/omniauth/wiki/Setup-Phase

...