【发布时间】:2014-12-05 19:27:38
【问题描述】:
背景: 我们设置了一个使用 Azure ACS 和 ADFS 进行身份验证的 WebAPI。
通过浏览器访问任何 WebAPI 资源将通过 ACS 将未经身份验证的用户重定向到 ADFS 登录页面。成功登录后,用户将被重定向以返回 ACS 中设置的 Url 以及安全令牌。这工作得很好。
问题: 我们正在使用 Ionic 框架 (http://ionicframework.com/) 开发一个移动应用程序。我们希望利用与 WebAPI 相同的 ACS 和 ADFS 进行身份验证。在这个过程中我们面临以下问题:
问题 1: 通过移动应用程序(Ionic、Cordova、AngularJS)访问任何 WebAPI 资源会将用户重定向到 ACS,我们得到以下错误。
XMLHttpRequest cannot load https://{domainname}.accesscontrol.windows.net/v2/wsfederation?wa=ws…52fitem&wct=2014-10-10T14%3a24%3a34Z&whr=https%3a%2f%2f{domainname}.com. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
因此,我们无法使用移动应用通过 ACS 对任何用户进行身份验证。
问题 2: 在 ACS 中将返回 URL 设置为空会引发以下错误。
ACS90050: No reply address is configured with the relying party principal.
目前采取的步骤: -> 我们在 WebAPI 上启用了 CORS。
【问题讨论】:
标签: authentication cors asp.net-web-api ionic-framework acs