AWS API Gateway中JWT Token无法生效的配置问题咨询
配置修复方案
- 配置Authorization请求头透传规则
进入对应API的集成请求配置界面,找到HTTP标头配置模块,新增Authorization头映射规则:映射来源填写method.request.header.Authorization,保存配置后重新部署API到对应stage。
API Gateway默认不会自动透传所有自定义/鉴权请求头到后端,这是最常见的问题原因。 - 校验授权器配置
若你未计划在API Gateway层做统一JWT鉴权,确认所有业务接口的授权器设置为NONE,避免API Gateway主动拦截未通过其校验的JWT请求。
若需要启用API Gateway统一鉴权,需要保证其授权器的JWT校验规则(签名算法、iss/aud声明、密钥等)和后端.NET微服务的校验规则完全一致,同时配置鉴权通过后透传原始Authorization头到后端。 - 确认集成模式配置
若使用HTTP代理集成,除了基础代理配置外,确认没有配置请求头过滤规则拦截Authorization头;若使用非代理HTTP集成,必须手动配置上述的请求头映射规则才能透传鉴权头。 - 排查CORS配置(仅针对前端跨域调用场景)
若请求从前端浏览器发起,检查API Gateway的CORS配置,确保Access-Control-Allow-Headers列表包含Authorization,否则浏览器会在预检请求后自动剔除该请求头,导致后端无法拿到Token。 - 调试验证
可临时在后端.NET微服务的请求管道中添加日志,打印所有入站请求的Authorization头值,确认Token是否被正确传递、格式是否被链路中的其他服务(如WAF、负载均衡)修改。
内容的提问来源于stack exchange,提问作者DJ Reddy
相关产品推荐
相关产品推荐

