CN108959864B - 功能调用鉴权、调用功能的方法和装置及权限信息建立方法 - Google Patents
功能调用鉴权、调用功能的方法和装置及权限信息建立方法 Download PDFInfo
- Publication number
- CN108959864B CN108959864B CN201710378380.6A CN201710378380A CN108959864B CN 108959864 B CN108959864 B CN 108959864B CN 201710378380 A CN201710378380 A CN 201710378380A CN 108959864 B CN108959864 B CN 108959864B
- Authority
- CN
- China
- Prior art keywords
- function
- app
- jsbridge
- information
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种对JsBridge功能的调用进行鉴权的方法,包括:监听APP发送的功能调用请求,其中,功能调用请求中包括APP请求调用的JsBridge功能的信息,功能调用请求用于调用JsBridge功能的信息对应的JsBridge功能;监听到功能调用请求后,依据功能调用请求和APP相对应的权限信息,确定APP是否有权限调用JsBridge功能的信息对应的JsBridge功能;其中,APP相对应的权限信息中存储有授权APP调用的JsBridge功能的信息;当确定APP有权限调用JsBridge功能的信息对应的JsBridge功能时,允许APP调用JsBridge功能。本申请还公开了与上述方法相对应的装置、调用JsBridge功能的方法和装置、以及权限信息的建立方法,从而实现了对H5调用JsBridge的行为的管理与限制,有利于提高客户端的信息安全性和运行性能。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种对JsBridge功能的调用进行鉴权的方法和装置、调用JsBridge功能的方法和装置、以及权限信息的建立方法。
背景技术
随着移动互联网技术发展,移动APP(全称Application,应用程序)的功能越来越强大。但由于传统的移动APP存在发版慢、用户更新覆盖率低、功能开发复杂度高等缺点,成本低、周期短、更新快、跨平台性更好的APP形式应运而生。
比较典型的包括Hybrid APP和H5APP两种形式。这两种APP都是通过H5调用JsBridge来实现某些H5无法直接实现的交互方式或特殊功能,从而兼具了移动APP用户交互体验好的优势和H5页面灵活性高、开发成本低、制作周期短的优势。
但是,由于JsBridge技术的开放性特点,只要遵循了Native和JS约定好的协议格式,H5就可以调用所提供的任何JsBridge功能,从而可能在信息安全性、运行性能等方面造成不良影响。这一问题在基于容器APP开发出的H5APP中尤为突出。
因此,如何对H5调用JsBridge的行为加以限制,以提高客户端的信息安全性和运行性能,成为本申请要解决的技术问题。
发明内容
本申请实施例提供一种对JsBridge功能的调用进行鉴权的方法和装置,旨在提高客户端的信息安全性和运行性能。
本申请实施例还提供一种调用JsBridge功能的方法和装置,旨在提高客户端的信息安全性和运行性能。
本申请实施例还提供一种权限信息的建立方法,旨在提高客户端的信息安全性和运行性能。
本申请实施例采用下述技术方案:
第一方面,本申请实施例提供一种对JsBridge功能的调用进行鉴权的方法,包括:
监听功能调用请求,所述功能调用请求中包括发送所述功能调用请求的APP请求调用的JsBridge功能的信息;
依据监听到的所述功能调用请求和所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能;其中,所述权限信息中存储有授权所述APP调用的JsBridge功能的信息;
当确定所述APP有权限调用所述JsBridge功能时,允许所述APP调用所述JsBridge功能。
优选地,在本申请实施例第一方面提供的方法中,所述功能调用请求中还包括所述APP的域名信息和APP标识符信息,
则,在依据监听到的所述功能调用请求和与所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能之前,所述方法还包括:
依据所述APP的域名信息和APP标识符信息,确定所述APP相对应的权限信息。
优选地,在本申请实施例第一方面提供的方法中,依据所述APP的域名信息和APP标识符信息,确定所述APP相对应的权限信息,具体包括:
当缓存中未存有所述APP相对应的权限信息时,向权限信息数据库发送获取权限信息的请求;其中,所述获取权限信息的请求中包括所述APP的域名信息和APP标识符信息;
将接收到的权限信息确定为所述APP相对应的权限信息。
优选地,在本申请实施例第一方面提供的方法中,依据监听到的所述功能调用请求和与所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能,具体包括:
对所述功能调用请求进行解析,确定与所述功能调用请求中所包括的JsBridge功能的信息相对应的功能标识;
确定所述APP相对应的权限信息中是否包含所述功能标识;
当所述权限信息中包含所述功能标识时,确定所述APP有权限调用所述JsBridge功能。
优选地,在本申请实施例第一方面提供的方法中,所述功能调用请求中包括的所述JsBridge功能的信息与权限字符串具有映射关系,
则,依据监听到的所述功能调用请求和与所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能,具体包括:
依据所述APP请求调用的JsBridge功能的信息,确定与该JsBridge功能的信息具有映射关系的权限字符串;
当所述权限信息中包含所述权限字符串时,确定所述APP有权限调用所述JsBridge功能。
优选地,在本申请实施例第一方面提供的方法中,依据所述APP请求调用的JsBridge功能的信息,确定与该JsBridge功能的信息具有映射关系的权限字符串,具体包括:
当缓存中未存有所述JsBridge功能的信息与所述权限字符串的映射关系时,向映射关系数据库发送获取映射关系的请求;其中,所述获取映射关系的请求中包括所述APP的域名信息和APP标识符信息,
依据接收到的所述映射关系,确定与该JsBridge功能的信息具有映射关系的权限字符串。
优选地,在本申请实施例第一方面提供的方法中,所述APP相对应的权限信息的建立,包括以下步骤:
权限信息数据库接收到注册APP的请求后,生成所述APP的域名信息和APP标识符信息;
接收申请JsBridge功能权限的请求;其中,所述申请JsBridge功能权限的请求中包括请求授权调用的JsBridge功能的信息;
建立与所述APP的域名信息和APP标识符信息相对应的权限信息,并将授权所述APP调用的JsBridge功能的信息存储在所述权限信息中。
第二方面,本申请实施例还提供一种调用JsBridge功能的方法,包括:
APP发送功能调用请求,所述功能调用请求中包括所述APP请求调用的JsBridge功能的信息;
当依据所述功能调用请求和所述APP相对应的权限信息,允许所述APP调用所述JsBridge功能时,所述APP调用所述JsBridge功能的信息对应的JsBridge功能;其中,所述APP相对应的权限信息中存储有授权所述APP调用的JsBridge功能的信息。
第三方面,本申请实施例还提供一种权限信息的建立方法,包括:
权限信息数据库接收到注册APP的请求后,生成所述APP的域名信息和APP标识符信息;
接收申请JsBridge功能权限的请求;其中,所述申请JsBridge功能权限的请求中包括请求授权调用的JsBridge功能的信息;
建立与所述APP的域名信息和APP标识符信息相对应的权限信息,并将所述APP授权调用的JsBridge功能的信息存储在所述权限信息中;其中,所述权限信息用于结合依据监听到的所述APP发送的功能调用请求,确定所述APP是否有权限调用所述JsBridge功能的信息对应的JsBridge功能。
第四方面,本申请实施例还提供一种对JsBridge功能的调用进行鉴权的装置,包括:
监听模块,用于监听功能调用请求,所述功能调用请求中包括发送所述功能调用请求的APP请求调用的JsBridge功能的信息;
鉴权模块,用于依据监听到的所述功能调用请求和所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能;其中,所述权限信息中存储有授权所述APP调用的JsBridge功能的信息;
允许调用模块,用于当确定所述APP有权限调用所述JsBridge功能时,允许所述APP调用所述JsBridge功能。
优选地,在本申请实施例第四方面提供的装置中,所述装置还包括:
权限信息确定模块,用于依据所述APP的域名信息和APP标识符信息,确定所述APP相对应的权限信息;其中,所述APP的域名信息和APP标识符信息包含在所述功能调用请求中。
第五方面,本申请实施例还提供一种调用JsBridge功能的装置,包括:
请求发送模块,用于发送功能调用请求,所述功能调用请求中包括APP请求调用的JsBridge功能的信息;
调用模块,用于当依据所述功能调用请求和所述APP相对应的权限信息,允许所述APP调用所述JsBridge功能时,调用所述JsBridge功能的信息对应的JsBridge功能;其中,所述APP相对应的权限信息中存储有授权所述APP调用的JsBridge功能的信息。
第五方面,本申请实施例还提供一种对JsBridge功能的调用进行鉴权的方法,包括:
监听功能调用请求,所述功能调用请求中包括发送所述功能调用请求的APP请求调用的JsBridge功能的信息;
确定所述APP是否有权限调用所述JsBridge功能;
当确定所述APP有权限调用所述JsBridge功能时,允许所述APP调用所述JsBridge功能。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
APP发出功能调用请求并被监听到后,依据APP相对应的权限信息和由功能调用请求携带的、APP请求调用的JsBridge功能的信息,确定该APP是否有权限调用JsBridge功能的信息对应的JsBridge功能。当确定APP有权限调用所述JsBridge功能的信息对应的JsBridge功能时,允许APP调用上述JsBridge功能。采用上述方式,将请求调用的JsBridge功能的信息与权限信息中存储的已授权的JsBridge功能的信息相比对,使得H5只能调用已获得授权的JsBridge功能,从而实现了对H5调用JsBridge功能的操作的管理与限制,进而有利于提高客户端的信息安全性和运行性能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为H5页面通过JS调用JsBridge功能的框架示意图;
图2为本申请的一种对JsBridge功能的调用进行鉴权的方法的流程示意图;
图3为本申请的第二种对JsBridge功能的调用进行鉴权的方法的流程示意图;
图4为本申请的第三种对JsBridge功能的调用进行鉴权的方法的流程示意图;
图5为本申请的第四种对JsBridge功能的调用进行鉴权的方法的流程示意图;
图6为本申请的建立用于对JsBridge功能的调用进行鉴权的权限信息的建立流程示意图;
图7为本申请的对JsBridge功能的调用进行鉴权的装置的结构示意图;
图8为本申请的调用JsBridge功能的装置的结构示意图;
图9为H5APP调用容器APP提供的JsBridge的鉴权的框架示意图;
图10为H5APP开发过程请求JsBridge授权的流程示意图;
图11为H5APP运行过程中进行鉴权的流程示意图;
图12为H5APP运行过程中进行鉴权的另一流程示意图。
具体实施方式
为了方便理解本申请实施例,在此先介绍本申请中引入的几个要素。
JsBridge:Android和IOS客户端代码统称Native代码,JsBridge是用于实现Native跟JS(JavaScript的缩写)交互的一套机制,相当于Native与JS之间的通信工具。Native中的部分功能封装成JsBridge供H5页面调用,以便实现H5页面无法直接实现的交互方式和特殊功能。在本申请中,只要是能够实现原生代码和脚本代码之间的交互和通信的工具,都可理解为本申请中所称的JsBridge,所对应的功能均可理解为本申请中所称的JsBridge功能。
H5:HTML5的简称,万维网的核心语言、标准通用标记语言下的一个应用超文本标记语言(HTML)的第五次重大修改。H5页面是一种集文字、图片、音乐、视频、链接等多种形式的展示页面,丰富的控件、灵活的动画特效、强大的交互应用和数据分析,高速低价的实现信息传播,非常适合通过移动智能终端进行展示、分享。
容器APP:能够提供H5运行生态环境的移动APP,提供了强大的JsBridge群以扩展H5的功能,允许第三方在其上开发H5页面。容器APP提供了供第三方开发者开发H5页面的平台,将H5页面无法直接实现的交互方式和特殊功能封装成JsBridge供H5页面调用;H5APP在容器APP中运行,通过调用容器APP提供的强大的JsBridge功能群扩展了H5的功能。
Hybrid App:一种混合模式的移动APP,介于Native SDK和Web App这两者之间,兼具Native SDK良好用户交互体验的优势和Web App跨平台开发的优势。Hybrid App采用Native和H5混合开发,H5需要调用Native实现某些功能,Native中也提供了很多JsBridge供H5调用,例如,在需要实现硬件陀螺仪、气压感应、镜头、麦克风等H5无法直接实现的交互形式或功能等,Hybrid APP中的H5页面都可通过调用Native提供的JsBridge功能来实现。运行在Hybrid App上的H5与普通H5页面的主要区别在于:Hybrid APP的H5的某些功能由于调用了JsBridge,因此单纯运行在浏览器中时某些功能无法生效。
H5APP:与Hybrid APP类似,区别在于:往往Hybrid APP中的H5都是Hybrid APP的开发者自己开发,是Hybrid APP的一部分;而H5APP是基于容器APP进行开发的,容器APP提供让第三方开发者在其上开发H5页面的平台,每个由第三方开发者开发、遵守了容器APP的管理规则、且有独立功能的H5页面即为H5APP。
SDK:软件开发工具包,全称Software Development Kit。SDK指被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
在现有技术中,Hybrid APP和H5APP两种APP都通过H5调用JsBridge来实现某些H5无法直接实现的交互方式或特殊功能,从而兼具了移动APP用户交互体验好的优势和H5页面灵活性高、开发成本低、制作周期短的优势。
图1给出了H5页面通过JS调用JsBridge功能的框架示意图。客户端的Android系统提供了JAVA与JS交互的接口,IOS系统也提供了OC与JS交互的接口,Android和IOS客户端代码统称Native代码。JS和Native代码交互的技术称为JsBridge。客户端将特定功能封装成JsBridge,H5通过JS调用相应JsBridge来实现这些功能,如需启用陀螺仪、气压感应、摄像头、麦克风等硬件或者Native实现的功能等。H5通过JS发送的JsBridge协议应遵循Native和JS约定好的协议格式,以便Native对协议进行解析。
由于JsBridge技术的开放性特点,只要遵循了Native和JS约定好的协议格式,H5就可以调用Native所提供的任何JsBridge功能,从而可能在信息安全性、运行性能等方面造成不良影响。由于平台型的容器APP会向第三方提供JsBridge功能,因此,这一问题在基于容器APP开发出的H5APP中尤为突出。
例如,容器APP提供了一个LBS定位的JsBridge功能,某导购页面的H5开发者在其业务所需范围内本无需使用定位功能,但该开发者从其他途径了解到了LBS定位的JsBridge协议,便可在其开发的页面中“偷偷”调用LBS定位的JsBridge功能,以便收集用户的位置信息。这就造成了用户信息的泄露,影响用户信息的安全性。
再例如,容器APP提供了一个打赏类型的JsBridge功能,本意只是供内部使用,但由于JsBridge协议的开放性,外部的H5开发者若通过反编译等方式获知该打赏JsBridge的调用协议,便可以在其开发的页面中利用打赏功能非法牟利,从而给容器APP的运营方造成损失。
因此,本申请的技术目的就在于,对H5调用JsBridge的操作进行管理与限制,以提高客户端的信息安全性和运行性能。
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
如图2所示,本申请实施例提供了一种对JsBridge功能的调用进行鉴权的方法,适用于Native SDK,包括:
S101:监听APP发送的功能调用请求;其中,功能调用请求中包括APP请求调用的JsBridge功能的信息,功能调用请求用于调用JsBridge功能的信息对应的JsBridge功能;
S102:判断是否监听到上述功能调用请求;若未监听到,则返回步骤S101继续监听;若监听到,则执行步骤S103;
S103:监听到功能调用请求后,依据功能调用请求和APP相对应的权限信息,确定APP是否有权限调用JsBridge功能的信息对应的JsBridge功能;其中,APP相对应的权限信息中存储有授权APP调用的JsBridge功能的信息;
S104:当确定APP有权限调用JsBridge功能的信息对应的JsBridge功能时,允许APP调用JsBridge功能。
本申请中所称的APP包括通过网页(例如,H5页面)调用JsBridge功能以实现相应功能的APP,例如,Hybrid APP和H5APP等。
Native SDK执行步骤S101对APP发送的功能调用请求进行持续监听;一旦APP发出功能调用请求,Native SDK对该功能调用请求进行拦截,并执行步骤S103依据APP相对应的权限信息和请求调用的JsBridge功能的信息,确定该APP是否有权限调用JsBridge功能的信息对应的JsBridge功能。当确定APP有权限调用所述JsBridge功能的信息对应的JsBridge功能时,执行步骤S104允许APP调用上述JsBridge功能;当确定APP无权限调用所述JsBridge功能的信息对应的JsBridge功能时,执行步骤S107拒绝APP调用上述JsBridge功能,参见图4所示。采用上述方式,包含有H5页面的APP对JsBridge功能的调用受到了Native SDK的管控,由Native SDK鉴权通过后方可调用。因此,H5只能调用已获得授权的JsBridge功能,从而实现了对H5调用JsBridge功能的操作的管理与限制,从而有利于提高客户端的信息安全性和运行性能。
APP发送的功能调用请求,通常是由APP中包含的页面(例如,H5页面)向JS SDK发送的,以JsBridge协议的形式体现,希望通过JS调用Native JsBridge中的JsBridge功能。JS SDK直接面向开发者,对JsBridge协议进行封装,并透传参数和Appkey。Native SDK监听到APP发送的功能调用请求后,对该请求进行拦截,而不允许直接调用Native JsBridge中的JsBridge功能,直至确认APP有权限调用所请求的JsBridge功能。
APP发送的功能调用请求中,会包括APP请求调用的JsBridge功能的信息。功能调用请求通常以JsBridge协议的形式体现,请求调用的JsBridge功能的信息可以采用协议中的指定字符串、指定字段或其组合等作为功能标识来表现,也可以采用预设的规则或映射关系来体现。只要是Native和JS约定好、Native SDK能够解析,并且能够定位到唯一确定的JsBridge功能的信息即可,相对应地,权限信息中也采用这种约定的方式对已授权的JsBridge功能的信息进行记录。
需要说明的是,本申请各实施例中所称的JsBridge功能的信息是一种对具体JsBridge功能的描述方式,这种描述方式由Native和JS约定,并同时应用在APP发送的功能调用请求和存储在权限信息数据库中的权限信息中。JsBridge功能的信息可能对应到一种具体的JsBridge功能,也可能对应到多种具体的JsBridge功能。下面将详细举例说明。
(一)获取功能调用请求中携带的JsBridge功能的信息的第一种方式在于:直接从功能调用请求(可体现为JsBridge协议的形式)中解析出功能标识。
参见图4所示,在执行步骤S1031对功能调用请求进行解析,确定出与所携带的JsBridge功能的信息相对应的功能标识时,可以约定直接用JsBridge的协议头部分或其组合作为功能标识。例如,功能调用请求可表达为:hybrid://class:963833/method,按照Native和JS的约定,从该请求中解析出“class+method”字符串作为功能标识,从而定位到唯一确定的JsBridge功能的信息。可以理解,在本例中,通过功能调用请求确定出的请求调用的JsBridge功能的信息与某一具体的JsBridge功能相对应。
在以上基础上,在进一步确认APP是否有权限调用所请求的JsBridge功能时,可以执行步骤1032判断APP相对应的权限信息中是否包含上述功能标识:若包含,则执行步骤S1033确定APP有权限调用JsBridge功能的信息对应的JsBridge功能,进而执行步骤S104允许APP调用JsBridge功能;若不包含,则执行步骤S1034确定APP无权限调用JsBridge功能的信息对应的JsBridge功能,进而执行步骤S107拒绝APP调用JsBridge功能。
(二)获取功能调用请求中携带的JsBridge功能的信息的第二种方式在于:提取功能调用请求(可体现为JsBridge协议的形式)中的关键字段、字符串或其组合,依据已建立的映射关系,映射为权限字符串。
例如,以上举例的JsBridge协议hybrid://class:963833/method,根据映射关系,该协议语句可被映射为权限字符串com.permission.class.method。具体地,参见图5所示,执行步骤S1035依据APP请求调用的JsBridge功能的信息,确定与该JsBridge功能的信息具有映射关系的权限字符串,再进而执行步骤S1036判断APP相对应的权限信息中是否包含权限字符串:若包含,则执行步骤S1033确定APP有权限调用JsBridge功能的信息对应的JsBridge功能,进而执行步骤S104允许APP调用JsBridge功能;若不包含,则执行步骤S1034确定APP无权限调用JsBridge功能的信息对应的JsBridge功能,进而执行步骤S107拒绝APP调用JsBridge功能。
在通过映射关系确定与JsBridge功能的信息具有映射关系的权限字符串时,若缓存(例如,由容器APP进行缓存)中已存储有映射关系,则可直接取得与功能调用请求相对应的权限字符串;若缓存中未存储有这一映射关系,则可向映射关系数据库发送获取映射关系的请求;其中,获取映射关系的请求中可包括APP的域名信息和APP标识符信息,以便获取到与发送功能调用请求的APP相对应的映射关系。
采用这种映射的方式,可以将多个JsBridge功能映射为同一个权限字符串,从而在进行授权时权限信息中只需存储一个权限字符串;而在对请求调用的JsBridge功能进行鉴权时,也可以减少接口单次请求的数据量。除此之外,采用这种映射为权限字符串的方式,还能够隐藏JsBridge协议与JsBridge功能之间的关联关系,即需要知晓映射关系才能确定出JsBridge协议与JsBridge功能的对应关系,能更有效的避免反编译,更有利于对H5调用JsBridge功能的管理与限制。可以理解,在本例中,通过功能调用请求确定出的请求调用的JsBridge功能的信息可能与多个不同的具体JsBridge功能相对应,这些具体JsBridge功能直接可能具有相关性,也可能并不相关。
例如,与录音有关的具体功能包括录音的开始、暂停、恢复、取消、结束、播放等等,每种功能对应的JsBridge协议都不相同,依据JsBridge协议解析出的功能标识也就不同。若在授权时,在权限信息中采用功能标识区分不同的JsBridge功能,则权限信息中需逐项纪录经过授权的不同JsBridge功能对应的不同功能标识。而若将多个相关联的功能映射为同一个权限字符串,如将所有录音相关的功能都映射为权限字符串“com.permition.media.group”,则权限信息中只需存储该权限字符串。在进行鉴权时,对于前者而言,依据不同的JsBridge协议将确定出不同的功能标识,进而需逐项确定这些功能标识是否包含在权限信息中;而对于后者而言,请求调用相关JsBridge功能的不同的JsBridge协议可能与同一个权限字符串建立有映射关系,通过查询映射关系即可确定与JsBridge协议相对应的权限字符串,从而只需确定这一权限字符串是否包含在权限信息中即可。
APP发送的功能调用请求中,除包括APP请求调用的JsBridge功能的信息,通常还会携带APP的标识信息,用以告知Native SDK申请调用JsBridge功能的主体。可以采用多种方式体现APP的标识信息,例如,采用绑定的APP的域名信息和APP标识符信息。当功能调用请求中包括APP的域名信息和APP标识符信息时,Native SDK在监听到功能调用请求之后,在确定APP是否有权限调用JsBridge功能的信息对应的JsBridge功能之前,还可依据APP的域名信息和APP标识符信息,确定APP相对应的权限信息。
进一步地,在确定APP相对应的权限信息时,可执行步骤S105判断缓存(例如,容器APP的缓存)中是否存储有APP相对应的权限信息:若缓存中有,则执行步骤S103,直接采用该权限信息进行鉴权;若缓存中没有,则执行步骤S106向权限信息数据库发送获取权限信息的请求,其中,获取权限信息的请求中包括APP的域名信息和APP标识符信息,并将接收到的权限信息确定为APP相对应的权限信息。
在本申请实施例中,APP相对应的权限信息中存储有授权APP调用的JsBridge功能的信息,用于判断APP是否有权限调用功能调用请求携带的JsBridge功能的信息对应的功能。这一权限信息通常是在APP开发时建立的,可以具体体现为权限列表的形式,也可以体现为其他的形式。以开发H5APP为例,开发者在开发H5APP时,若需要调用JsBridge,则在权限管理后台(可具体体现为权限信息数据库)注册,权限管理后台会为申请注册的H5APP分配一个唯一的appkey作为标识,并将H5APP的域名和appkey绑定;开发者可以选择需要使用的JsBridge功能/权限,以取得授权许可;权限管理后台会将开发者的H5APP与授权许可使用的功能/权限建立关联关系,具体可建立一个与开发者的H5APP相对应的权限信息,将授权许可该H5APP调用的功能/权限列入该权限信息中,以便在该H5APP需要调用相应JsBridge功能时鉴权用。
更具体地,在权限信息数据库中建立权限信息时,权限信息数据库接收到注册APP的请求后,生成APP的域名信息和APP标识符信息;接收申请JsBridge功能权限的请求,其中,申请JsBridge功能权限的请求中包括请求授权调用的JsBridge功能的信息;建立与APP的域名信息和APP标识符信息相对应的权限信息,并将授权APP调用的JsBridge功能的信息存储在权限信息中。
在开发H5APP时,为确保对JsBridge功能调用的鉴权能够顺利执行,在建立权限信息后,H5APP可通过JS SDK调用JsBridge,并在容器APP中进行联调,以确保发布的H5APP能够成功调用经过授权的JsBridge功能。
与权限信息的建立相类似,JsBridge功能/协议/关键字段/关键字符串与权限字符串的映射关系也是在开发APP时建立的。映射关系存储在映射关系数据库中,可以将映射关系数据库和/或权限信息数据库理解为权限管理后台的一部分,用于处理授权、权限相关的逻辑。在APP(例如,H5APP)发布后,如需对权限信息中授权调用的功能权限进行增加、删除、修改、查询等,均可通过访问权限管理后台中的权限信息实现,对映射关系的增删改查也与之类似。通常,只有平台型容器APP的开发者有权限对权限信息和映射关系进行编辑(包括增加、删除、修改等),以确保对JsBridge调用的管理和限制。
对于Hybrid APP而言,虽然由同一开发者采用Native和H5进行混合开发,但引入本申请实施例的鉴权方法,能够避免开发时的失误导致JsBridge的误调用(例如,误调用了对终端性能有不利影响的JsBridge),也能避免第三方通过反编译等方式对JsBridge进行非法调用,从而提高客户端的信息安全性和运行性能。
APP发出功能调用请求并被监听到后,依据APP相对应的权限信息和由功能调用请求携带的、APP请求调用的JsBridge功能的信息,确定该APP是否有权限调用JsBridge功能的信息对应的JsBridge功能。当确定APP有权限调用所述JsBridge功能的信息对应的JsBridge功能时,允许APP调用上述JsBridge功能。采用上述方式,将请求调用的JsBridge功能的信息与权限信息中存储的已授权的JsBridge功能的信息相比对,使得H5只能调用已获得授权的JsBridge功能,从而实现了对H5调用JsBridge功能的操作的管理与限制,从而有利于提高客户端的信息安全性和运行性能。
实施例2
本申请实施例还提供了一种调用JsBridge功能的方法,包括:
APP发送功能调用请求;其中,功能调用请求中包括APP请求调用的JsBridge功能的信息,功能调用请求用于调用JsBridge功能的信息对应的JsBridge功能;
当依据功能调用请求和APP相对应的权限信息,允许APP调用JsBridge功能时,APP调用JsBridge功能的信息对应的JsBridge功能;其中,APP相对应的权限信息中存储有授权APP调用的JsBridge功能的信息。
本实施例可以适用于APP(例如,H5APP和Hybrid APP)在运行中需调用JsBridge功能时的请求调用过程。本实施例与实施例1中Native SDK对JsBridge的调用进行鉴权的方法相对应,实施例1中的相关描述均适用于本实施例。
实施例3
本申请实施例还提供了一种权限信息的建立方法,参见图6所示,包括:
S201:权限信息数据库接收到注册APP的请求后,生成APP的域名信息和APP标识符信息;
S202:接收申请JsBridge功能权限的请求;其中,申请JsBridge功能权限的请求中包括请求授权调用的JsBridge功能的信息;
S203:建立与APP的域名信息和APP标识符信息相对应的权限信息,并将APP授权调用的JsBridge功能的信息存储在权限信息中;其中,权限信息用于在监听到APP发送的功能调用请求后,确定APP是否有权限调用JsBridge功能的信息对应的JsBridge功能。
本实施例适用于权限管理后台(此处体现为权限信息数据库),给出了权限管理数据库在接收到APP向权限管理后台请求JsBridge功能调用权限时建立权限信息的方法。APP可以在初始开发时请求授权(此时将在权限信息数据库中建立与该APP相对应的初始的权限信息),也可以在改版开发时请求授权(此时将在权限信息数据库中对与该APP相对应的权限信息进行修改,建立新的权限信息)。
权限信息中,JsBridge功能的信息可以表现为功能标识的形式,也可以表现为权限字符串的形式,即在权限信息中,可以以JsBridge协议头及其组合构成的功能标识的形式记录授权APP调用的JsBridge功能,也可以以与JsBridge协议建立有映射关系的权限字符串的形式记录。其中,权限字符串与具体的JsBridge功能的对应关系可以是一对一,也可以是一对多,这一映射关系(如果有)通常也在开发APP时建立,存储在映射关系数据库(可认为是权利管理后台的一部分)中。
本实施例中未尽之处,其余各实施例中的相关描述均适用。
实施例4
本申请实施例还提供了一种对JsBridge功能的调用进行鉴权的装置,参见图7所示,包括:
监听模块101,用于监听APP发送的功能调用请求;其中,功能调用请求中包括APP请求调用的JsBridge功能的信息,功能调用请求用于调用JsBridge功能的信息对应的JsBridge功能;
鉴权模块102,用于在监听到功能调用请求后,依据功能调用请求和APP相对应的权限信息,确定APP是否有权限调用JsBridge功能的信息对应的JsBridge功能;其中,APP相对应的权限信息中存储有授权APP调用的JsBridge功能的信息;
允许调用模块103,用于当确定APP有权限调用JsBridge功能的信息对应的JsBridge功能时,允许APP调用JsBridge功能。
进一步地,上述装置还可包括:
权限信息确定模块,用于依据APP的域名信息和APP标识符信息,确定APP相对应的权限信息;其中,APP的域名信息和APP标识符信息由功能调用请求携带。
本实施例为与实施例1相对应的装置实施例,可包含在Native SDK中。实施例1中的相关描述均适用于本实施例,此处不再赘述。
实施例5
本申请实施例还提供一种调用JsBridge功能的装置,参见图8所示,包括:
请求发送模块301,用于发送功能调用请求;其中,功能调用请求中包括APP请求调用的JsBridge功能的信息,功能调用请求用于调用JsBridge功能的信息对应的JsBridge功能;
调用模块302,用于当依据功能调用请求和APP相对应的权限信息,允许APP调用JsBridge功能时,APP调用JsBridge功能的信息对应的JsBridge功能;其中,APP相对应的权限信息中存储有授权APP调用的JsBridge功能的信息。
本实施例为与实施例2相对应的装置实施例,可包含在APP中。实施例2中的相关描述均适用于本实施例,此处不再赘述。
实施例6
本实施例以H5APP的开发和运行为例,详细说明对JsBridge的调用进行鉴权的具体实施过程。
本申请给出的对H5APP调用其容器APP提供的JsBridge的鉴权,可包括三部分的配合协作,分别是JS SDK、Native SDK和权限管理后台,三部分的协作关系如图9所示。其中:
JS SDK:用于直接面向开发者,对JsBridge协议做封装,透传参数和appkey;
Native SDK:用于进行鉴权逻辑处理,拦截JsBridge协议,根据H5APP域名和appkey从权限管理后台取得当前H5APP的权限列表,解析JsBridge协议并对比当前需调用的功能是否在权限列表,以决定该调用行为是否有权限进行;
权限管理后台(AuthManagerServer):用于处理权限相关逻辑,提供权限的增删改查功能,提供权限列表数据库。在需要时,还可提供映射关系数据库,用于保存JsBridge协议与存储在权限列表中的权限字符串的映射关系。
在H5APP的运行过程中,H5APP通过JS SDK调用Native JsBridge提供的JsBridge;Native SDK监听到调用请求后予以拦截(block),并进行用户验证(authcheck)提取出调用请求中携带的H5APP的域名和appkey信息,并与对应的权限列表(JsBridgeList)进行比对,确定请求调用的JsBridge是否在权限列表中;若请求调用的JsBridge在权限列表中,则允许H5APP调用JsBridge(continue)。
整个鉴权的实现可以细分为开发中和运行中两个过程。在开发过程中,第三方开发者需要遵循权限管理后台的流程和规则,在权限管理后台申请授权调用的JaBridge,并记录在权限列表中。开发者需要调用JsBridge时引入JS SDK,当页面开发完成后,开发者需要在权限管理后台注册,后台会给H5APP一个唯一的appkey作为标示,并将H5APP的域名和appkey绑定,开发者选择需要使用的权限,获取授权许可,这时权限管理后台会建立与开发者的H5APP相关联的权限列表,用于记录该H5APP已获取授权的JsBridge。具体过程可参见图10所示。
在运行过程中,参见图11所示,容器APP启动后,Native SDK会代理掉JS和Native交互的总入口,拦截所有JsBridge协议,如Android可以代理掉WebChromeClient的onJsPrompt方法,IOS代理掉JavaScriptCore。JS SDK被调用时,会自动获取当前页面的appkey追加到JsBridge协议里传给Native SDK,Native SDK根据appkey和域名发送请求,向权限管理后台查询当前H5APP的权限列表,如果当前被拦截的JsBridge协议在权限列表中,则允许调用,否则提示无权限。在向权限管理后台查询当前H5APP的权限列表时,若权限列表已经在缓存中,则可直接查询确认,否则需先向权限管理后台请求获取该权限列表,然后进行查询。
进一步地,对权限的描述可以直接用JsBridge的协议头部分,例如hybrid://class:963833/method,包含了class+method能定位到唯一的功能;也可以对协议做一次关联,例如将hybrid://class:963833/method映射成字符串com.permission.class.method。映射为字符串的好处是可以将多个功能用同一个权限声明,例如将录音的相关功能都描述成com.permission.media.group,包括录音、暂停、恢复、取消、播放等等功能,当第三方开发者需要开发一个音频页面时只需要授权一个com.permition.media.group就可以,同时能减少接口单次请求的数据量,并且JsBridge也不会暴露更加安全。相应的鉴权流程可参见图12所示。
本实施例的方案在原有Jsbrigde技术的基础上,可对H5调用JsBridge的行为进行鉴权,从而有利于提高客户端的信息安全性和运行性能。
实施例7
本申请实施例中还提供了一种对JsBridge功能的调用进行鉴权的方法,包括:
监听功能调用请求,功能调用请求中包括发送功能调用请求的APP请求调用的JsBridge功能的信息;
确定APP是否有权限调用JsBridge功能;
当确定APP有权限调用JsBridge功能时,允许APP调用JsBridge功能。
本实施例的原理和具体实施均可以参考上述各实施例中所给出的具体方案,此处不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种对JsBridge功能的调用进行鉴权的方法,其特征在于,包括:
监听功能调用请求,所述功能调用请求中包括发送所述功能调用请求的APP请求调用的JsBridge功能的信息;
依据监听到的所述功能调用请求和所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能;其中,所述权限信息中存储有授权所述APP调用的JsBridge功能的信息;
当确定所述APP有权限调用所述JsBridge功能时,允许所述APP调用所述JsBridge功能。
2.如权利要求1所述方法,其特征在于,所述功能调用请求中还包括所述APP的域名信息和APP标识符信息,
则,在依据监听到的所述功能调用请求和与所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能之前,所述方法还包括:
依据所述APP的域名信息和APP标识符信息,确定所述APP相对应的权限信息。
3.如权利要求2所述方法,其特征在于,依据所述APP的域名信息和APP标识符信息,确定所述APP相对应的权限信息,具体包括:
当缓存中未存有所述APP相对应的权限信息时,向权限信息数据库发送获取权限信息的请求;其中,所述获取权限信息的请求中包括所述APP的域名信息和APP标识符信息;
将接收到的权限信息确定为所述APP相对应的权限信息。
4.如权利要求1所述方法,其特征在于,依据监听到的所述功能调用请求和与所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能,具体包括:
对所述功能调用请求进行解析,确定与所述功能调用请求中所包括的JsBridge功能的信息相对应的功能标识;
确定所述APP相对应的权限信息中是否包含所述功能标识;
当所述权限信息中包含所述功能标识时,确定所述APP有权限调用所述JsBridge功能。
5.如权利要求1所述方法,其特征在于,所述功能调用请求中包括的所述JsBridge功能的信息与权限字符串具有映射关系,
则,依据监听到的所述功能调用请求和与所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能,具体包括:
依据所述APP请求调用的JsBridge功能的信息,确定与该JsBridge功能的信息具有映射关系的权限字符串;
当所述权限信息中包含所述权限字符串时,确定所述APP有权限调用所述JsBridge功能。
6.如权利要求5所述方法,其特征在于,依据所述APP请求调用的JsBridge功能的信息,确定与该JsBridge功能的信息具有映射关系的权限字符串,具体包括:
当缓存中未存有所述JsBridge功能的信息与所述权限字符串的映射关系时,向映射关系数据库发送获取映射关系的请求;其中,所述获取映射关系的请求中包括所述APP的域名信息和APP标识符信息,
依据接收到的所述映射关系,确定与该JsBridge功能的信息具有映射关系的权限字符串。
7.如权利要求1~6之任一所述方法,其特征在于,所述APP相对应的权限信息的建立,包括以下步骤:
权限信息数据库接收到注册APP的请求后,生成所述APP的域名信息和APP标识符信息;
接收申请JsBridge功能权限的请求;其中,所述申请JsBridge功能权限的请求中包括请求授权调用的JsBridge功能的信息;
建立与所述APP的域名信息和APP标识符信息相对应的权限信息,并将授权所述APP调用的JsBridge功能的信息存储在所述权限信息中。
8.一种调用JsBridge功能的方法,其特征在于,包括:
APP发送功能调用请求,所述功能调用请求中包括所述APP请求调用的JsBridge功能的信息;
当依据所述功能调用请求和所述APP相对应的权限信息,允许所述APP调用所述JsBridge功能时,所述APP调用所述JsBridge功能的信息对应的JsBridge功能;其中,所述APP相对应的权限信息中存储有授权所述APP调用的JsBridge功能的信息。
9.一种权限信息的建立方法,其特征在于,包括:
权限信息数据库接收到注册APP的请求后,生成所述APP的域名信息和APP标识符信息;
接收申请JsBridge功能权限的请求;其中,所述申请JsBridge功能权限的请求中包括请求授权调用的JsBridge功能的信息;
建立与所述APP的域名信息和APP标识符信息相对应的权限信息,并将所述APP授权调用的JsBridge功能的信息存储在所述权限信息中;其中,所述权限信息用于结合依据监听到的所述APP发送的功能调用请求,确定所述APP是否有权限调用所述JsBridge功能的信息对应的JsBridge功能。
10.一种对JsBridge功能的调用进行鉴权的装置,其特征在于,包括:
监听模块,用于监听功能调用请求,所述功能调用请求中包括发送所述功能调用请求的APP请求调用的JsBridge功能的信息;
鉴权模块,用于依据监听到的所述功能调用请求和所述APP相对应的权限信息,确定所述APP是否有权限调用所述JsBridge功能;其中,所述权限信息中存储有授权所述APP调用的JsBridge功能的信息;
允许调用模块,用于当确定所述APP有权限调用所述JsBridge功能时,允许所述APP调用所述JsBridge功能。
11.如权利要求10所述装置,其特征在于,所述装置还包括:
权限信息确定模块,用于依据所述APP的域名信息和APP标识符信息,确定所述APP相对应的权限信息;其中,所述APP的域名信息和APP标识符信息包含在所述功能调用请求中。
12.一种调用JsBridge功能的装置,其特征在于,包括:
请求发送模块,用于发送功能调用请求,所述功能调用请求中包括APP请求调用的JsBridge功能的信息;
调用模块,用于当依据所述功能调用请求和所述APP相对应的权限信息,允许所述APP调用所述JsBridge功能时,调用所述JsBridge功能的信息对应的JsBridge功能;其中,所述APP相对应的权限信息中存储有授权所述APP调用的JsBridge功能的信息。
13.一种对JsBridge功能的调用进行鉴权的方法,其特征在于,包括:
监听功能调用请求,所述功能调用请求中包括发送所述功能调用请求的APP请求调用的JsBridge功能的信息;
确定所述APP是否有权限调用所述JsBridge功能;
当确定所述APP有权限调用所述JsBridge功能时,允许所述APP调用所述JsBridge功能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710378380.6A CN108959864B (zh) | 2017-05-25 | 2017-05-25 | 功能调用鉴权、调用功能的方法和装置及权限信息建立方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710378380.6A CN108959864B (zh) | 2017-05-25 | 2017-05-25 | 功能调用鉴权、调用功能的方法和装置及权限信息建立方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108959864A CN108959864A (zh) | 2018-12-07 |
CN108959864B true CN108959864B (zh) | 2021-09-24 |
Family
ID=64494403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710378380.6A Active CN108959864B (zh) | 2017-05-25 | 2017-05-25 | 功能调用鉴权、调用功能的方法和装置及权限信息建立方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108959864B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109743359B (zh) * | 2018-12-13 | 2022-10-25 | 平安普惠企业管理有限公司 | Hybrid通讯处理方法、装置、计算机设备及存储介质 |
CN110619195B (zh) * | 2018-12-25 | 2021-07-06 | 北京时光荏苒科技有限公司 | 一种权限申请处理方法、装置、设备及存储介质 |
CN110515742A (zh) * | 2019-07-17 | 2019-11-29 | 网易(杭州)网络有限公司 | 终端中的通信方法及装置 |
CN110933087A (zh) * | 2019-12-02 | 2020-03-27 | 紫光云技术有限公司 | 一种基于数据桥接的敏感信息安全传输方法 |
CN111767109A (zh) * | 2020-06-30 | 2020-10-13 | 深圳前海微众银行股份有限公司 | 基于终端应用的h5页面显示方法、设备及可读存储介质 |
CN112600786B (zh) * | 2020-11-12 | 2022-06-07 | 湖南快乐阳光互动娱乐传媒有限公司 | 数据交互方法及装置 |
CN114547631B (zh) * | 2020-11-18 | 2023-03-28 | 成都鼎桥通信技术有限公司 | 终端控制方法、装置及终端 |
CN114356452B (zh) * | 2021-12-31 | 2024-03-19 | 必要鸿源(北京)科技有限公司 | 定位结果信息的获取方法、装置、电子设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9130932B2 (en) * | 2012-08-13 | 2015-09-08 | Cellco Partnership | Hybrid network application architecture |
US9047404B1 (en) * | 2013-03-13 | 2015-06-02 | Amazon Technologies, Inc. | Bridge to connect an extended development capability device to a target device |
CN104219078B (zh) * | 2013-06-04 | 2018-08-24 | 阿里巴巴集团控股有限公司 | 一种多运行时环境数据的处理方法和装置 |
CN105577710B (zh) * | 2014-10-09 | 2019-06-11 | 阿里巴巴集团控股有限公司 | 提供服务和获取服务的方法、装置和系统 |
-
2017
- 2017-05-25 CN CN201710378380.6A patent/CN108959864B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108959864A (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108959864B (zh) | 功能调用鉴权、调用功能的方法和装置及权限信息建立方法 | |
JP6092249B2 (ja) | 埋込まれたプロセス通信のための仮想チャネル | |
CN108923908B (zh) | 授权处理方法、装置、设备及存储介质 | |
CN104113551B (zh) | 一种平台授权方法、平台服务端及应用客户端和系统 | |
CN109977690A (zh) | 一种数据处理方法、装置和介质 | |
US20050278348A1 (en) | System and method for a Web service definition | |
CN104680075B (zh) | 用于来自高级别应用程序许可的细粒度访问控制的框架 | |
CN110650216B (zh) | 云服务请求方法和装置 | |
WO2013092661A1 (en) | Method, system and computer program product for providing composite web application | |
CN104903863A (zh) | 用于虚拟环境的控制反转组件服务模型 | |
CN111818035B (zh) | 一种基于api网关的权限验证的方法及设备 | |
CN110602043A (zh) | 一种面向移动应用的api网关实现系统及方法 | |
Puder et al. | Exposing native device APIs to web apps | |
CN111212027A (zh) | 一种基于企业浏览器实现的网络安全验证方法和装置 | |
Yuan et al. | Extricating iot devices from vendor infrastructure with karl | |
CN113127850A (zh) | 一种浏览器密码填充交互控制方法及装置 | |
CN110866229B (zh) | 一种多平台账户权限统一管理方法及系统 | |
US10257262B2 (en) | Mobile itinerant software agent carrying itinerary and data within | |
CN107566916A (zh) | 面向网络视频链接的访问过程控制方法及装置 | |
CN110569644B (zh) | 调用请求的处理、功能函数的调用方法、装置及设备 | |
US11609916B1 (en) | Robotics application development and monitoring over distributed networks | |
WO2023159900A1 (zh) | 远程开发的方法及装置 | |
CN114741733A (zh) | 代码处理方法、装置、设备、存储介质及程序产品 | |
CN118260734A (zh) | 一站式单点登录系统以及方法 | |
CN114861197A (zh) | 一种针对异构系统集成的接口验证方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |