本申请涉及互联网领域,公开了一种开放平台脚本代码权限校验的方法。本申请提供的方法,引入一个中间平台的概念,第三方应用的脚本代码权限校验可以不再关注与开放平台之间复杂的交互,而是只与中间平台交互,进而使第三方应用用更少的代码和更短时间完成权限校验的开发工作,且对指定开放平台脚本代码权限校验的过程更快捷。
A method of checking the permission of script code in open platform
【技术实现步骤摘要】
一种开放平台脚本代码的权限校验方法
本申请涉及互联网领域,特别涉及一种开放平台脚本代码的权限校验方法。
技术介绍
现在很多互联网产品(例如,钉钉、微信等),都开发了自身的开放平台,第三方应用的开发人员可以基于这些开放平台开发他们自己的应用。开放平台通常要提供一些接口,约定一些调用接口的规范,然后用详尽的文档为第三方开发人员说明。对于第三方应用尤其是web应用,开放平台可能会开发一系列脚本代码(例如,JSSDK),这些脚本代码可以帮助第三方开发者调用起开放平台提供的一些平台业务相关或安全相关的功能,例如,获取钉钉里公司组织架构,微信分享等。在第三方应用里调用开放平台的脚本代码,因为涉及平台和安全性考虑,通常开放平台要求第三方应用完成权限校验。这个脚本代码的权限校验过程分为如下步骤(以JSSDK为例):1.第三方应用服务端根据在开放平台的注册信息,向开放平台请求访问令牌(accesstoken),其中,access_token具有一定时效并且不能频繁访问,需要第三方应用进行一些缓存设计;2.第三方应用服务端需要对access_token权限校验,通过前端网页URL和一些随机字段比如随机字符串和时间戳结合起来进行签名(比如sha1),得到标识(signature);3.第三方应用服务端将signature和用到的随机字段传递给前端网页4.前端网页加载开放平台提供的脚本(JavaScript,简称:JS)文件;5.调用放开平台的JS权限校验接口,传入signature,随机字段,需要使用的JSSDK接口列表,在开放平台的注册信息;6.通过开放平台JS提供的接口处理权限校验成功或者失败。例如,某公司开发内部系统用于移动办公,选择钉钉平台开发微应用,微应用本身是基于HTML5的网页,钉钉提供了一系列钉钉业务相关,安全相关的JSSDK,如果想要调用这些JSSDK,需要开发者进行权限校验。这个权限校验的过程需要应用的服务端与钉钉进行两次调用,再将产生的签名传递给前端,前端使用该签名,再结合其他参数调用钉钉的JSSDK鉴权接口,这个JSSDK的权限校验过程比较复杂繁琐,其中后端还要处理access_token的缓存,而且每个微应用都需要进行鉴权的前后端开发,引起较大的开发成本和时间。
技术实现思路
本申请的目的在于提供一种开放平台脚本代码的权限校验方法,在满足快捷按需地对某个特定的开放平台完成脚本代码权限校验的前提下,第三方应用可以使用更少的代码和投入更少的时间,就可以完成相关权限校验的开发工作,节约了大量的开发成本和时间。为了解决上述问题,本申请公开了一种开放平台脚本代码的权限校验方法,步骤如下:第三方应用前端加载中间平台脚本代码;该中间平台通过与开放平台的交互完成签名并传递给该前端;该中间平台的脚本代码加载该开放平台的脚本代码;该中间平台的脚本代码使用该签名调用该开放平台的脚本代码权限校验接口,完成权限校验。在一个优选例中,在该加载中间平台脚本代码的步骤之前,还包括,在该中间平台配置该第三方应用的应用信息。在一个优选例中,该应用信息包括应用标识和应用秘钥。在一个优选例中,在该加载中间平台脚本代码时,传入参数包括该应用程序标识和脚本代码接口列表。在一个优选例中,该传入参数通过拼接在统一资源定位符中的方式传入。在一个优选例中,该传入参数通过存入前端window对象来作为全局的对象的方式传入。在一个优选例中,该第三方应用前端加载中间平台脚本代码,进一步包括:该前端加载和执行中间平台脚本代码,获取该应用程序标识和脚本代码接口列表,与该中间平台的服务端通信,将该应用程序标识和脚本代码接口列表传递给该中间平台的服务端。在一个优选例中,该中间平台脚本代码通过动态添加脚本标签的方式加载该开放平台脚本代码。本申请还公开了一种脚本代码权限校验服务器,包括:存储器,用于存储计算机可执行指令;以及,处理器,用于在执行该计算机可执行指令时实现如前文描述的方法中的步骤。本申请还公开了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现如前文描述的方法中的步骤。本申请实施方式中,涉及的方法主要优点如下:1.建立统一开放平台脚本代码权限校验中间平台,使平台间的权限校验工作更简单、规范;2.第三方应用只需要引用一个脚本文件就能完成后续脚本代码鉴权操作;3.中间平台可以作为一个统一的公共平台支持接入多个开放平台,相当于第三方应用直接具有了多个平台上的脚本代码权限校验的功能;4.对于开放平台针对不同终端(例如,移动端、PC等)提供不同脚本语言的情况,中间平台可以统一判断终端情况加载相应的开放平台脚本语言,帮助第三方应用处理了多终端的问题;总之,传统的基于开放平台开发第三方应用对于脚本代码权限校验模块存在重复且复杂的开发工作;通过本申请涉及的方法,第三方应用的脚本代码鉴权可以不再关注与开放平台之间复杂的交互,而是通过本申请所涉及的方法来实现,从而减少了第三方应用在脚本代码权限校验模块的重复、繁琐开发成本,即:在实现快捷按需对某个特定的开放平台完成脚本代码权限校验的前提下,第三方应用技术人员可以使用更少的代码和更短的时间,就可以完成相关脚本代码权限校验的开发工作。本申请的说明书中记载了大量的技术特征,分布在各个技术方案中,如果要罗列出本申请所有可能的技术特征的组合(即技术方案)的话,会使得说明书过于冗长。为了避免这个问题,本申请上述
技术实现思路
中公开的各个技术特征、在下文各个实施方式和例子中公开的各技术特征、以及附图中公开的各个技术特征,都可以自由地互相组合,从而构成各种新的技术方案(这些技术方案均因视为在本说明书中已经记载),除非这种技术特征的组合在技术上是不可行的。例如,在一个例子中公开了特征A+B+C,在另一个例子中公开了特征A+B+D+E,而特征C和D是起到相同作用的等同技术手段,技术上只要择一使用即可,不可能同时采用,特征E技术上可以与特征C相组合,则,A+B+C+D的方案因技术不可行而应当不被视为已经记载,而A+B+C+E的方案应当视为已经被记载。附图说明图1是根据本申请第一实施方式的一种开放平台脚本代码的权限校验方法流程示意图图2是根据一种第三方应用对于开发平台JSSDK权限校验方法流程示意图图3是根据本申请一种开放平台JSSDK统一权限校验方法流程示意图图4是根据本申请一种开放平台JSSDK统一权限校验方法过程中涉及中间平台与第三方应用和开放平台信息处理和通信方法流程示意图具体实施方式在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。部分概念的说明:统一本文档来自技高网...
【技术保护点】
1.一种开放平台脚本代码的权限校验方法,其特征在于,步骤如下:/n第三方应用前端加载中间平台脚本代码;/n所述中间平台通过与开放平台的交互完成签名并传递给所述前端;/n所述中间平台的脚本代码加载所述开放平台的脚本代码;/n所述中间平台的脚本代码使用所述签名调用所述开放平台的脚本代码权限校验接口,完成权限校验。/n
【技术特征摘要】
1.一种开放平台脚本代码的权限校验方法,其特征在于,步骤如下:
第三方应用前端加载中间平台脚本代码;
所述中间平台通过与开放平台的交互完成签名并传递给所述前端;
所述中间平台的脚本代码加载所述开放平台的脚本代码;
所述中间平台的脚本代码使用所述签名调用所述开放平台的脚本代码权限校验接口,完成权限校验。
2.根据权利要求1所述的方法,其特征在于,在所述第三方应用前端加载中间平台脚本代码的步骤之前,还包括,在所述中间平台配置所述第三方应用的应用信息。
3.根据权利要求2所述的方法,其特征在于,所述应用信息包括应用标识和应用秘钥。
4.根据权利要求1所述的方法,其特征在于,在所述第三方应用前端加载中间平台脚本代码时,传入参数包括所述应用程序标识和脚本代码接口列表。
5.根据权利要求4所述的方法,其特征在于,所述传入参数通过拼接在统一资源定位符中的方式传入。
6.根据权利要求4所述的方法,...
【专利技术属性】
技术研发人员:安江,高翔,
申请(专利权)人:千寻位置网络有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。