使用ADFS和Angular.js进行API身份验证

时间:2015-11-03 20:55:44

标签: angularjs api rest authentication adfs

我试图构建一个新的丰富应用程序,但我在设计身份验证过程时遇到了一些问题。

我只有两个要求:

  1. 需要提供API
  2. ADFS需要用于身份验证
  3. 我的第一个想法是构建API并使用Angular.js作为前端。但是,我无法看到身份验证应该如何运作。

    我的API需要通过脚本提供。据我所见,ADFS身份验证始终显示身份验证过程的网页。

    API通常使用OAuth2保护。我们使用客户端ID和客户端密钥来生成令牌。但是我无法通过ADFS获得此行为。

    我看到的唯一解决方案是为我的应用程序提供两种身份验证行为。一个具有用于Web访问和Web界面的ADFS,增加了生成客户端ID和与用户帐户相关联的客户端密钥的可能性,该用户帐户可用于无头认证的API。

    有人已经遇到过这种情况吗?

    非常感谢!

1 个答案:

答案 0 :(得分:1)

我认为'ADFS需要用于身份验证'实际上意味着'用户应该能够使用他们的Active Directory域凭据进行身份验证'。

如果是这种情况,你应该看一下Thinktecture IdentityServer。这是一个OAuth2授权服务器,您可以use with a Active Directory身份提供商。

P.S。 Windows 2012R2附带的ADFS 3.0仅支持授权代码授权,该授权不适用于JavaScript应用程序。