【技术实现步骤摘要】
一种应用程序编程接口API权限管理方法与装置
本申请涉及计算机
,尤其涉及一种API权限管理方法与装置。
技术介绍
实际应用中,一些应用(Application,APP)开发者为了使得自己开发的APP能够得到用户更多的关注和使用,便将自己开发的APP植入到目前使用量较大的本地APP中。其中,可将植入的APP称为寄生APP,将本地APP称为宿主APP。例如,如图1a所示,图1a所显示的界面为宿主APP的用户界面,该用户界面中的“XX打车”这一图标对应的APP为寄生APP。若用户点击该图标,该寄生APP便会显示出“XX打车”这一寄生APP的用户界面,供用户使用。其中,寄生APP的正常运行,依赖于宿主APP中的容器应用程序编程接口(ApplicationProgrammingInterface,API)。当用户点击寄生APP的用户界面中的某一控件后,寄生APP便调用容器中相应的API,来完成相应的操作。沿用上例,如图1b所示的用户界面为“XX打车”这一寄生APP的用户界面。该界面中包含出发地点输入框、目的地点输入框、定位出发地点控件以及确定控件。若用户点击了定位出发地点这一控件,“XX打车”这一寄生APP便会调用容器中相应的API,以使得寄生APP能够调用设备中的全球定位系统(GlobalPositioningSystem,GPS)来定位当前设备所在的地理位置,在定位成功后,“XX打车”这一寄生APP便将定位出的出发地点显示在出发地点输入框中,此时的用户界面如图1c所示。现有技术中,有的宿主APP的开发者不对宿主APP容器中的API的调用设置任何限制,即只 ...
【技术保护点】
一种应用程序编程接口API权限管理方法,其特征在于,所述方法包括:第一应用APP接收第二APP发送的API调用请求;其中,所述第二APP是植入到第一APP中的寄生APP;根据所述API调用请求,确定所述第二APP所要调用的API的安全等级;根据所述安全等级,判断是否需要对所述第二APP进行鉴权;若是,则将所述API调用请求发送给服务器,以使得服务器根据所述API调用请求对所述第二APP进行鉴权,并根据所述服务器返回的鉴权结果允许或拒绝所述第二APP调用所述API;否则,允许所述第二APP调用所述API。
【技术特征摘要】
1.一种应用程序编程接口API权限管理方法,其特征在于,所述方法包括:第一应用APP接收第二APP发送的API调用请求;其中,所述第二APP是植入到第一APP中的寄生APP;根据所述API调用请求,确定所述第二APP所要调用的API的安全等级;根据所述安全等级,判断是否需要对所述第二APP进行鉴权;若是,则将所述API调用请求发送给服务器,以使得服务器根据所述API调用请求对所述第二APP进行鉴权,并根据所述服务器返回的鉴权结果允许或拒绝所述第二APP调用所述API;否则,允许所述第二APP调用所述API。2.如权利要求1所述的方法,其特征在于,根据所述API调用请求,确定所述第二APP所要调用的API的安全等级,具体包括:根据所述API调用请求中包含的第二APP所要调用的API的标识,确定所述第二APP所要调用的API的安全等级。3.如权利要求1所述的方法,其特征在于,根据所述安全等级,判断是否需要对所述第二APP进行鉴权,具体包括:若所述安全等级为第一等级,则判定不需要对所述第二APP进行鉴权;若所述安全等级不是第一等级,则判定需要对所述第二APP进行鉴权。4.如权利要求3所述的方法,其特征在于,当所述安全等级为第二等级时,所述API调用请求中携带所述第二APP所要调用的API的标识、所述第二APP的标识与所述第二APP的标识对应的令牌;将所述API调用请求发送给服务器,以使得服务器根据所述API调用请求对所述第二APP进行鉴权,具体包括:将所述API调用请求发送给服务器,以使得所述服务器根据API调用请求中的第二APP的标识,在所述服务器本地查找与所述第二APP的标识相对应的令牌,并判断查找到的令牌与所述API调用请求中携带的令牌是否相同,若是,则鉴权通过,否则,鉴权不通过。5.如权利要求3所述的方法,其特征在于,当所述安全等级为第三等级时,所述API调用请求中携带所述第二APP所要调用的API的标识、所述第二APP的标识与所述第二APP的标识对应的令牌;将所述API调用请求发送给服务器,以使得服务器根据所述API调用请求对所述第二APP进行鉴权,具体包括:将所述API调用请求发送给服务器,以使得所述服务器根据API调用请求中的第二APP的标识,在所述服务器本地查找与所述第二APP的标识相对应的令牌,并在所述服务器本地查找所述第二APP有权限调用的各API的标识,若查找到的令牌与所述API调用请求中的令牌相同,且查找到的各API的标识中存在所述API调用请求中携带的API的标识,则鉴权通过,否则,鉴权不通过。6.如权利要求3所述的方法,其特征在于,当所述安全等级为第四等级时,所述API调用请求中携带所述第二APP所要调用的API的标识、所述第二APP的标识、密文内容;其中,所述密文内容是第二APP采用私钥将所述API的标识和所述第二APP的标识进行加密得到的;将所述API调用请求发送给服务器,以使得服务器根据所述API调用请求对所述第二APP进行鉴权,具体包括:将所述API调用请求发送给服务器,以使得所述服务器根据API调用请求中的第二APP的标识,采用与所述第二APP的标识对应的公钥对所述密文内容进行验证,并在所述服务器本地查找所述第二APP有权限调用的各API的标识,若验证通过且查找到的各API的标识中存在所述API调用请求中携带的API的标识,则鉴权通过,否则,鉴权不通过。7.一种应用程序编程接口API权限管理方法,其特征在于,所述方法包括:第二应用APP确定所要调用的API的安全等级;根据确定出的安全等级,向第一APP发送API调用请求,以使得所述第一APP根据所述API调用请求,确定所述API的安全等级,并根据所述安全等级,判断是否需要对所述第二APP进行鉴权,若是,则将所述API调用请求发送给服务器,以使得服务器根据所述API调用请求对所述第二APP进行鉴权,并根据所述服务器返回的鉴权结果允许或拒绝所述第二APP调用所述API;若否,则允许所述第二APP调用所述API,其中,所述第二APP是植入到第一APP中的寄生APP。8.如权利要求7所述的方法,其特征在于,确定所要调用的API的安全等级,具体包括:根据所要调用的API的标识,确定所述API的安全等级。9.如权利要求7所述的方法,其特征在于,当确定出的所述安全等级为第一等级时,根据确定出的安全等级,向第一APP发送API调用请求,具体包括:将所述第二APP所要调用的API的标识携带在所述API调用请求中,并将所述API调用请求发送给所述第一APP,以使得所述第一APP在根据所述API请求中的所述API的标识确定出所述API的安全等级为第一等级时,确定不需要鉴权,并允许所述第二APP调用所述API。10.如权利要求7所述的方法,其特征在于,当确定出的所述安全等级为第二等级或第三等级时,根据确定出的安全等级,向第一APP发送API调用请求,具体包括:将所述第二APP所要调用的API的标识、所述第二APP的标识与所述第二APP的标识对应的令牌携带在所述API调用请求中,并将所述API调用请求发送给所述第一APP,以使得所述第一APP在根据所述API调用请求中的所述API的标识确定出所述API的安全等级为第二等级或第三等级时,将所述API调用请求发送给服务器,以便服务器对所述第二APP进行鉴权。11.如权利要求10所述的方法,其特征在于,将与所述第二APP的标识对应的令牌携带在所述API调用请求中,具体包括:若所述第二APP本地存在所述令牌且存在的所述令牌未过期,则将与所述第二APP的标识对应的令牌携带在所述API调用请求中;若所述第二APP本地不存在所述令牌或存在的所述令牌过期,则所述第二APP向服务器发送获取令牌请求,接收服务器返回的令牌,将接收到的令牌携带在所述API调用请求中。12.如权利要求7所述的方法,其特征在于,当确定出的所述安全等级为第四等级时,根据确定出的安全等级,向第一APP发送API调用请求,具体包括:第二APP采用私钥将所述API的标识和所述第二APP的标识进行加密得到密文内容;将所述第二APP所要调用的API的标识、所述第二APP的标识、密文内容携带在所述API调用请求中,并将...
【专利技术属性】
技术研发人员:华洁,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。