ADFS 2016 - OpenID Connect Discovery端点的CORS问题

jpg*_*ssi 6 cors .net-core angular adfs4.0

我正在尝试使用ADFS(内部)设置我们的Angular SPA + .ASPNET核心API以摆脱Windows身份验证.最终目标是:

  • Angular SPA - >将用户重定向到ADFS并接收id_token
  • Angular SPA - >使用此令牌调用API
  • Angular SPA - >不时刷新令牌

在ADFS上正确配置了Angular SPA和API.我正在使用angular-oauth2-oidc配置spa.

问题是:加载SPA时,当SPA尝试到达OpenId Discovery端点(.well-known/openid-configuration)时,我收到CORS错误.所以我甚至无法将用户重定向到ADFS.什么都行不通.

我在网上看了很多,发现很多其他人说ADFS不支持CORS.虽然看起来很奇怪.Microsoft声称它们支持单页应用程序,因此您已经或多或少地假设ADFS将接收CORS请求.

还有其他人遇到过这个问题吗?严重的是,微软已经实现了这一点,并没有以允许CORS请求的方式构建?

编辑:我也尝试在adal.js周围创建一个包装器.我设法将用户重定向到ADFS,登录并获取id_token.现在的问题是,sts aud在令牌中返回spa的声明,而不是api.当SPA使用令牌调用API时,它按预期失败.感觉就像我已经走到了尽头.