对于Vendasta SSO的OmniAuth策略,这可能吗?

问题描述

我们希望使用OmniAuth for vendasta实施SSO。他们的文档可以在这里找到: https://developers.vendasta.com/vendors/integration/session-transfer

它与普通的OAuth流有些不同,因为看起来我们需要支持两个请求阶段,中间是回调阶段。

此外,我们不允许页面显示“使用vendasta登录”按钮,而是需要知道vendasta中的哪个合作伙伴帐户将用户发送给该帐户。例如,如果有一些vendasta合作伙伴,将其称为“ JeffCo”,则JeffCo的客户将登录到jeffco.vendasta.com合作伙伴门户。

现在,我们希望允许JeffCo的客户使用其唯一的vendasta用户ID登录到我们的应用程序。

因此,假设我们知道用户的电子邮件地址,并且该地址已链接到他们唯一的vendasta用户ID,那么对于登录,我们可以让用户输入他们的电子邮件,我们可以告诉他们拥有一个vendasta帐户(基于其链接vendasta用户ID),然后我们可以根据用户ID查询vendasta的api,以获取用户所属的合作伙伴帐户列表。然后,我们可以再次查询vendasta的api以获取合作伙伴帐户的名称。此时,我们将能够显示“使用JeffCo登录链接,该链接将启动整个SSO流程,并传递vendasta合作伙伴ID。

现在,使用OmniAuth可以实现所有这些功能。我知道它说这是非常可配置的,但这似乎不合常理。

我可以遵循他们的其他任何OmniAuth策略吗?

根据我们拥有的用户ID将合作伙伴查找放在哪里的好地方?我想保留一些vendasta模块以使其可重用。它可以成为该战略的一部分吗?还是其他实用程序类?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)