1、 模版ID
2、 APP Key、APP Secret、APP接入地址
3、 签名通道号
aTrust侧配置(X-WSSE认证方式)
请求设置
1、新建华为云短信网关
2、配置对应请求头部
请求地址为:客户侧获取的APP接入地址+/sms/batchSendSms/v1
请求头部字段与下图一致
3、请求URL和请求cookie都为空;请求体为{{env.postData}}
将 请输入(必填)替换为从华为短信网关获取的相关参数
appsecret = 从客户获取的APPSecret
Username= 从客户获取的APPKey
from= 从客户获取的签名通道号
teplateId= 从客户获取的模版ID
5、更改自定义变量中的codes.push值(codes.push与华为云短信网关中模版的变量对应)
如果华为云模版只有一个变量,并且为验证码类型,则此时不需要修改自cedes.push(默认cedes.push就只有一个比那辆env.code-验证码)
如果华为云模版配置了三个变量,则codes.push中必须有三个变量值
此时需要将aTrust的自定义变量的codes.push括号里面的内容也分别设置三个变量,并且这三个变量的类型需要符合华为云模版中变量的要求;
例如下图(user.username、env.spaSecret、env.date这些都是aTrust内置的自己的变量,需要保证aTrust上传的变量类型和个数与华为云模版的变量类型和个数一致)
user.username 在零信任中表示具体的用户 就对应华为云模版的变量1(用户)
env.spaSecret 在零信任中表示用户对应的安全码 就对应华为云模版的变量2(其他)
env.date 在零信任中表示今天的日期-年月日 就对应华为云模版的变量3(时间变量)
也可以设置固定值(一般在测试的时候配置)
响应配置
配置与下图相同即可
然后进行测试
选择对应的测试通知,然后进行测试
1、创建短信网关时进行分发测试失败·请求时携带的固定参数不对
保证这里面的参数填写正确、以及请求字段和响应字段要确保正确
·请求变量错误1、查看请求,找到请求的templateParas字段,将其进行URL解码,将解码之后得到的值与华为云模版的变量对比,看数量和类型是否一致
2、此时将这串乱码通过URL解码发现此请求只传递了一个变量值(需要保证请求的变量值能够和华为云模版的变量数量、类型一致—更改请求变量的话需要更改自定义请求参数中的env.push的值)
3、如果变量数量与华为云模版变量数量不一致,则需要更改自定义变量的codes.push值
4、如果变量数量一致但还是不通过,需要确认我们请求发送的数据 是否 满足华为云模版中变量设置的变量类型要求
2、测试时正常,实际分发SPA/验证码等时不正常此时一般需要获取具体的失败原始日志来分析是什么原因
1、先在审计中心查看一下分发失败的原因(是请求错误、还是响应错误;此处是响应错误)
2、在webconsole上抓取相关的分发日志
先输入atrust tool log set sdp-console DEBUG 开启console模块的DEBUG
然后重新执行短信分发操作,等待日志显示相关的报错
最后输入 zip -r /shared/1.zip /hislog/logsdp-console/sdp-console-web.log 将相关日志保存在1.zip中
3、检索日志文件,找到对应的请求和响应(此时排查方式与上述一致)
查看请求中的参数、变量等是否满足华为云短信网关的变量要求,并根据要求更改
下图就是获取的请求和响应的原始日志
注意事项
具体给用户短信通知的模版是依据 华为云短信网关上配置的模版来的;aTrust的模版内容没有具体作用,做修改不影响发送的具体内容