与ADF一起登录



我正在寻找基于javaScript(没有服务器旁语言)的应用程序的单个登录。

要求:

  1. 代理登录到Windows(用户集成到Active Directory)
  2. 打开我的网页
  3. 基于谁登录Windows,我的应用程序将用于广告并拉一些用户指定数据(例如电子邮件,电话)

我该怎么做?

根据我的理解,我将需要ADF。所以:

  1. 用户转到我的网页

  2. 我的网页调用一些Web服务或Web应用程序(在C#上构建)

  3. 将对AD FS进行身份验证并获得索赔

  4. 获取索赔中的电话号码和电子邮件,或获取用户名和查询广告以获取电话和电子邮件

  5. 将数据返回我的网页(在JavaScript上构建)

我的理解似乎有问题!

请根据我的要求提出更合适的解决方案

坦率地说,我想不出没有服务器端处理的方法来使其正常工作。这是因为WS-FEDERATION协议ADFS的使用不仅是返回索赔。

这是关于ret SAML令牌。令牌包含索赔,但最重要的是它是签名使用XMLDSIG。您将如何验证令牌是第一个大问题。但是肯定有外部库可以允许。

但是,可以通过修改浏览器中的脚本来轻松绕过这种身份验证。这是因为WS-Federation停止了您获得令牌的位置,然后由您通过代币以获得实际身份。而且,仅在客户端处理时,这将无法工作。

adfs 3不支持oauth2隐式配置文件,这将是一个选项,但是您仍然需要验证服务器上的令牌以避免会话固定。

您可以设置支持OAuth2/OpenID Connect隐式配置文件之类的东西http://leastprivilege.com/2013/09/19/adding-oauth2-to--adfs-and-bridging-the-ph---------------------------------------------------------------------------------------

另一个选项是使用诸如Auth0(免责声明:我为auth0工作)之类的东西,它也支持OAuth2/OpenID Connect Impandciit配置文件。在这种情况下,您不需要ADF,您在网络上安装的连接器/代理不需要打开防火墙或其他任何内容,并且支持适用于JavaScript应用程序的隐式配置文件。这是单页应用教程的一个示例(如果您创建一个帐户,它将用您的凭据来量身定制文档):

https://docs.auth0.com/singlepageapp-tutorial

相关内容

最新更新