使用ADFS作为标识提供程序呈现OAuth2令牌端点

时间:2015-02-17 15:06:10

标签: asp.net-web-api oauth-2.0 thinktecture-ident-server

我想设置一个身份服务器来集中多个后端API(主要是ASP.NET Web API)和多个客户端(Web SPA,Xamarin Mobile和WPF PC-client)的身份验证。我最好希望为客户端提供一个OAuth2令牌端点,他们可以在其中发送用户凭据,以及client_id和client_secret(加上领域等)并获取一个令牌(和刷新口令)以用作承载令牌与HTTP API交谈。

有点棘手的部分是我希望身份服务器使用ADFS来验证用户Active Directory帐户的身份。

我看过Thinktecture IdentityServer v3,但我似乎无法找到一种方法来允许只使用HTTP post到令牌端点的工作流程。它似乎对我有用的方法是将用户重定向到授权端点,这需要在非Web客户端中使用webview。有没有办法在不需要webview的情况下实现这一点,只需使用HTTP API?

我们将非常感谢您对此示例的任何链接或其他可能的解决方案。

1 个答案:

答案 0 :(得分:0)

在GitHub上的Thinktecture IdentityServer3问题跟踪器中,我找到了其中一位创作者Dominick Baier的回答:

  

我们仅通过浏览器登录支持ADFS作为身份提供商   窗口。那是你要的吗?或者您正在寻找程序化的   验证用户的方法?

     

如果是的话 - 我们不再支持开箱即用 - 但可以   使用自定义授权实现。样本repo有一个基本的例子   自定义拨款实施。

https://github.com/IdentityServer/Thinktecture.IdentityServer3/issues/618

那回答了我的问题。使用IdentityServer v3开箱即用,无法以编程方式对ADFS进行身份验证。