You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core 8 Web API中ADFS访问令牌颁发者验证失败排查

问题:ADFS颁发者HTTP地址导致ASP.NET Core 8 API验证失败?

我正在构建一个使用ADFS进行身份验证的ASP.NET Core 8 Web API(该API为受ADFS保护的资源)。目前能从ADFS获取到签名有效的访问令牌,但API对颁发者的验证始终失败,报错信息如下:

www-authenticate: Bearer error="invalid_token",error_description="The issuer 'http://my-adfs-server/adfs/services/trust' is invalid"

令牌中的颁发者地址使用的是HTTP而非HTTPS:

http://my-adfs-server/adfs/services/trust

如果通过以下方式禁用颁发者验证,API就能正常运行:

options.TokenValidationParameters = new TokenValidationParameters
{
    ValidateIssuer = false
};

但禁用验证并非可行方案,我需要找出验证失败的原因。我怀疑问题出在颁发者地址使用HTTP而非HTTPS上——毕竟所有与ADFS的通信(包括令牌请求)都使用HTTPS。

我想知道ASP.NET Core是如何判断令牌颁发者地址是否有效的?HTTP格式的颁发者地址是否会导致验证失败?

补充:ADFS的/.well-known/openid-configuration中同样指定了HTTP格式的颁发者URL:

"access_token_issuer": "http://my-adfs-server/adfs/services/trust"

所以验证逻辑肯定不只是简单比对令牌中的地址与配置中的地址。


内容的提问来源于stack exchange,提问作者Rasmus B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 00:33:12