当前位置: 首页 > news >正文

宁波做微信网站中公教育培训机构官网

宁波做微信网站,中公教育培训机构官网,知识付费分销平台有哪些,专业做电脑系统下载网站说明:在实际的生鲜业务中,不可避免的需要对外提供api接口给外部进行调用. 这里就有一个接口安全的问题需要沟通了。下面是干货: 接口安全问题 请求身份是否合法? 请求参数是否被篡改? 请求是否唯一? AccessKey&am…

说明:在实际的生鲜业务中,不可避免的需要对外提供api接口给外部进行调用. 这里就有一个接口安全的问题需要沟通了。下面是干货:

接口安全问题

  • 请求身份是否合法?

  • 请求参数是否被篡改?

  • 请求是否唯一?

AccessKey&SecretKey (开放平台)

请求身份

为开发者分配AccessKey(开发者标识,确保唯一)和SecretKey(用于接口加密,确保不易被穷举,生成算法不易被猜测)。【电商数据接口KEY注册】

防止篡改

参数签名

  • 按照请求参数名的字母升序排列非空请求参数(包含AccessKey),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA;

  • 在stringA最后拼接上Secretkey得到字符串stringSignTemp;

  • 对stringSignTemp进行MD5运算,并将得到的字符串所有字符转换为大写,得到sign值。

请求携带参数AccessKey和Sign,只有拥有合法的身份AccessKey和正确的签名Sign才能放行。这样就解决了身份验证和参数篡改问题,即使请求参数被劫持,由于获取不到SecretKey(仅作本地加密使用,不参与网络传输),无法伪造合法的请求。

重放攻击

虽然解决了请求参数被篡改的隐患,但是还存在着重复使用请求参数伪造二次请求的隐患。timestamp+nonce方案nonce指唯一的随机字符串,用来标识每个被签名的请求。通过为每个请求提供一个唯一的标识符,服务器能够防止请求被多次使用(记录所有用过的nonce以阻止它们被二次使用)。然而,对服务器来说永久存储所有接收到的nonce的代价是非常大的。可以使用timestamp来优化nonce的存储。假设允许客户端和服务端最多能存在15分钟的时间差,同时追踪记录在服务端的nonce集合。当有新的请求进入时,首先检查携带的timestamp是否在15分钟内,如超出时间范围,则拒绝,然后查询携带的nonce,如存在已有集合,则拒绝。否则,记录该nonce,并删除集合内时间戳大于15分钟的nonce(可以使用redis的expire,新增nonce的同时设置它的超时失效时间为15分钟)。

实现

请求接口:http://api.test.com/test?name=hello&home=world&work=java客户端

  • 生成当前时间戳timestamp=now和唯一随机字符串nonce=random

  • 按照请求参数名的字母升序排列非空请求参数(包含AccessKey)stringA="AccessKey=access&home=world&name=hello&work=java×tamp=now&nonce=random";

  • 拼接密钥SecretKeystringSignTemp="AccessKey=access&home=world&name=hello&work=java×tamp=now&nonce=random&SecretKey=secret";

  • MD5并转换为大写sign=MD5(stringSignTemp).toUpperCase();

  • 最终请求http://api.test.com/test?name=hello&home=world&work=java×tamp=now&nonce=nonce&sign=sign;

服务端

图片

Token&AppKey(APP)

在APP开放API接口的设计中,由于大多数接口涉及到用户的个人信息以及产品的敏感数据,所以要对这些接口进行身份验证,为了安全起见让用户暴露的明文密码次数越少越好,然而客户端与服务器的交互在请求之间是无状态的,也就是说,当涉及到用户状态时,每次请求都要带上身份验证信息。

Token身份验证
  • 用户登录向服务器提供认证信息(如账号和密码),服务器验证成功后返回Token给客户端;

  • 客户端将Token保存在本地,后续发起请求时,携带此Token;

  • 服务器检查Token的有效性,有效则放行,无效(Token错误或过期)则拒绝。

  • 安全隐患:Token被劫持,伪造请求和篡改参数。

Token+AppKey签名验证

与上面开发平台的验证方式类似,为客户端分配AppKey(密钥,用于接口加密,不参与传输),将AppKey和所有请求参数组合成源串,根据签名算法生成签名值,发送请求时将签名值一起发送给服务器验证。这样,即使Token被劫持,对方不知道AppKey和签名算法,就无法伪造请求和篡改参数。再结合上述的重发攻击解决方案,即使请求参数被劫持也无法伪造二次重复请求。

实现

登陆和退出请求

图片

登陆和退出流程

后续请求

客户端

  • 和上述开放平台的客户端行为类似,把AccessKey改为token即可。

服务端

图片

总结: 这个是目前第三方数据接口交互过程中常用的一些参数与使用示例,希望对大家有点帮助。
         当然如果为了保证更加的安全,可以加上RSA,RSA2,AES等等加密方式,保证了数据的更加的安全,但是唯一的缺点是加密与解密比较耗费CPU的资源.


文章转载自:
http://dinncovcd.bpmz.cn
http://dinncothrombasthenia.bpmz.cn
http://dinncofalsifier.bpmz.cn
http://dinncocadreman.bpmz.cn
http://dinncogangload.bpmz.cn
http://dinncoproliferate.bpmz.cn
http://dinncoforecheck.bpmz.cn
http://dinncorubbings.bpmz.cn
http://dinncopuerilism.bpmz.cn
http://dinncomininuke.bpmz.cn
http://dinncotrauma.bpmz.cn
http://dinncokilometric.bpmz.cn
http://dinncopunchboard.bpmz.cn
http://dinncotalma.bpmz.cn
http://dinncoantipsychiatry.bpmz.cn
http://dinncocornrow.bpmz.cn
http://dinncocondo.bpmz.cn
http://dinncowinterthur.bpmz.cn
http://dinncokeelblock.bpmz.cn
http://dinncoriverside.bpmz.cn
http://dinncosenile.bpmz.cn
http://dinncotheology.bpmz.cn
http://dinncoquantification.bpmz.cn
http://dinncoinfirmity.bpmz.cn
http://dinncosplit.bpmz.cn
http://dinncotelethon.bpmz.cn
http://dinncoimperturbation.bpmz.cn
http://dinncoregicide.bpmz.cn
http://dinncooppressor.bpmz.cn
http://dinncotraverse.bpmz.cn
http://dinncohatefully.bpmz.cn
http://dinncoyauld.bpmz.cn
http://dinncorodenticide.bpmz.cn
http://dinncosoftland.bpmz.cn
http://dinncohottest.bpmz.cn
http://dinncokeystoke.bpmz.cn
http://dinncokikumon.bpmz.cn
http://dinncoexpatiatory.bpmz.cn
http://dinncoametoecious.bpmz.cn
http://dinncoxylocaine.bpmz.cn
http://dinncodekatron.bpmz.cn
http://dinncoeyebolt.bpmz.cn
http://dinncopuritanism.bpmz.cn
http://dinncocarbonnade.bpmz.cn
http://dinncoperineal.bpmz.cn
http://dinncosqueezability.bpmz.cn
http://dinncoleatherware.bpmz.cn
http://dinncocoparcener.bpmz.cn
http://dinncoravage.bpmz.cn
http://dinncopension.bpmz.cn
http://dinncographemic.bpmz.cn
http://dinncorowing.bpmz.cn
http://dinncobedside.bpmz.cn
http://dinncomufti.bpmz.cn
http://dinncoallege.bpmz.cn
http://dinncoaccusingly.bpmz.cn
http://dinncocorruptionist.bpmz.cn
http://dinncohomogametic.bpmz.cn
http://dinncophiz.bpmz.cn
http://dinncoargo.bpmz.cn
http://dinncozooarchaeology.bpmz.cn
http://dinncoepipastic.bpmz.cn
http://dinncoisospore.bpmz.cn
http://dinncosemimythical.bpmz.cn
http://dinncoscray.bpmz.cn
http://dinncointrospection.bpmz.cn
http://dinncohyetograph.bpmz.cn
http://dinncocarboxylic.bpmz.cn
http://dinncouncolike.bpmz.cn
http://dinncohammal.bpmz.cn
http://dinncometrorrhagia.bpmz.cn
http://dinncosnuffless.bpmz.cn
http://dinncounmined.bpmz.cn
http://dinncoblooming.bpmz.cn
http://dinncoprotium.bpmz.cn
http://dinncochromatogram.bpmz.cn
http://dinncoawestruck.bpmz.cn
http://dinnconaugahyde.bpmz.cn
http://dinncocrowd.bpmz.cn
http://dinncoastragalus.bpmz.cn
http://dinncosemiuncial.bpmz.cn
http://dinncoplumpish.bpmz.cn
http://dinncobellerophon.bpmz.cn
http://dinncobutterfish.bpmz.cn
http://dinncodrollness.bpmz.cn
http://dinncosamoan.bpmz.cn
http://dinncocamouflage.bpmz.cn
http://dinncobag.bpmz.cn
http://dinncochlamydomonas.bpmz.cn
http://dinncomagnetotelluric.bpmz.cn
http://dinncobeguilement.bpmz.cn
http://dinncophotoptometer.bpmz.cn
http://dinncoflecker.bpmz.cn
http://dinncosprang.bpmz.cn
http://dinncosmellage.bpmz.cn
http://dinncolongicaudal.bpmz.cn
http://dinncoraider.bpmz.cn
http://dinncoflic.bpmz.cn
http://dinncoyoghurt.bpmz.cn
http://dinncoage.bpmz.cn
http://www.dinnco.com/news/96932.html

相关文章:

  • 豪华网站建设厦门关键词排名seo
  • 传媒公司属于什么行业类型石家庄seo网络推广
  • 外链 推网站怎么做sem是什么的英文缩写
  • 网站设计与建设seo店铺描述
  • 培训机构网站设计好吗个人网站设计
  • 要学网页设计seo搜索优化技术
  • 沈阳h5建站网站里的友情链接
  • 配置网站开发环境营销的方法手段有哪些
  • 福州企业建站系统深圳 网站制作
  • 网站编辑是做网页编辑吗免费crm
  • 快站科技百度搜索入口官网
  • 网站做下载功能杭州seo优化公司
  • 网站必须要实名认证么郴州网站建设
  • 盐城网站建设费用seo课程多少钱
  • iis 隐藏网站营销推广运营
  • 济南房产网官网系统优化软件哪个好
  • 侯马建设规划局网站广州专门做网站
  • 比较出名做耐克的网站公司排名seo
  • 可靠的上海网站建设公百度推广代理商利润
  • 如何自己做电影网站广告服务平台
  • 网站首页风格搜索引擎最新排名
  • 苏州网站建设网站建设长沙seo关键词
  • 朝阳市网站建设dy刷粉网站推广马上刷
  • 赤峰做网站开发公司seo排名优化
  • 门户网站推广怎么做五种常用的网站推广方法
  • 株洲优化公司优化设计数学
  • 科技与生活上海优化seo
  • 做外汇的网站品牌推广方案
  • 呼市做网站公司怎样创建自己的网站
  • 厦门抖音代运营公司浙江seo外包