Azure CDN Verizon Premium配Token后非首页返回403错误排查
已知故障前提
- 已完成Verizon Premium CDN的Token鉴权全流程配置,CDN源站对接存储账户托管的静态站点
- 仅根路径首页可正常访问,其余所有子路径页面、静态资源均返回403权限错误
- 已在令牌生成参数
ec_url_allow中配置/根路径,暂未定位故障原因
根因排查与修复步骤
优先修正
ec_url_allow参数配置这是该场景下最高发的配置错误:Verizon(Edgecast)的Token鉴权规则中,
ec_url_allow参数配置为/时,仅精确匹配根路径本身(即首页),不会自动递归匹配所有子路径。- 若需要放行全站资源,将该参数值修改为
/*,显式声明匹配根路径下任意层级的所有路径 - 若仅需放行部分路径,按
/路径前缀/*的格式补充对应规则,同时确认规则是否开启了大小写忽略,避免因路径大小写不匹配触发403
- 若需要放行全站资源,将该参数值修改为
校验Token生成逻辑的路径一致性
- 子路径请求生成Token时,传入的URL路径必须和CDN节点实际接收到的请求路径完全一致,包括路径末尾斜杠、特殊字符编码规则、路径片段顺序
- 禁止在Token生成环节对路径做多余的URL编码/解码操作,Verizon节点校验签名时会做严格字符串比对,路径字符串不一致会直接判定签名无效返回403
排查其余Token约束参数误拦截
检查令牌配置中是否开启了以下非路径类限制,若配置范围过窄会导致子路径请求校验失败:ec_ref_allow:Referer白名单,若子路径请求来源域名和白名单不匹配会触发拦截ec_clientip:访问源IP白名单,若用户访问子路径时出口IP变化会触发拦截ec_proto_allow:协议限制,若子路径请求协议(HTTP/HTTPS)和配置允许的协议不一致会触发拦截
排查Token鉴权外的CDN拦截规则
进入Verizon控制台查看403请求的详细日志,确认命中规则ID:- 检查规则引擎中是否配置了针对子路径的IP黑白名单、地域拦截、Referer防盗链规则
- 检查WAF防护日志,确认是否是SQL注入、XSS等攻击防护规则误拦截了正常子路径请求
对比请求特征差异
打开浏览器开发者工具的网络面板,对比正常首页请求和异常子路径请求的差异:- 确认子路径请求是否完整携带了Token相关参数,是否存在参数漏传、值被截断的问题
- 确认子路径请求的Cookie、请求头和首页请求无逻辑冲突,避免自定义请求头触发鉴权失败
内容的提问来源于stack exchange,提问作者Akshay
相关产品推荐
相关产品推荐

