如何排查后端服务校验签名失败的原因?

<p><span style="font-size:18px"><strong>现象描述</strong></span></p> <p>后端服务校验签名结果失败。</p> <p><span style="font-size:18px"><strong>排查思路</strong></span></p> <p><img src="https://pcp-portal-sca.obs-cn-shenzhen.pinganyun.com/pcp-portal-sca/20193110112141-1fd743589503.png" style="height:627px; width:433px" /></p> <p><span style="font-size:18px"><strong>排查步骤</strong></span></p> <p>1.&nbsp; 开启Debug模式:调用方在调用API网关时,发送的请求Header中增加 PA-AG-Request-Mode = debug字段,开启Debug模式。</p> <p>2.&nbsp; API网关在发送到后端服务的请求Header中会增加PA-AG-Gateway-Signature-StrToSign字段即拼接后的签名原文,签名原文不参与后端签名计算。</p> <p><!--[if gte mso 9]><xml> <o:OLEObject Type="Embed" ProgID="PBrush" ShapeID="_x0000_i1025" DrawAspect="Content" ObjectID="_1634027053"> </o:OLEObject> </xml><![endif]-->&nbsp; &nbsp;&nbsp;<img src="https://pcp-portal-sca.obs-cn-shenzhen.pinganyun.com/pcp-portal-sca/20193110112215-10fa66cb9e57.png" style="height:26px; margin:0px; width:65px" />:由于API网关发送的请求Header的内容中不允许出现换行符&ldquo;\n&rdquo;,因此&ldquo;\n&rdquo;替换为&ldquo;|&rdquo;。</p> <p>3.&nbsp; &nbsp;后端服务根据API网关传递的PA-AG-Gateway-Signature-StrToSign字段获取API网关拼接的签名原文,并将自身拼接的签名原文与API网关传递的签名原文进行对比,定位问题。</p> <p>&bull;&nbsp;&nbsp; 如果拼接的签名原文不相同,请检查拼接过程。</p> <p>&bull;&nbsp;&nbsp; 如果拼接的签名原文相同,请执行步骤4。</p> <p>4.&nbsp; 检查签名计算使用的Key、Secret 是否正确。</p> <p>&bull;&nbsp;&nbsp; 如果不正确,请修改相应的Key和Secret。</p> <p>&bull;&nbsp;&nbsp; 如果正确,请执行步骤5。</p> <p>5.&nbsp; 检查是否额外添加了空格等不容易发现的字符等问题。</p> <p>&bull;&nbsp;&nbsp; 如果有,请删除额外添加的内容。</p> <p>&bull;&nbsp;&nbsp; 如果没有,请联系收集相关信息,提交<a href="https://pinganyun.com/console/workorder/create" target="_blank">工单</a>,联系平安云工程师处理。</p>
以上内容是否解决了您的问题?
请补全提交信息!
咨询·建议

电话咨询

400-151-8800

邮件咨询

cloud@pingan.com

在线客服

工单支持

解决云产品相关技术问题