[发明专利]一种实现Api接口安全性的方法有效
申请号: | 202010097133.0 | 申请日: | 2020-02-17 |
公开(公告)号: | CN111277418B | 公开(公告)日: | 2023-05-12 |
发明(设计)人: | 刘德建;叶伟;郑彬;李正;岳万恕;陈宏展 | 申请(专利权)人: | 福建天晴在线互动科技有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/40 |
代理公司: | 福州旭辰知识产权代理事务所(普通合伙) 35233 | 代理人: | 程勇 |
地址: | 350212 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 api 接口 安全性 方法 | ||
1.一种实现Api接口安全性的方法,其特征在于:所述方法包括如下步骤:
步骤1:接入方向带有Api接口的系统申请应用;
步骤2:接入方获得应用的应用码AppID和应用密钥AppSercet后开始向系统接口组织请求;该步骤2具体为:
步骤2.1:接入方要请求获取令牌接口来得到令牌Token;
所述步骤2.1进一步包括如下步骤:
步骤2.1.1:系统收到步骤2请求后,首先根据应用码AppID取得对应的应用密钥AppSercet,校验Sign签名是否合法有效;
步骤2.1.2:系统其次校验当前时间戳Ticket是否于服务器误差为一时间阈值范围内,超出范围的视为过期请求;
步骤2.1.3:最后系统校验请求IP是否在应用码AppID允许的IP白名单内;
步骤2.1.4:如果步骤2.1.1至步骤2.1.3都合法的情况下,系统组织令牌值返回给接入方;令牌Token是由应用码AppID、过期时间ExpireTime、随机字符串组成的Json字符串,再经过系统的DES加密得出的值,该值在返回给接入方之前会存入Redis缓存,用于校验合法性;
所述步骤2.1进一步具体为:接入方传输应用码AppID、当前时间戳Ticket、Sign请求获取令牌接口,所述Sign是由AppID+Ticket+AppSercet 3个参数拼接进行MD5加密后得到的值;所述令牌Token在一预设时间内有效,即在预设时间内无需重复请求令牌Token,令牌Token都视为有效;
步骤2.2:接入方获得令牌Token后有权向系统请求具体功能的业务接口,得到业务接口所需参数和签名规则组织出业务签名SdkSign;
步骤2.3:根据所述令牌Token和业务签名SdkSign,再加上业务接口所需参数,一并请求业务接口;
所述步骤2.3进一步包括如下步骤:
步骤2.3.1:系统收到所述业务接口请求后,首先解密令牌Token,并解析出包含的应用码AppID信息,如果解析失败,则视为非法请求;
步骤2.3.2:解析出应用码AppID后,根据应用码AppID得到Redis缓存key读取令牌Token,查看令牌Token是否存在,如果不存在,则视为非法请求;
步骤2.3.3:根据解析的应用码AppID获取AppSercet,根据签名规则,组织签名,比对SdkSign是否合法;
步骤2.3.4:校验请求IP是否在应用码AppID允许的IP白名单内;
步骤2.3.5:判断系统当前小时内是否有超量请求,即系统会运行一个计划任务,每个5分钟会统计一次每个应用接口系统当前小时的请求量,如果大于最大请求频率阀值,则存储进Redis缓存,代表已超量;
步骤2.3.6:如果步骤2.3.1至步骤2.3.5都通过的情况下,代表请求合法,进入步骤3;否则,为非法请求,结束流程;
步骤3:系统根据业务接口请求会把要返回的数据信息用应用码AppID对应的接口返回内容密钥DesSecret进行Des加密后返回给接入方;
步骤4:接入方获得请求接口的返回内容后,用系统分配的接口返回内容密钥DesSecret进行Des解密,得到返回内容。
2.根据权利要求1所述的一种实现Api接口安全性的方法,其特征在于:所述签名规则组织出业务签名SdkSign具体为:根据统一签名规则,业务接口所需参数根据参数名ASCII从小到大排序,将业务接口所需参数进行组合一起得到text1,text1转化为小写获得text2,text2+AppSecret进行MD5加密后获得32位的MD5值,这个就是SdkSign。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天晴在线互动科技有限公司,未经福建天晴在线互动科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010097133.0/1.html,转载请声明来源钻瓜专利网。