当网站网址被添加到“可信网站”时,ADAL js在获取远程端点令牌时无法在IE中工作。

时间:2015-03-26 23:11:46

标签: internet-explorer adal

我为ADAL js项目(https://github.com/AzureAD/azure-activedirectory-library-for-js/issues/102)提交了一个错误,但是想与社区核实一下 - 也许有人对其原因有所了解。标题几乎说明了一切:当网站URL添加到“可信站点”时,ADAL js在获取远程端点的令牌时不能在IE中工作。我创建了两个测试webapps:webapp和webapi并发布到Azure网站。这些样本基于https://github.com/AzureAD/azure-activedirectory-library-for-js/issues/102。 WebApp:https://sergtestapp2.azurewebsites.net/#/Home,WebAPI:https://sergtestapi.azurewebsites.net。任何人都可以尝试这些应用程序,只要你有微软帐户,因为这个应用程序是多租户。一旦这个问题得到解答,我就会把它们擦掉。

非常简单,导航到WebApp并单击登录。 ADAL js将处理auth部分并重定向到MS登录页面。登录 - >导航到“转到列表”并添加几个项目。现在,如果你打开IE或Chrome - >两个“转到列表”应该在列表中显示相同的项目。但是,如果您将webapp添加到IE的“可信站点” - 您可以更长时间“查看​​/添加”IE中的列表。 Chrome仍然可以使用。

2 个答案:

答案 0 :(得分:0)

我可以使用IE 11(本地Intranet或受信任的站点)重现相同的问题。 如果您无法从受信任或Intranet列表中删除您的网站,则可以将https://login.microsoftonline.com(或您的租户登录页面)添加到“受信任的站点”列表中。 我现在这样解决了这个问题...

答案 1 :(得分:0)

图书馆没有解决方案。 也许有可能用某种“代理”解决它。 我有两个可能有效的解决方案,需要更多的探索。

  1. 解决方案尝试: a)ADALjs重定向到应用程序URL而不是信任的azure广告登录。 b)应用程序然后通过请求代码将用户重定向到azure广告登录来请求应用程序令牌。 c)用户输入其凭证。 d)用户提交 e)申请流程在cookie中提交并返回持票人令牌(需要检查这是否正确) f)adaljs然后获得此标记,因为它来自azure ad login

  2. 解决方案尝试 a)adal js打开新窗口并监听postmessage。 c-d)与1相同。 e)应用程序进程提交并返回javascript以使用bearer token执行postmessage。 f)adal js保存此令牌。

相关问题