我尝试使用ADFS(内部)设置我们的Angular SPA + .ASPNET核心API以摆脱Windows身份验证。最终目标是:
在ADFS上正确配置了Angular SPA和API。我使用angular-oauth2-oidc来配置水疗中心。
问题是:加载SPA时,当SPA尝试访问OpenId Discovery端点(ValidationError at /soapclient/
Missing element utenteApplicativo (creaCarrello.GestioneCarrelliRequest)
)时,会收到CORS错误。所以我甚至无法将用户重定向到ADFS。什么都行不通。
我在网上看了很多,但发现很多其他人都说ADFS不支持CORS。虽然看起来很奇怪。 Microsoft声称它们支持Single Page Applications,因此您已经或多或少地假设ADFS将接收CORS请求。
还有其他人遇到过这个问题吗?严重的是,微软已经实现了这个并且没有以允许CORS请求的方式构建?
编辑:我还尝试在adal.js周围创建一个包装器。我设法将用户重定向到ADFS,登录并获取id_token。现在的问题是sts在令牌中返回spa的.well-known/openid-configuration
声明,而不是api。当SPA使用令牌调用API时,它按预期失败。感觉就像我已经走到了尽头。