2015-11-03 74 views
2

我试图构建一个新的丰富的应用程序,并且在设计身份验证过程时遇到了一些问题。使用ADFS和Angular.js进行API身份验证

我只有两个要求:

  1. 的API需要可供
  2. 的ADFS需要被用来认证

我的第一个想法是建立在API和使用Angular.js作为前端。但是,我看不出身份验证应该如何工作。

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

API通常通过OAuth2进行保护。我们使用客户端ID和客户端密钥来生成令牌。但是我不能在ADFS中产生这种行为。

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

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

非常感谢!

回答

1

我假设'ADFS需要用于身份验证'的意思是'用户应该能够使用他们的Active Directory域凭据进行身份验证'。

如果是这样,你应该看看Thinktecture IdentityServer。这是一个OAuth2授权服务器,您可以使用use with a Active Directory身份提供程序。

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

相关问题