一种开放平台的应用接入方法与流程

文档序号:12132291阅读:414来源:国知局
一种开放平台的应用接入方法与流程

本发明涉及通信技术领域,尤其涉及一种开放平台的应用接入方法。



背景技术:

在互联网时代,把网站的服务封装成一系列计算机易识别的数据接口开放出去,供第三方开发者使用,这种行为就叫做开放API(Application Programming Interface,应用程序编程接口),提供开放API的平台本身就被称为开放平台。通过开放平台,网站不仅能提供对Web网页的简单访问,还可以进行复杂的数据交互,将它们的Web网站转换为与操作系统等价的开发平台。第三方开发者可以基于这些已经存在的、公开的Web网站而开发丰富多彩的应用。

但是,在使用开放平台提供的基础组件进行二次开发或是使用该开放平台现有的一些用户资源的过程中,由于缺乏安全验证机制,给用户带来了安全隐患。



技术实现要素:

针对上述问题,本发明提供了一种开放平台的应用接入方法,有效解决应用接入过程中的安全性问题。

本发明提供的技术方案如下:

一种开放平台的应用接入方法,其特征在于,应用于开放平台服务端,所述应用接入方法中包括:

S10 经由开放平台接收应用端发送的应用请求,所述应用请求中包括应用标识信息、应用密钥、访问令牌以及请求参数;

S20 根据接收的应用请求对用户进行授权验证,并根据授权验证结果将应用验证请求发送至应用端;

S30 接收应用端完成验证之后返回的应用密钥并对其进行验证;

S40 根据应用密钥验证结果进一步验证访问令牌;

S50 根据访问令牌验证结果及请求参数执行应用请求并将响应结果反馈至应用端。

在本技术方案中,当需要进行应用请求时,在通信安全层面,开放平台服务端会先后对用户进行授权验证及对应用密钥进行认证,同时应用端进行应用验证,以此建立应用端与开放平台之间的安全通信。在用户安全层面,对访问令牌进行进一步的验证。只有以上验证都成功了,开放平台服务端才会响应应用请求。其从通信安全层面和用户安全层面对应用接入过程进行双重保护,以此提高应用接入过程中用户的安全性能。

进一步优选地,在步骤S10之前包括用户在开放平台中注册的步骤,具体包括:

S01 用户根据用户信息在开放平台中注册,所述用户信息包括用户名和登录密码;

S02 用户注册成功后,开放平台服务端为该用户分配应用标识信息及随机生成应用密钥;

S03 开放平台服务端将其反馈回开放平台中并进行显示,同时将应用标识信息及应用密钥进行关联存储,且将存储的应用密钥作为应用验证密钥,得到预存用户注册列表。

在本技术方案中,用户首先在开放平台中进行注册,以此保障应用端与开放平台之间的安全通信,且在注册过程中,开放平台自动分配相应的应用标识,同时返回应用密钥以授权用户使用相关服务。

进一步优选地,在步骤S10之前包括开放平台生成访问令牌的步骤,具体包括:

S04 接收用户登录开放平台后发送的访问令牌生成请求;

S05 随机生成访问令牌;

S06 限定访问令牌的有效期限;

S07 将应用标识信息与访问令牌关联存储,且将存储的访问令牌作为访问验证令牌。

在本技术方案中,若用户使用的服务涉及隐私或开放平台中的收费服务,则需要用户登录开放平台,并获取访问令牌,以标识该用户为授权用户;与此同时,开放平台中在有效期限内保存在访问令牌,若超过该有效期限,则访问令牌失效,以此保证用户的隐私和开放平台的数据安全。

进一步优选地,步骤S20中开发平台服务端对用户进行授权验证的步骤具体为:开放平台服务端根据预存用户注册列表对用户进行授权验证,所述预存用户注册列表中包括注册用户的应用标识信息及与之唯一关联的应用密钥;若授权验证成功,则将应用验证请求发送至应用端;若授权验证失败,则应用接入操作结束。

在本技术方案中,开放平台服务端根据接收到的应用请求对用户进行授权验证。

进一步优选地,在步骤S20中对用户进行授权验证之后,进一步包括数据平台对应用请求进行分析的步骤,具体包括:

S21 数据平台调用日志文件对该应用端发送应用请求的频率及应用请求来源进行分析;若应用端发送应用请求的频率超过预设频率或应用请求来源于非法渠道,则应用接入操作结束。

在本技术方案中,数据平台对应用端发送应用请求的频率及应用应用请求的来源进行分析,若调用异常或发现来源于非法渠道,直接锁定该用户,以保障用户账号的安全性能。

进一步优选地,在步骤S30中包括应用端根据应用验证请求进行身份验证的步骤,具体包括:

S31 接收应用验证请求,所述应用验证请求中包括访问令牌;

S32 判断应用接口级别;

S33 若应用接口级别为1,则进一步判断应用端中是否存在唯一标识应用端的应用标识信息;若存在,跳转至步骤S35;若不存在,则应用接入操作结束;

S34 若应用接口级别大于1,则对访问令牌进行验证;若验证成功,跳转至步骤S35;若验证不成功,将验证失败信息经由开放平台反馈至开放平台服务端;

S35 将应用密钥经由开放平台发送至开放平台服务端。

在本技术方案中,应用端根据应用接口级别对应用标识或访问令牌进行验证,之后才进入后续步骤,以此保障应用端与开放平台之间的正常通信。

进一步优选地,步骤S30中开放平台服务端对应用密钥进行认证的步骤具体为:根据应用标识信息查找到与之唯一关联的应用验证密钥,并将其与接收到的应用密钥进行比对,实现对应用密钥的验证;若验证成功,跳转至步骤S40;若验证失败,则应用接入操作结束。

在本技术方案中,开放平台服务端在应用端进行了应用认证之后对应用密钥进行验证,验证成功后建立与应用端之间的安全通信。

进一步优选地,步骤S40中根据应用密钥验证结果验证访问令牌的步骤具体为:根据应用标识信息查找到与之唯一关联的访问验证令牌,并将其与接收到的访问令牌进行比对,实现对访问令牌的验证;若验证成功,跳转至步骤S50;若验证失败,则应用接入操作结束。

进一步优选地,在步骤S40对访问令牌验证结果处理的过程中,若验证的结果为访问验证令牌/访问令牌不存在,则反馈验证失败信息至开放平台,开放平台根据该验证失败信息生成令牌授权请求发送至应用端,建立应用端与开放平台之间的会话连接,并将存储的访问令牌返回应用端。

在本技术方案中,在用户安全层面,若访问令牌验证失败,则开放平台重新请求会话连接,并将访问令牌反馈应用端,应用端根据该访问令牌重新发送应用请求。

进一步优选地,在步骤S40对访问令牌验证结果处理的过程中还包括对用户的安全进行验证的步骤,具体为:

S41 数据平台根据用户的应用标识信息在黑名单中进行检索;若用户的应用标识信息不在黑名单中,则该用户安全,否则应用接入操作结束。

在本技术方案中,在对访问令牌验证结果进行处理的过程中,数据平台还会对用户的安全性能进行进一步的验证,以此判定用户是否能够使用开放平台服务。

附图说明

下面将以明确易懂的方式,结合附图说明优选实施方式,对上述特性、技术特征、优点及其实现方式予以进一步说明。

图1为本发明中开放平台的应用接入方法流程一种实施方式示意图;

图2为本发明中开放平台的应用接入方法流程另一种实施方式示意图;

图3为本发明中开放平台的应用接入方法流程另一种实施方式示意图。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。

如图1所示为本发明提供的开放平台的应用接入方法一种实施方式流程示意图,应用于开放平台服务端,从图中可以看出,在该应用接入方法中包括:S10经由开放平台接收应用端发送的应用请求,应用请求中包括应用标识信息、应用密钥、访问令牌以及请求参数;S20根据接收的应用请求对用户进行授权验证,并根据授权验证结果将应用验证请求发送至应用端;S30接收应用端完成验证之后返回的应用密钥并对其进行验证;S40根据应用密钥验证结果进一步验证访问令牌;S50根据访问令牌验证结果及请求参数执行应用请求并将响应结果反馈至应用端。

具体来说,当用户需要在应用端进行应用操作时,则通过应用端发送应用请求,以此在通信安全层面,开放平台服务端首先根据该应用请求对用户进行授权验证;之后应用端进行应用验证;接着开放平台服务端对应用密钥进行认证,以此建立应用端与开放平台之间的安全通信。之后,在用户安全层面,对访问令牌进行进一步的验证,以此提高应用接入过程中用户的安全性能。可见,在本发明中,在开放平台上对职责进行了划分,并在安全层面(包括通信安全层面和用户安全层面)上进行了区分,以此保障用户的安全。

进一步来说,在步骤S10之前包括用户在开放平台中注册的步骤,具体包括:S01用户根据用户信息在开放平台中注册,用户信息包括用户名和登录密码;S02用户注册成功后,开放平台服务端为该用户分配应用标识信息及随机生成应用密钥;S03开放平台服务端将其反馈回开放平台中并进行显示,同时将应用标识信息及应用密钥进行关联存储,且将存储的应用密钥作为应用验证密钥,得到预存用户注册列表。

具体,在开放平台中接入应用之前,用户首先使用用户名和登录密码在开放平台中进行注册,以此保障应用端与开放平台之间的安全通信。在注册过程中,开放平台自动分配相应的应用标识(appkey),同时通过OAuth协议返回应用密钥(appsecret)以授权用户使用相关服务。更具体来说,在注册过程中,开放平台服务端中根据用提交的用户名和登录密码生成唯一标识该用户的应用标识信息,并随之随机生成应用密钥。

若用户使用的服务涉及隐私或开放平台中的收费服务,则需要用户登录开放平台,跳转至登录页面获取访问令牌(sessionkey)以标识该用户为授权用户,具体包括:S04接收用户登录开放平台后发送的访问令牌生成请求;S05随机生成访问令牌;S06限定访问令牌的有效期限;S07将应用标识信息与访问令牌关联存储(具体存储在开放平台SDK(Software Development Kit,软件开发工具包),且将存储的访问令牌作为访问验证令牌。若超过该有效期限,则开放平台中的访问令牌失效,以此保证用户的隐私和开放平台的数据安全。在一个具体实例中,开放平台中存储该访问令牌的有效期限为1天,则1天过后,该访问令牌失效。在其他实例中,访问令牌的有效期限根据实际情况进行设定,若还可以为2天、7天甚至更多。

在开放平台注册完成且获得了访问令牌之后,当需要进行应用操作时,则通过应用端将应用请求发送至开放平台。具体来说,在发送过程中,采用不可逆加密算法,如MD5(Message Digest Algorithm,消息摘要算法)算法对应用标识和应用密钥进行加密,以保证应用标识和应用密钥在传输过程中的安全。具体,在该过程中,发送端采用随机生成的密钥对数据摘要,并将原始数据、摘要信息以及密钥一并发送至接收端,接收端在接收到发送端发送的数据之后,使用该密钥对接收到的数据摘要,并将生成的摘要与接收到的摘要信息进行比对,若一致,则说明数据在传输过程中未被篡改。在这一过程中,发送端具体为开放平台,接收端具体为开放平台服务端。

开放平台服务端在接收到应用请求之后,对用户进行授权验证的步骤具体为:开放平台服务端根据预存用户注册列表对用户进行授权验证,预存用户注册列表中包括注册用户的应用标识信息及与之唯一关联的应用密钥;若授权验证成功,则将应用验证请求发送至应用端;若授权验证失败,则应用接入操作结束。

对上述实施方式进行改进,如图2所示,开放平台服务端对用户进行授权验证之后,数据平台对应用请求进行进一步分析,具体包括:S21数据平台调用日志文件(log文件)对该应用端发送应用请求的频率及应用请求来源进行分析;若应用端发送应用请求的频率超过预设频率或应用请求来源于非法渠道,则应用接入操作结束。在一个实例中,若调用次数异常,如每秒内超过300次并发(即将预设频率设定为每秒300次),则将该用户锁定,加入黑名单。在另一实例中,若判定出该应用请求来源于非法渠道,同样将该用户锁定,加入黑名单。当然,用户后续可对该锁定状态进行解锁或对黑名单进行申请解锁,以继续使用开放平台服务。在其他实例中,还可以根据实际情况将预设频率设定为其他值,如每秒200次、250次、350次甚至更多等。

若开放平台服务端对用户授权验证成功,且数据平台对其进行分析的结果为该用户安全,则开发平台服务端经由开放平台发送应用验证请求至应用端,应用端在接收到该验证请求,进行身份验证的步骤具体包括:S31接收应用验证请求,应用验证请求中包括访问令牌;S32判断应用接口级别(API(Application Programming Interface,应用程序编程接口)级别);S33若应用接口级别为1,则进一步判断应用端中是否存在唯一标识应用端的应用标识信息;若存在,跳转至步骤S35;若不存在,则应用接入操作结束;S34若应用接口级别大于1,则对访问令牌进行验证;若验证成功,跳转至步骤S35;若验证不成功,将验证失败信息经由开放平台反馈至开放平台服务端;S35将应用密钥经由开放平台发送至开放平台服务端。

应用端进行了身份认证之后,将应用密钥反馈给开放平台服务端,开放平台服务端接收到应用密钥并对其进行认证的步骤具体为:根据应用标识信息查找到与之唯一关联的应用验证密钥,并将其与接收到的应用密钥进行比对,实现对应用密钥的验证;若验证成功,跳转至步骤S40,以此建立应用端与开放平台服务端之间的安全通信;若验证失败,则应用接入操作结束。

开放平台服务端对应用密钥认证成功之后,在步骤S40中,开放平台服务端进一步对访问令牌进行认证,具体为:开放平台服务端根据应用标识信息查找到与之唯一关联的访问验证令牌,并将其与接收到的访问令牌进行比对,实现对访问令牌的验证;若验证成功,跳转至步骤S50;若验证失败,则应用接入操作结束。

在该应用安全层面开放平台服务端对访问令牌验证结果处理的过程中,若验证的结果为访问验证令牌/访问令牌不存在(这里的验证结果包括应用端进行应用验证的过程中对访问令牌的验证结果),则反馈验证失败信息至开放平台。开放平台接收到该验证失败信息之后,根据该验证失败信息生成令牌授权请求发送至应用端,建立应用端与开放平台之间的会话连接,并将存储的访问令牌返回应用端,以此应用端中重新生成应用请求发送至开放平台服务端。

对上述实施方式进行改进,如图3所示,在步骤S40中,对访问令牌验证结果处理的过程中还包括对用户的安全进行验证的步骤,具体为:S41数据平台根据用户的应用标识信息在黑名单中进行检索;若用户的应用标识信息不在黑名单中,则该用户安全,否则应用接入操作结束。

最后,访问令牌在验证成功之后,在应用请求响应层面,开放平台服务端根据请求参数调用应用端的应用接口执行应用请求,且将应用请求执行结果返回至开放平台应用端,结束开放平台的应用接入。

可见,在本发明中,在开放平台上对职责进行了划分(包括应用端、开放平台、开放平台服务端以及数据平台),并在安全层面(包括通信安全层面和用户安全层面)上进行了区分,同时引入了用户行为分析,确保应用接入过程中的安全性能。

应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1