背景: 我们有一个WebAPI与Azure ACS和ADFS进行身份验证。使用ACS进行离子/科尔多瓦认证
通过浏览器访问任何WebAPI资源将通过ACS将未经身份验证的用户重定向到ADFS登录页面。成功登录后,用户将被重定向为返回Url,并在安全令牌中设置ACS。这工作非常好。
问题: 我们正在开发一个使用Ionic框架()的移动应用程序。我们希望利用相同的ACS和ADFS进行用于WebAPI的身份验证。在这个过程中,我们面临以下问题:
问题1: 通过移动应用程序访问任何资源的WebAPI(离子型,科尔多瓦,angularjs)重定向用户ACS,我们可以得到下面的错误。
的XMLHttpRequest无法加载的https:// {域名} .accesscontrol.windows.net/V2/wsfederation WA = WS ...... 52fitem & WCT = 2014-10-10T14%3a24%3a34Z & WHR = HTTPS%3A%2F %2F {域名} .COM。请求的资源上没有“Access-Control-Allow-Origin”标题。因此不允许原产地'null'访问。
因此,我们无法通过ACS使用移动应用程序对任何用户进行身份验证。
问题2: 在ACS中将返回URL设置为空将引发以下错误。 ACS90050:没有回复地址与信赖方负责人联系。
到目前为止采取的步骤: - >我们在WebAPI上启用了CORS。