最近有新的接口要上线,测试通过需满足以下条件:
1、身份认证 2、验签(防篡改、防重放)3、输入 处理 输出等。
身份认证使用SSO,直接pass,我们重点放在验签:
参数签名:
将所有参数key的首字母按照accii 从小到大排列 (一对参数的key和value用=号连接,两个参数之间用&连接)拼接,例如:username=secguard&password=whoami_123!,拼接完成后的对整个字符串进行转小写,然后尾部加上&signkey=签名的key,最后将字符串用MD5加密生成:signature
python刚开始接触,不太习惯:
# coding = utf8
import requests
import json
import hashlib
import datetime
url = "http://apitest/supervise/manage/searchInfo"
headers = {"Content-Type":"application/json","User_Agent":"sec_test"}
now_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') #获取当前日期
data = {
"accessToken": "efd22965-2d92-46dp-9fa0-17192344a252"