首页> 中国专利> 一种基于应用数字签名认证的开放API公共授权访问控制的方法

一种基于应用数字签名认证的开放API公共授权访问控制的方法

摘要

本发明提供了一种基于应用数字签名认证的开放API公共授权访问控制的方法。以联盟或者第三方公共服务平台的形式建立开放API的公共授权机制,只有经过联盟或者公共服务平台认证的Web应用或者应用软件产品才可以被授权使用联盟或者第三方公共服务平台内部的开放API。用户在使用Web应用或者应用软件产品进行网络API的调用时,Web应用或者应用软件产品客户端发起的API授权请求中带有其数字证书信息,公共授权服务器在对该数字证书进行判断之后,再完成API的授权。基于对Web应用或者应用软件产品的数字签名证书进行判断,对Web应用或者应用软件产品客户端使用开放API的行为进行授权,从而实现可信的访问控制。

著录项

  • 公开/公告号CN103248481A

    专利类型发明专利

  • 公开/公告日2013-08-14

    原文格式PDF

  • 申请/专利权人 工业和信息化部电信传输研究所;

    申请/专利号CN201210030329.3

  • 申请日2012-02-10

  • 分类号H04L9/32(20060101);H04L29/06(20060101);

  • 代理机构11278 北京连和连知识产权代理有限公司;

  • 代理人贺小明

  • 地址 100191 北京市海淀区花园北路52号电信研究院B座6层

  • 入库时间 2024-02-19 20:12:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-01-08

    专利权的转移 IPC(主分类):H04L9/32 登记生效日:20181220 变更前: 变更后: 申请日:20120210

    专利申请权、专利权的转移

  • 2019-01-08

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L9/32 变更前: 变更后: 申请日:20120210

    专利权人的姓名或者名称、地址的变更

  • 2016-04-06

    授权

    授权

  • 2013-09-11

    实质审查的生效 IPC(主分类):H04L9/32 申请日:20120210

    实质审查的生效

  • 2013-08-14

    公开

    公开

说明书

技术领域

本发明涉及通信技术领域,具体涉及一种基于应用数字签名认证的开 放API公共授权访问控制的方法。

背景技术

目前,开放已经成为移动互联网领域的主旋律。在移动终端智能化飞 速发展的同时,出现了明显的智能终端“云手机”化特征,移动互联网更 加强调开放平台对用户提供的云端服务的价值。移动应用的开发正在从以 智能终端平台为中心逐渐向以网络开放平台为中心转移。互联网开放平台 所聚集的开发者和应用的巨大力量已经开始释放。

然而,目前的开放环境还是不够成熟和完善,还存在着一些问题。互 联网开放平台企业正在形成一些小的、松散的联盟,他们希望建立多种方 式的合作,从而能够灵活有效地组合更丰富的应用,同时聚集和共享开发 者队伍,共享用户资源。通常,只有在这样的联盟内部才会实现用户的跨 平台一点登录以及面向Web应用的一站式用户资源的授权。而对于用户 来说,也希望在面对整个互联网资源时能够做到这些。

虽然全面的融合是今后移动互联网开放平台发展的大趋势,但目前互 联网开放平台各自为政,网络信息和能力开放的水平参差不齐,API的授 权方式不统一,Web应用和开放平台通过API进行互联互通的时候还存在 很多问题:一方面,应用开发者在使用这些开放能力时候,需要与各个开 放平台单独实现API的授权对接,大量重复的工作是影响应用开发创新的 障碍之一;另一方面,互联网上基于各类开放平台的Web应用不断出现, 但获得API授权的方式并不统一。由于目前的授权协议中缺乏对Web应 用的合法性或者可信性进行判断的机制,有些恶意第三方应用能够在用户 不知情或者用户不注意的情况下,完成API的授权,造成用户信息的安全 隐患。因此,构建可信计算环境,是解决移动互联网信息安全问题的主流 方向。

发明内容

针对现有技术中存在的缺陷和不足,本发明提出了一种基于应用数字 签名认证的开放API公共授权访问控制的方法,能够在对Web应用或者 应用软件产品使用联盟或者第三方公共服务平台内部的开放API的请求 授权之前,先对Web应用或者应用软件产品的数字签名证书进行判断。

为了达到上述目的,本发明提出了一种基于应用数字签名认证的开放 API公共授权访问控制的方法,包括:

步骤1:用户开始登录,由应用软件产品客户端向联盟或者第三方公 共服务平台的公共授权服务器发起授权请求;

步骤2:所述公共授权服务器根据所述应用软件产品客户端标识和数 字签名证书进行鉴权判断,如果客户端标识和数字签名证书在联盟或者第 三方公共服务平台的数据库中有备案记录,则执行步骤3,如果客户端标 识和数字签名证书在联盟或者第三方公共服务平台的数据库中没有备案 记录,则返回步骤1;

步骤3:所述公共授权服务器向所述应用软件产品客户端回复授权码;

步骤4:所述应用软件产品客户端使用所述授权码获取用户登录所述 应用软件产品需要访问的开放API的所属资源的授权令牌,并使用所述授 权令牌访问所述资源的开放API,从而完成用户登录。

进一步地,在所述步骤1之前,还包括步骤0,所述步骤0具体包括:

步骤01:联盟或者第三方公共服务平台经过对应用软件产品测试、认 证,为所述应用软件产品分配客户端标识及颁发数字签名证书,并将所述 客户端标识和数字签名证书在联盟或者第三方公共服务平台的数据库中 成对备案;

步骤02:将所述应用软件产品打包成安装包,并在所述安装包中集成 数字签名证书。

进一步地,与所述步骤01同时进行的还包括:

步骤01′:当所述应用软件产品需要使用的开放API的所属资源中至 少一个不属于联盟或者第三方公共服务平台的成员时,所述应用软件产品 不能获得联盟或者第三方公共服务平台颁发的数字签名证书。

进一步地,所述步骤02之后还包括:

步骤03:将所述安装包在联盟或者第三方公共服务平台的应用软件产 品库中备案,并随时给各应用商店供货;

步骤04:将所述安装包放在应用商店的架上销售;

步骤05:用户从应用商店购买应用软件产品,下载、运行所述安装包, 安装所述应用软件产品。

进一步地,所述步骤4具体包括如下步骤:

步骤41:所述应用软件产品客户端使用所述授权码向所述资源发起获 取所述资源的开放API授权令牌的请求;

步骤42:所述资源获知所述授权码是由联盟或者第三方公共服务平台 的公共授权服务器发放的,向所述应用软件产品客户端回复授权令牌,允 许所述应用软件产品客户端对所述资源的开放API的调用;

步骤43:所述应用软件产品客户端使用所述授权令牌访问所述资源的 开放API,从而完成登录过程。

进一步地,所述应用软件产品的代码中调用一个或多个需要授权的 API。

进一步地,所述步骤05中在安装所述应用软件产品时,提示用户所 述应用软件产品所带的数字签名证书的来源。

进一步地,所述授权令牌在有效期内。

本发明提供的基于应用数字签名认证的开放API公共授权访问控制 的方法,能够在对Web应用或者应用软件产品使用联盟或者第三方公共 服务平台内部的开放API的请求授权之前,先对Web应用或者应用软件 产品的数字签名证书进行判断,从而构建可信的计算机环境,实现可信的 访问控制。

下面结合附图,对本发明的具体实施方式作进一步的详细说明。对于 所属技术领域的技术人员而言,从对本发明的详细说明中,本发明的上述 和其他目的、特征和优点将显而易见。

附图说明

图1为本发明基于应用数字签名认证的开放API公共授权访问控制的 方法的流程示意图;

图2为本发明优选实施例的流程示意图。

具体实施方式

如图1所示,本发明提出了一种基于应用数字签名认证的开放API 公共授权访问控制的方法,包括:

步骤1:用户开始登录,由应用软件产品客户端向联盟或者第三方公 共服务平台的公共授权服务器发起授权请求;

在本步骤中,用户可以是智能移动终端的使用者,该用户在登录时, 应用软件客户端首先获取公共授权服务器的信息,并向联盟或者第三方公 共服务平台的公共授权服务器发起授权请求。

步骤2:公共授权服务器根据应用软件产品客户端标识和数字签名证 书进行鉴权判断,如果客户端标识和数字签名证书在联盟或者第三方公共 服务平台的数据库中有备案记录,则执行步骤3,如果客户端标识和数字 签名证书在联盟或者第三方公共服务平台的数据库中没有备案记录,则返 回步骤1;

本步骤可以根据步骤1中由应用软件客户端发出的授权请求中所带的 数字签名证书,在公共授权服务器的数据库中进行查询,根据查询结果判 定是否对该授权请求进行授权,从而在对应用软件产品的登录授权过程中 增加了对可信性进行判断的机制。

步骤3:公共授权服务器向应用软件产品客户端回复授权码;

本步骤是在步骤2中的鉴权判断后,公共授权服务器对于在数据库中 已有备案记录的应用软件产品客户端,认为是经过公共授权服务器认证 的,由公共授权服务器向该应用软件产品客户端回复授权码,从而确保经 过认证的应用软件产品客户端能够获得授权。

步骤4:应用软件产品客户端使用授权码获取用户登录应用软件产品 需要访问的开放API的所属资源的授权令牌,并使用授权令牌访问资源的 开放API,从而完成用户登录。

在本步骤中,用户登录应用软件需要访问的开放API的所属资源收到 由应用软件产品客户端发起的获取开放平台API的授权令牌的请求后,可 获知授权码是由联盟或者第三方公共服务平台的公共服务器发放的,认为 该客户端是可信任的客户端,则向该客户端发送授权令牌,允许该应用软 件产品客户端对该资源的开放API的调用,从而实现可信的访问控制。

本发明提供的基于应用数字签名认证的开放API公共授权访问控制 的方法,能够在对Web应用或者应用软件产品使用联盟或者第三方公共 服务平台内部的开放API的请求授权之前,先对Web应用或者应用软件 产品的数字签名证书进行判断,从而构建可信的计算机环境,实现可信的 访问控制。

在步骤1之前,还可以包括步骤0,步骤0具体包括:

步骤01:联盟或者第三方公共服务平台经过对应用软件产品测试、认 证,为应用软件产品分配客户端标识及颁发数字签名证书,并将客户端标 识和数字签名证书在联盟或者第三方公共服务平台的数据库中成对备案;

步骤02:将应用软件产品打包成安装包,并在安装包中集成数字签名 证书。

与步骤01同时进行的还可以包括:

步骤01′:当应用软件产品需要使用的开放API的所属资源中至少一 个不属于联盟或者第三方公共服务平台的成员时,应用软件产品不能获得 联盟或者第三方公共服务平台颁发的数字签名证书。

步骤02之后还可以包括:

步骤03:将安装包在联盟或者第三方公共服务平台的应用软件产品库 中备案,并随时给各应用商店供货;

步骤04:将安装包放在应用商店的架上销售;

步骤05:用户从应用商店购买应用软件产品,下载、运行安装包,安 装应用软件产品。

步骤4可以优选包括如下步骤:

步骤41:应用软件产品客户端使用授权码向资源发起获取该资源的开 放API授权令牌的请求;

步骤42:该资源获知授权码是由联盟或者第三方公共服务平台的公共 授权服务器发放的,向应用软件产品客户端回复授权令牌,允许应用软件 产品客户端对资源的开放API的调用;

步骤43:应用软件产品客户端使用授权令牌访问资源的开放API,从 而完成登录过程。

进一步地,应用软件产品的代码中可以调用一个或多个需要授权的 API。

进一步地,为了使用户更加安全可信地使用应用软件产品,步骤05 中在安装应用软件产品时,可以提示用户应用软件产品所带的数字签名证 书的来源。

进一步地,授权令牌在有效期内。

进一步地,应用软件产品需要使用的开放API的所属资源可以是开放 平台、运营商或其他资源。

以下为本发明提出的基于应用数字签名认证的开放API公共授权访 问控制的方法的一个优选实施例,在本实施例中,以联盟实验室的形式为 例,建立开放API的共享授权机制,只有经过联盟实验室认证的应用软件 产品才可以被授权使用联盟实验室内的开放API。在本实施例中,开发者 完成了一个应用软件的开发,该应用软件产品的代码中调用了一个或多个 需要授权的API,其中开放平台A的API为a,运营商B的API为b,并 且,开放平台A和运营商B都是联盟实验室的成员。如图2所示,一种基 于应用数字签名认证的开放API公共授权访问控制的方法,包括如下具体 步骤:

步骤S1:联盟实验室经过测试认证应用软件产品,为该应用软件产 品分配客户标识及颁发数字签名证书,并将客户标识和数字签名证书在联 盟实验室的数据库中成对备案;

步骤S2:将该应用软件产品打包成安装包,在安装包中集成数字签 名证书,并在联盟实验室的应用软件产品库中备案,随时给各应用商店供 货;

步骤S3:将该应用软件产品的安装包放在某应用商店的架上销售;

步骤S4:智能终端用户从应用商店中购买这个应用软件产品,下载、 运行安装包,在智能终端上安装该应用软件产品,在安装时提示用户该应 用软件产品所带的数字签名证书的来源;

步骤S5:用户开始登录步骤,客户端首先获取授权服务器信息,并 向联盟实验室的公共授权服务器发起授权请求;

步骤S6:联盟实验室的公共授权服务器根据该应用软件的客户端标 识和数字签名证书进行判断,决定是否给这个请求授权;

步骤S7:客户端标识和数字签名证书在联盟实验室有备案记录,说 明是在联盟实验室进行过应用软件产品测试认证的产品,由联盟实验室的 公共授权服务器向该应用软件的客户端回复授权码;

步骤S8:智能终端上的应用软件产品客户端使用授权码向开放平台 发起获取开放平台API授权令牌的请求,向运营商发起获取运营商API 授权令牌的请求;

步骤S9:开放平台A获知授权码是由联盟实验室发放的,为可信任 的客户端,则向应用软件产品客户端回复第一授权令牌,允许应用软件产 品客户端对API(a)的调用;同样,运营商B获知授权码是由联盟实验室发 放的,为可信任的客户端,则向应用软件产品客户端回复第二授权令牌, 允许软件产品客户端对API(b)的调用;

步骤S10:应用软件产品客户端获取了开放平台A的第一授权令牌和 运营商B的第二授权令牌,在这些令牌的有效期内,可以使用第一授权令 牌访问开放平台的API(a),并使用第二授权令牌访问运营商的API(b),从 而完成登录过程。

在上述实施例中,公共授权服务器对应用软件产品授权的过程可以进 一步包括:

当开放平台A和运营商B中的至少一个不属于联盟实验室的成员时, 该应用软件产品将不能获得联盟实验室颁发的数字签名证书;

当没有在公共授权服务器上获取授权码时,应用软件客户端可以再次 向公共授权服务器发起授权码的请求。

本发明提供的基于应用数字签名认证的开放API公共授权访问控制 的方法,能够在对Web应用或者应用软件产品使用联盟或者第三方公共 服务平台内部的开放API的请求授权之前,先对Web应用或者应用软件 产品的数字签名证书进行判断,使用户在可信的计算机环境下使用联盟或 者第三方公共服务平台内部的开放API,从而实现可信的访问控制。

虽然,本发明已通过以上实施例及其附图而清楚说明,然而在不背离 本发明精神及其实质的情况下,所属技术领域的技术人员当可根据本发明 作出各种相应的变化和修正,但这些相应的变化和修正都应属于本发明的 权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号