1. 首页 > 电脑手机 >

api对接会造成数据遗漏 api接口对接是数据库对接吗

小怡给大家谈谈api对接会造成数据遗漏,以及api接口对接是数据库对接吗应用的知识点,希望对你所遇到的问题有所帮助。

api对接会造成数据遗漏 api接口对接是数据库对接吗api对接会造成数据遗漏 api接口对接是数据库对接吗


1、最近在做第三方接口对接的一些工作,考虑到交互的安全性也为了不让数据在传输中“裸奔”,所以签名和权鉴是必不可少的了。

2、2.1、从登录验证说起在我们内部项目之间进行的接口调用中一般会用到这种: 用户登录->生成token并保存->接口请求验证token ,这里也可以把token做成全局的用以单点登录。

3、2.2、说说使用token验证① 但是如果我们要对接第三方接口或者向第三方提供接口时,这个模式就使用得比较少一些了。

4、首先,token携带在请求中很多时候已经是一个 明文传输 了,有心的话可以直接进行数据提取然后做一些其他事情(做过爬虫的应该都很熟练哈)。

5、② 在第三方接口对接时更多的是以加盟或绑定的形式为主,在接口调用之前 很少会做登录的动作 ,而且处于安全性考虑这种方式的安全性也有待进一步提升。

6、2.3、解决方案其实这个问题已经是有比较完备的解决方案了得: 双方约定一个公钥,一个私钥然后按照特定的算法(MD5、SHA256)进行加密生成一个签名 。

7、使用方在接口调用时携带签名及其他数据,提供方在接收到调用时也按照约定进行一次签名的生成,最后会比较两方的数据,如果两方的签名一致则请求检测初步通过,不符合时则拒绝。

8、3.1、整体思路使用特定的签名算法且使用双方都进行生成(其参数包含公钥、时间戳、携带参数)。

9、在我这边接收到请求时先去检测公钥是否在我方的约定池中存在,然后校验 签名一致性、有效时间,最后是参数合法性检测 。

10、其中在中间任何一个环节出现问题即 抛出对应回执信息 。

11、PS:部分参数可参与签名的算法3.2、签名算法在这里面最重要的就是签名算法了,其操作步骤如下:① 使用Map接收参数,然后对按照其中的非空参数名的ACCII码从小到大进行排序② 使用URL键值对的形式(key1=value1&key2=value2...)进行字符串拼接③ 在上述生成的字符串上面拼接私钥得到新的字符串signStr,并对signStr进行SHA256运算得到signShsStr④ 最后把signShaStr转换成大写,得到最终的签名4.1、signBuildUtil4.2、SHA256运算5.1、在签名中可以让部分重要的参数进行参与5.2、使用时间戳并参与签名一方面是增加签名的预测难度也可以作为时间有效性检测的依据5.3、最好是有一个良好的文档约定和公钥、私钥的良好维护。

本文到这结束,希望上面文章对大家有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息