消息&短信 MSGSMS-认证鉴权:X-WSSE认证

时间:2023-11-06 17:28:01

X-WSSE认证

短信发送的接口使用X-WSSE认证。 X-WSSE是具有一定格式的字符串,通常是单个 HTTP 标头行。

X-WSSE格式为:UsernameToken Username="app_key的值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。
  • PasswordDigest:根据PasswordDigest = Base64 (SHA256 (Nonce + Created + Password))生成,直接使用Nonce、Created、Password拼接后的字符串进行SHA256加密即可,字符串中无需包含+号和空格。其中,Password为app_secret的值。
  • Nonce:用户发送请求时生成的一个随机数,长度为1~128位,可包含数字和大小写字母。例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。
  • Created:随机数生成时间。采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中的时间格式转换方式不同,部分语言可参考表3

获取X-WSSE令牌后,在调用短信发送接口时,您需要在请求消息头中按以下方式添加X-WSSE。

POST /sms/batchSendSms/v1 HTTP/1.1
x-real-ip: 10.10.10.10 
x-real-port: 10443 
host: ompap.inner
content-length: 184 
date: Fri, 13 Apr 2018 06:31:39 GMT
authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey"
x-wsse: UsernameToken Username="ARBRz4bAXoFgEH7o4Ew308eXc1RA",PasswordDigest="NDA1MWIwNjI2ZTkyNWFlM2FhMTE5NDE1YTk5NjU1YWE4NjNlZTY1MmRhYzkxZGViNzczZjdjMjkzZWQ4ZjAwNA==",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2018-05-26T00:35:30Z"
accept: application/json
content-type: application/x-www-form-urlencoded

from=1069********0012&to=%2B86155****5678&templateId=abcdefghabcdefghabcdefghabcdefgh&templateParas=%5B%22520520%22%5D&statusCallback=http%3A%2F%2F205%2E145%2E111%2E168%3A9330%2Freport

support.huaweicloud.com/api-msgsms/sms_05_0046.html