首页 > 解决方案 > 具有外部身份提供者的身份服务器资源所有者流

问题描述

我们有一个项目,客户要求使用他们自己的身份提供者,在这种情况下,它是 SalesForce。

我们使用 IdentityServer 3 保护应用程序,并为该客户端(基于参数)配置了它将使用 SalesForce 作为 IDP。

对于 Web 应用程序,没问题,Identity Server 重定向到 Sales Force 登录页面,一切正常。

现在我们要构建一个移动应用程序,客户希望避免使用 Web 登录页面,而希望在应用程序中构建一个漂亮的登录表单。这意味着我们将不得不使用资源所有者流程。

现在,用户的信誉在 SalesForce 方面,那么它是如何工作的,这在 IdentityServer 3 中是否可能?

我看到了两种可能性,但我都不喜欢它们:

  1. 将身份验证调用发送到 IdentityServer,它应该检测到由 SalesForce 来验证用户并将请求转发到那里。
    我认为这不好,因为我宁愿避免让我的 IdentityServer 处理他甚至不应该知道的凭据

  2. 向 SalesForce 发送第一个身份验证调用以获取一些“id 令牌”,然后允许我向 IdentityServer 发送另一个身份验证调用,然后身份服务器将识别“id 令牌”并释放访问令牌。
    这似乎有点牵强,并迫使应用程序知道有一个与它无关的 IDP。

任何想法?

标签: identityserver3idp

解决方案


推荐阅读