【问题标题】:ADFS + ThinkTecture IdentityServer v2 for Web API'sADFS + ThinkTecture IdentityServer v2 for Web API's
【发布时间】:2015-08-16 15:58:07
【问题描述】:

在我们的组织内,我们的应用程序作为 RP 注册到我们的组织 ADFS 服务器,即 v2。传统上,组织中的应用程序已使用 WS-Federation(被动身份验证)构建为单一的单体应用程序。 Web API 也托管在每个应用程序中,仅通过在浏览器中从应用程序的客户端代码进行 ajax 调用时通过网络发送相同的 FedAuth cookie 来确保安全。

我们正朝着构建一组后端 Web API 的方向前进,我们希望对其进行保护,以便任何客户端都可以调用这些 API,而不仅仅是 Web 浏览器,而不仅仅是托管应用程序本身。因此,我们希望将 JWT 令牌用于这些 Web API。我们还开始使用 ThinkTecture 的 IdentityServer (v2) 在这方面提供帮助。

我们只有几个问题,希望社区可以帮助为我们提供一些答案/建议:

  1. 我们应该如何配置 IdentityServer 和应用程序,以便应用程序使用 现有的组织 ADFS 登录页面?
  2. 我们如何配置/集成 ThinkTecture IdentityServer v2 组织 ADFS,以便我们的 API 可以使用 JWT 保护 令牌,但不强制用户提供他们的凭据 再次(一旦他们通过 WS-Federation 获得 SAML 令牌)?
  3. IdentityServer v3 中是否有任何引人注目的功能 足以从 IdentityServer v2 升级到 v3?

【问题讨论】:

    标签: security asp.net-web-api adfs jwt thinktecture


    【解决方案1】:

    1 & 2 - 您可能想了解如何建立信赖方。这是来自 BrockAllen(IdentityServer 背后的天才)的整篇文章,它将引导您完成 ADFS/IdentityServer2 集成。

    http://brockallen.com/2013/04/14/getting-json-web-tokens-jwts-from-adfs-via-thinktecture-identityservers-adfs-integration/

    3 - 据我所知,IdentityServer3 (IS3) 是为了支持更新的授权框架 OpenID,用于现代堆栈,而不是 IS2(不支持 OpenID)。两者都可以使用。我个人是从 IS3 开始的,主要是因为所涉及的支持和文档。它还与 OWIN/Katana 很好地集成,因此它可以很好地自我托管,在实施和部署期间不会出现任何问题。 IS2 相对于 IS3 的一个优势是 IS2 有一个管理 UI,您可以使用它来配置和注册站点,而 IS3 没有。有关这方面的更多信息以及 IS3 背后的思考过程,请参见此处:

    http://leastprivilege.com/2015/01/25/identityserver3-1-0-0/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-04
      • 2014-02-01
      • 2014-08-01
      • 2014-09-25
      • 2014-02-21
      • 1970-01-01
      • 2015-05-02
      • 1970-01-01
      相关资源
      最近更新 更多