CN101562621B - 一种用户授权的方法、***和装置 - Google Patents
一种用户授权的方法、***和装置 Download PDFInfo
- Publication number
- CN101562621B CN101562621B CN 200910143737 CN200910143737A CN101562621B CN 101562621 B CN101562621 B CN 101562621B CN 200910143737 CN200910143737 CN 200910143737 CN 200910143737 A CN200910143737 A CN 200910143737A CN 101562621 B CN101562621 B CN 101562621B
- Authority
- CN
- China
- Prior art keywords
- token
- user
- isp
- subscriber authorisation
- isv
- 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
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本申请公开了一种用户授权的方法、***和装置,应用于包括服务集成平台SIP、互联网服务提供商ISP、独立软件供应商ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;所述方法包括:所述SIP在所述ISP对用户身份的认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌;所述SIP根据所述用户授权令牌,处理所述ISV应用对所述Open API的调用请求。本申请对用户授权令牌的使用范围、使用类型和使用权限进行了细化,同时本申请支持用户异步授权的模式,提高***的安全性,并解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。
Description
技术领域
本申请涉及网络技术领域,特别是涉及一种用户授权的方法、***和装置。
背景技术
随着SOA(Service-Oriented Architecture,面向服务的体系结构)的不断成熟,REST(Representational State Transfer,表述性状态转移)风格的深入人心,使得互联网开放式服务逐渐成为互联网的新兴资源,即把网站的服务封装成一系列计算机易识别的数据接口后开放,供第三方开发者使用,所开放的API(Application Programming Interface,应用编程接口)就被称作Open API(开放式应用编程接口)。同时,随着Web 2.0应用的丰富化,ISV(Independent Software Vendor,独立软件供应商)利用网络有效的服务资源,针对客户的需求,设计出丰富多样的交互式应用,将不同服务提供商提供的服务组合在一起,产生聚合后的创新效应。
现有技术中,SIP(Service Integration Platform,服务集成平台)将多个ISP(Internet Service Provider,互联网服务提供商)的服务集成在统一的平台上,同时提供了统一的安全,计费,监控等非业务性功能,让ISP更集中专注于业务开发而无需关心非业务性框架设计,同时也为ISV开发提供了统一的流程,让ISV更容易集成多方提供的服务,采用统一的安全计费等流程,缩短开发时间,更高效的专注于利用服务集成来实现创新性应用。在国外已经有Facebook,亚马逊,Google等大网站成功的案例,ISV开发者针对这些Open API的网站来构建特色应用,吸引用户。
现有技术中Open API对用户授权的步骤包括:
1.ISV应用向ISP提供的Open API发起调用请求;
2.ISP返回给使用ISV应用的用户登录和授权页面;
3.用户登录并授权给ISV应用访问和操作用户信息;
4.ISV应用根据用户授权令牌调用Open API,访问和操作用户信息。
发明人在实现本申请的过程中,发现现有技术至少存在如下问题:
现有技术中,授权令牌中涉及的用户授权时效性和范围不明确,容易使得用户在不知情的情况下数据被修改或者访问。同时用户授权的有效期不明确和将包含用户信息的授权令牌作为参数传输,这样会降低***的安全性,对用户信息造成威胁。另外,现有技术中授权流程和服务访问流程结合紧密,当存在大数据量服务请求时,会由于数据转发造成服务效率低下。
发明内容
本申请提供一种用户授权的方法、***和装置,应用于包括服务集成平台SIP、互联网服务提供商ISP、独立软件供应商ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API,用于保护用户信息,提高***的安全性。
本申请提供一种用户授权的方法,应用于包括服务集成平台SIP、互联网服务提供商ISP、独立软件供应商ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;所述方法包括:
所述SIP在所述ISP对用户身份的认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌;
所述SIP根据所述用户授权令牌,处理所述ISV应用对所述Open API的调用请求。
用户同步授权模式下,所述SIP接收到ISP对用户身份的认证通过前,还包括:
所述SIP接收所述ISV应用对Open API的调用请求;
当所述SIP接收所述ISV应用对Open API的调用请求需要所述用户授权时,所述SIP向所述ISV应用发送用户登录授权页面地址,触发所述ISV应用和所述用户到所述ISP进行用户身份的认证。
所述ISV应用和所述用户到所述ISP进行用户身份的认证包括:
所述ISV应用接收所述SIP发送的用户登录授权页面地址;
所述ISV应用将所述用户登录授权页面地址、以及授权后返回页面地址和会话ID发送给所述用户;
所述用户根据所述登录授权页面地址,向所述ISP发送登录和授权请求,以及所述授权后返回页面地址和会话ID,请求所述ISP进行用户身份的认证。
所述创建所述用户授权令牌包括:
SIP根据Open API在SIP上的注册信息判断所述用户授权令牌的属性,所述用户授权令牌的属性包括用户授权令牌的使用范围、用户授权令牌的使用权限和用户授权令牌的使用类型;
SIP根据所述用户授权令牌的属性创建所述用户授权令牌,并且将所述用户授权令牌与用户登录名关联;
SIP将所述用户授权令牌和会话ID绑定。
所述创建所述用户授权令牌之前,还包括:
所述SIP接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及会话ID和用户登录名。
所述SIP根据所述用户授权令牌,处理所述ISV应用对所述ISP提供的Open API的调用请求包括:
所述SIP接收到ISV应用对所述ISP提供的Open API的调用请求,所述请求中携带会话ID;
当所述会话ID绑定用户授权令牌时,所述SIP根据所述会话ID获取所述用户授权令牌和用户登录名,将所述用户授权令牌和用户登录名以及调用请求向所述ISP提供的Open API转发;
所述SIP接收所述ISP提供的Open API发送的处理结果,将所述处理结果通过所述ISV应用转发给所述用户。
用户异步授权模式下,所述SIP接收到ISP对用户身份的认证通过前,还包括:
所述SIP接收所述ISV应用对Open API的用户身份认证请求以及携带的身份标识;
所述SIP向ISP转发所接收的所述ISV应用对Open API的用户身份认证请求以及携带的身份标识。
所述携带的身份标识具体为:用户的Open Id、免登Cookie、或交由ISV保管的用户在ISP中的用户密码。
所述创建所述用户授权令牌包括:
SIP根据Open API在SIP上的注册信息判断所述用户授权令牌的属性,所述用户授权令牌的属性包括用户授权令牌的使用范围、用户授权令牌的使用权限和用户授权令牌的使用类型;
SIP根据所述用户授权令牌的属性创建所述用户授权令牌和令牌票根,并且将所述用户授权令牌与用户登录名关联。
所述创建所述用户授权令牌之前,还包括:
所述SIP接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求和用户登录名。
所述SIP根据所述用户授权令牌,处理所述ISV应用对所述ISP提供的Open API的调用请求包括:
所述SIP接收ISP发送的验证授权令牌票根的请求,对令牌票根进行验证并向ISP返回验证令牌票根的结果。
本申请提供一种用户授权的***,应用于包括服务集成平台、ISP、ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;所述***包括:
服务集成平台,用于对客户端的认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌,处理ISV应用对ISP的调用请求;
ISV应用,用于调用ISP的请求;
ISP,用于验证客户端的身份以及执行调用请求。
本申请提供一种用户授权的服务集成平台,应用于包括服务集成平台、ISP、ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;所述服务集成平台包括:
请求接收模块,用于接收ISP对用户身份的认证结果;
令牌创建模块,用于当请求接收模块接收的ISP对用户身份的认证结果为认证通过时,创建用户授权令牌;
处理模块,用于根据所述用户授权令牌处理ISV应用对所述ISP提供的开放式应用编程接口Open API的调用请求。
所述令牌创建模块具体包括:
请求接收子模块,用于接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及用户登录名;
令牌属性判断子模块,用于根据Open API在SIP上的注册信息判断所述用户授权令牌的属性;
令牌创建子模块,用于根据所述令牌属性判断子模块判断的用户授权令牌的属性创建所述用户授权令牌。
用户同步授权模式下,还包括:
用户授权判断模块,用于根据请求接收模块接收的所述ISV应用对OpenAPI的调用请求,判断所述请求是否需要用户授权;
信息返回模块,当所述用户授权判断模块判断所述请求需要用户授权时,向ISV应用返回用户登录授权页面地址。
所述令牌创建子模块还用于:
将所述用户授权令牌和会话ID绑定,并与用户名关联。
所述处理模块具体用于:
当所述创建令牌子模块绑定了所述会话ID和用户授权令牌时,所述处理模块将所述用户授权令牌和用户登录名以及调用请求向所述ISP提供的OpenAPI转发。
用户异步授权模式下,
所述请求接收模块还用于:接收所述ISV应用对Open API的用户身份认证请求以及携带的身份标识;
所述处理模块还用于:向ISP转发所接收的所述ISV应用对Open API的用户身份认证请求以及携带的身份标识;
所述令牌创建子模块还用于:根据所述令牌属性判断子模块判断的用户授权令牌的属性创建所述用户授权令牌的令牌票根,并将用户授权令牌和用户名关联;
所述处理模块具体用于:接收ISP发送的验证授权令牌票根的请求,对令牌票根进行验证并向ISP返回验证令牌票根的结果。
本申请的技术方案中,对用户授权令牌的使用范围、使用类型和使用权限进行了细化,本申请同时支持用户异步授权的模式,提高***的安全性,并解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对本申请或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的一种用户授权方法的流程图;
图2为本申请实施例中的一种用户同步授权模式下的用户授权方法的流程图;
图3为本申请实施例中的一种用户同步授权模式下创建用户授权令牌方法的流程图;
图4为本申请实施例中的一种用户异步授权模式下的用户授权方法的流程图;
图5为本申请实施例中的一种用户异步授权模式下创建用户授权令牌方法的流程图;
图6为本申请实施例中的一种客户端插件更新法的流程图;
图7为本申请实施例中的一种用户异步授权模式下的用户授权方法的流程图;
图8为本申请实施例中的一种用户异步授权模式下的用户授权方法的流程图;
图9为本申请实施例中的一种用户授权***的结构示意图;
图10为本申请实施例中的一种服务集成平台的结构示意图;
图11为本申请实施例中的一种用户同步授权模式下的服务集成平台的结构示意图;
图12为本申请实施例中的一种用户异步授权模式下的服务集成平台的结构示意图;
具体实施方式
本申请的主要思想在于,服务集成平台SIP在互联网服务提供商ISP对用户身份的认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌;SIP根据用户授权令牌,处理ISV应用对所述ISP提供的OpenAPI的调用请求。
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
ISV应用为其用户提供各种各样的软件,例如电子传真,在线招聘工具、电子杂志以及在线交易等。服务集成平台SIP将ISV应用提供的各种软件集成在同一平台,使用ISV软件的用户可以只需登陆SIP并提供用户名和密码,就可以应用ISV应用提供的软件,而无需为了使用不同的软件登陆不同的网站。而对于ISP提供的Open API,当用户在SIP上使用ISV应用时,ISV应用通过调用相应的Open API,为用户提供所需的各种数据或网络服务。
本申请的一实施例中,本申请提供的用户授权方法所应用的互联网络中包括:用户、ISV应用、SIP和ISP提供的Open API。其中,ISV应用,用于为用户提供各种各样的应用软件。SIP,用于将由ISV应用提供的软件集成在同一平台上,使用户可以在此平台上应用不同的软件。ISP提供的Open API,用于向在SIP上使用ISV应用的用户提供各种数据或网络服务。该用户授权方法的流程图如图1所示,具体步骤为:
步骤101,SIP在ISP对用户身份的认证通过时,根据ISV应用调用的Open API的注册信息,创建用户授权令牌。
具体的,用户登陆SIP,使用SIP上ISV应用提供的软件。当SIP在ISP对用户身份的认证通过时,SIP创建与ISV应用所要调用的Open API的注册信息相匹配的用户授权令牌。
当ISV应用在SIP上提供软件时,ISV应用所要调用的各种Open API会在SIP上进行注册,其注册信息包括:
(1)Open API的业务分类信息。
例如,根据Open API所提供的电子传真业务、在线交易业务等不同业务,将Open API进行业务分类,确定Open API所属的业务分类。
(2)Open API的授权属性信息。
例如,根据Open API的授权属性,将不同Open API分为以下0~3四种类型:其中类型0是指不需要任何授权或验证的Open API,用于提供对无需用户授权的用户信息的操作功能;类型1是指需要对ISV应用的身份进行验证的Open API,用来验证该ISV应用是否属于SIP的合法用户;类型2是指在对ISV身份进行验证的基础上,需要对该Open API进行用户授权,用来提供对用户信息进行访问或修改等操作的功能;当确定Open API为该类型时,同时确认该Open API对应的用户授权令牌的使用类型是一次性令牌还是多次性令牌;类型3指在对ISV身份进行验证的基础上,可选的对该Open API进行用户授权,当不对该Open API进行用户授权时,该Open API只提供对无需用户授权的用户信息的操作功能,当对该Open API进行用户授权时,该Open API可以对需要用户授权的用户信息进行操作。
用户授权令牌的属性包括:用户授权令牌的使用范围、使用权限及使用类型。其中,用户授权令牌的使用范围,分为单个Open API、多个Open API等。用户授权令牌的使用权限,分为读权限、读写权限等。用户授权令牌的使用类型按使用次数可分为一次性令牌和多次性令牌等。SIP可以通过用户授权令牌的使用范围控制ISV应用调用Open API的个数,通过用户授权令牌的使用权限控制ISV应用对用户信息的操作权限,通过用户授权令牌的使用类型控制ISV应用调用Open API的次数。
另外,一次性令牌,表示该类型用户授权令牌只能够被使用一次,适用于对安全性要求极高的Open API。当该类型的用户授权令牌创建成功时,ISV应用只能调用集成在SIP上的Open API一次。多次性令牌,表示该类型的用户授权令牌能够被反复使用,适用于对安全性要求不高但对用户体验要求高的Open API。该类型的用户授权令牌在创建的时候,就被设定了令牌有效期,SIP通过控制该类型用户授权令牌的有效期控制该令牌的使用时间。多次性令牌有效期类型分为固定时长失效类和闲置固定时长失效类。
例如,当用户为在线交易的卖方,需要通过ISV应用调用ISP提供的OpenAPI对店铺内的商品进行修改时,SIP根据Open API的业务分类信息和授权属性信息,建立与该Open API注册信息相匹配的用户授权令牌,如创建的用户授权令牌的使用权限为读写权限,用户授权令牌的使用范围为多个OpenAPI,用户授权令牌的使用类型按使用次数为多次性令牌。
步骤102,SIP根据所述用户授权令牌,处理所述ISV应用对ISP提供的Open API的调用请求。
本申请实施例的技术方案中,对用户授权令牌的使用范围、使用类型和使用权限进行了细化,并根据用户授权令牌,处理ISV应用对ISP提供的OpenAPI的调用请求。另外,本申请同时支持用户异步授权的模式,提高***的安全性,并解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。
本申请的实施例中,首先描述本申请中的方法采用用户同步授权模式应用于互联网络时的具体实施方式。该网络中包括:用户、ISV应用、SIP和ISP提供的Open API。其中,ISV应用,用于为用户提供各种各样的应用软件。SIP,用于将由ISV应用提供的软件集成在同一平台上,使用户可以在此平台上应用不同的软件。ISP提供的Open API,用于向在SIP上使用ISV应用提供的软件的用户提供各种数据或网络服务。
本申请实施例中,当用户使用ISV应用时,用户对ISV应用授权,确认ISV应用可以对用户信息进行访问或修改等操作,并由SIP创建用户授权令牌,ISV应用调用集成在SIP上的Open API,为用户提供所需的服务。
具体的,如图2所示,为本申请采用用户同步授权模式时的方法流程图,包括以下步骤:
步骤201,用户使用ISV应用。
例如,用户作为卖家身份在在线交易的过程中,需要对自己提供的商品信息进行修改,则使用提供商品信息修改功能的ISV应用。
步骤202,ISV应用向集成在SIP上的Open API发送调用请求。
具体的,ISV应用根据用户的使用内容在众多Open API中选择对应的Open API并向其发送调用请求。例如,ISV应用在提供不同功能的Open API中,选择能够提供商品信息修改功能的Open API并向其发送调用请求。
步骤203,SIP接收ISV应用发送的调用请求,判断该调用请求是否需要用户授权。
具体的,当Open API在SIP上进行注册时会登记有关于该Open API的注册信息,注册信息中包括该Open API的业务分类信息和授权属性信息。当ISV应用调用集成在SIP上的Open API时,SIP根据该注册信息判断调用该OpenAPI是否需要用户授权,该用户授权是指用户是否允许Open API对用户信息进行访问或操作。对于不需要用户授权的Open API,可以在不经过用户允许的情况下直接对用户信息进行访问,如提供对卖家提供的商品信息进行浏览功能的Open API;对于需要用户授权的Open API,必须在经过用户允许的情况下对用户信息进行访问或操作,如提供对卖家提供的商品信息进行修改功能的Open API。
如果该调用不需要用户授权,则转到步骤216。
如果该调用需要用户授权,则转到步骤204。
步骤204,SIP向ISV应用发送用户登录授权页面地址。
其中,用户登录授权页面地址,用于用户登录并对ISV应用进行授权;例如,ISV应用调用的Open API为对卖家提供的商品信息进行修改功能的Open API时,SIP将用户登录授权页面地址发送给ISV应用。
步骤205,ISV应用接收SIP发送的用户登录授权页面地址后,向用户转发用户登录授权页面地址,同时携带授权后返回页面地址以及ISV应用提供的会话ID。
授权后返回页面地址,用于表示在ISP接收到令牌创建成功的消息以后需要返回给用户的页面地址;例如,ISV应用调用的Open API为对卖家提供的商品信息进行修改功能的Open API时,在ISP接收到令牌创建成功的消息后,需要向用户返回对商品信息进行修改的页面地址,该授权后返回页面地址对应的页面即授权后需要返回给用户的页面。
ISV应用提供的会话ID,由ISV应用随机进行会话ID的分配,用来唯一确定用户身份的标识,当SIP创建令牌时,将ISV应用提供的会话ID与用户授权令牌进行绑定,建立会话ID与用户授权令牌的对应关系,替代传递令牌,提高了安全性,降低了ISV应用对用户授权令牌的维护成本。
步骤206,用户在接收用户登录授权页面地址后,打开该页面并通过该页面向ISP提交登录和授权请求,同时携带授权后返回页面地址和ISV应用提供的会话ID。
步骤207,ISP接收用户提交的登录和授权请求,以及授权后返回页面地址和ISV应用提供的会话ID,对用户身份进行认证。
步骤208,当通过认证时,ISP向SIP发送创建用户授权令牌请求,携带用户登录名和ISV应用提供的会话ID。
步骤209,SIP接收ISP发送的创建用户授权令牌请求,根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、使用权限及使用类型,创建用户授权令牌,将创建的用户授权令牌存储在SIP并与会话ID进行绑定,具体的绑定形式为建立用户授权令牌与会话ID的对应关系。同时将用户授权令牌与接收到的用户登录名进行关联。该用户授权令牌具体可以为二进制文件。
步骤210,当创建用户授权令牌成功时,SIP向ISP返回用户授权令牌创建成功的消息。
步骤211,ISP接收到令牌创建成功的消息,根据在步骤207中接收的授权后返回页面地址,将与该授权后返回页面地址对应的授权后返回页面发送给用户。
步骤212,用户在授权后返回页面使用ISV应用。例如,当授权后返回页面为对商品信息进行修改的页面时,用户在该页面中对商品信息进行修改。
步骤213,ISV应用调用用户授权后的Open API,向SIP发送调用请求,在调用请求中携带ISV应用提供的会话ID。例如,用户在对自己提供的商品信息进行修改的过程中,使用提供商品信息修改功能的ISV应用,则ISV应用仍需调用对卖家提供的商品信息进行修改功能的Open API,该Open API之前已经过用户授权,为用户授权后的Open API。
步骤214,SIP接收ISV应用发送的调用请求,判断ISV应用提供的会话ID是否绑定了用户授权令牌。具体的,SIP可以根据已建立的用户授权令牌与会话ID的对应关系,判断是否存在与会话ID绑定的用户授权令牌。
步骤215,如果ISV应用提供的会话ID绑定了用户授权令牌,SIP将接收的ISV调用请求转发给ISP,携带根据用户授权令牌获得的用户登录名,
需要说明的是,在步骤215中,用户登录名在ISV应用调用Open API时不采用ISV参数传递用户登录名的方式,而由SIP根据用户授权令牌获得,并传递给ISP,从而保证用户登录名的真实性,防止ISV应用欺骗ISP获取非绑定的用户信息。
步骤216,ISP接收SIP转发的ISV调用请求,执行该调用请求。例如,ISV调用请求为修改商品信息的请求时,根据请求中携带的内容对需要修改的商品信息进行修改。
步骤217,ISP执行该调用请求后,将返回调用执行结果给SIP。例如,ISV调用请求为修改商品信息的请求时,ISP将对商品信息进行修改后的结果返回给SIP。
步骤218,SIP将ISP返回的调用执行结果转发给ISV应用。
步骤219,ISV应用将接收的调用执行结果展现给用户。至此,用户浏览到对商品信息进行修改后的修改结果。
其中,如图3所示,步骤209具体包括以下步骤:
步骤301,SIP根据SIP中Open API的注册信息确定用户授权令牌的使用范围。例如,根据Open API的注册信息中的业务分类信息,将用户授权令牌的使用范围确定为仅能使用一个Open API、或可以使用与该Open API相关的多个Open API等。
步骤302,SIP根据SIP中Open API的注册信息确定用户授权令牌的使用权限。例如,根据Open API的注册信息中的业务分类信息,将用户授权令牌的使用权限确定为仅具有读权限、或同时具有读写权限等。
步骤303,SIP根SIP中Open API的注册信息确定用户授权令牌的使用类型。例如,根据Open API的注册信息中的授权属性信息,将用户授权令牌的使用类型按照使用次数确定为一次性令牌和多次性令牌等。
步骤304,SIP创建用户授权令牌,关联ISP提供的用户登录名,并将用户授权令牌和ISV应用提供的会话ID绑定。
需要说明的是,本申请的实施例可以根据实际需要对各个步骤顺序进行调整。上述步骤301中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、步骤302中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用权限和步骤303中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用类型三个步骤之间没有必然的先后顺序,可以进行调整。
本申请实施例通过对用户授权令牌的使用范围、使用类型和使用权限进行了细化,明确了ISV应用对用户信息操作的权限、范围以及时效,提高***的安全性,为用户提供了良好的服务集成平台。
本申请的另一实施例中,为本申请中的方法采用用户异步授权模式应用于互联网络中。该网络中包括:用户、ISV应用、SIP和ISP提供的Open API。其中,ISV应用,用于为用户提供各种各样的应用软件。SIP,用于将由ISV应用提供的软件集成在同一平台上,使用户可以在此平台上应用不同的软件。ISP提供的Open API,用于向用户提供各种数据或网络服务。
本申请实施例中,当用户使用ISV应用时,用户对ISV应用授权并由SIP创建用户授权令牌,ISV应用调用集成在SIP上的Open API。其中ISV应用采用Open Id的方式向SIP发出调用请求。
具体的,如图4所示,采用用户异步授权模式的该方法流程图,包括以下步骤:
步骤401,用户使用ISV应用。
具体的,用户登录SIP,使用ISV应用,并授权ISV应用访问和操作用户信息。例如,用户登录SIP,使用ISV应用提供的在线交易业务,同时直接授权该ISV应用访问和操作用户信息。
步骤402,ISV应用向SIP发送用户身份认证请求,该请求中携带身份标识以及ISV应用所要调用的Open API的名称。该身份标识为用户的Open Id,或免登Cookie,或交由ISV应用保管的ISP中的用户密码。例如,用户作为卖家,要对自己提供的商品信息进行修改,ISV应用调用提供商品信息修改功能的Open API,ISV应用向SIP发送用户身份认证请求,该请求中携带OpenAPI的名称以及身份标识。
其中,ISV应用所要调用的Open API的名称用于SIP创建用户授权令牌时,SIP根据该Open API的名称查询该Open API的注册信息,确定用户授权令牌的属性。
对于Open Id,Open Id是一个以用户为中心的分散式身份验证***,用户只需要选择一个Open Id服务的提供者注册获取Open Id,就后可以凭借此Open Id账号在多个支持Open Id服务的调用者之间自由登录使用,而不需要每次登录都需要注册账号,更重要的是用户只需将用户密码告知Open Id服务的提供者,避免将用户密码泄露。在本申请的实施例中,ISV应用为支持OpenId服务的调用者,ISP为Open Id服务的提供者。用户通过在ISP注册的OpenId在ISV应用上自由使用,而无须反复登录或将用户密码提供给ISV应用。
对于Cookie,Cookie中存储用户的可识别信息,当用户再次访问同一网站时,该网站可以读取Cookie中的用户的可识别信息,判断该用户是否为合法用户以及是否需要重新登录等。
对于交由ISV应用保管的ISP中的用户密码,是将用户在ISP中的密码交由ISV应用保管,当ISV应用向SIP发送用户身份认证请求时,无需用户提供ISP中的密码,而由ISV直接在向SIP发送用户身份认证请求时携带。
步骤403,SIP接收ISV应用的用户身份认证请求,并向ISP转发用户身份认证请求,该请求中携带身份标识。
步骤404,ISP接收SIP转发的ISV应用的用户身份认证请求,认证用户身份。
步骤405,当通过认证时,ISP向SIP发送创建用户授权令牌请求,携带用户登录名。
步骤406,SIP接收ISP发送的创建用户授权令牌请求,创建用户授权令牌和令牌票根。
具体的,SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、使用权限及使用类型,创建该用户授权令牌以及令牌票根,将创建的用户授权令牌存储在SIP并将该用户授权令牌关联ISP提供的用户登录名。令牌票根则作为ISV应用有权调用ISP提供的Open API的验证依据。例如,用户根据提供商品信息修改功能的Open API的名称以及该Open API的注册信息,确定该用户授权令牌的属性,其中使用范围为多个API,使用权限为读写权限,使用类型为多次性令牌。
步骤407,SIP发送令牌票根和Open API实际调用地址给ISV应用。
其中,Open API实际调用地址用于当ISV应用调用Open API时,不通过SIP中转,而是直接与ISP建立连接。
步骤408,ISV应用向ISP发送建立连接请求及调用Open API的请求,携带SIP对应该Open API创建的令牌票根。
需要说明的是,步骤408之前,ISV应用已经通过了用户授权并获得了令牌票根,所以在步骤408中的调用Open API的请求,是由ISV应用直接发送给提供Open API的ISP,而无须将调用Open API的请求中转给SIP进行判断是否绑定了用户授权令牌,从而将调用请求和用户授权的安全机制分离开来,降低了大量数据交互时由于中转调用请求而造成的处理压力,同时也为ISP服务的安全性提供了保障。
步骤409,ISP接收ISV应用发送的调用Open API的请求并向SIP发送验证令牌票根的请求,在该请求中携带令牌票根。
步骤410,SIP接收ISP发送的验证令牌票根的请求,验证令牌票根。
步骤411,SIP向ISP返回对令牌票根的验证结果,该结果中携带用户登录名。
步骤412,ISP接收SIP对令牌票根的验证结果,当该认证结果为令牌票根通过验证时,ISP执行调用请求。例如,当用户作为卖家需要修改商品信息时,ISV应用调用提供该功能的Open API,当该认证结果为令牌票根通过验证时,ISP将通过该Open API修改用户的商品信息。
步骤413,ISP返回调用Open API执行结果给ISV应用。
步骤414,ISV应用展现调用Open API执行结果给用户。
其中,步骤406中SIP创建用户授权令牌和令牌票根,具体的,如图5所示,包括以下步骤:
步骤501,SIP根据Open API在SIP中的注册信息,确定用户授权令牌的使用范围。
步骤502,SIP根据Open API在SIP中的注册信息,确定用户授权令牌的使用权限。
步骤503,SIP根据Open API在SIP中的注册信息,确定用户授权令牌的属性。
步骤504,SIP创建用户授权令牌和票根,将用户授权令牌与ISP提供的用户登录名关联,授权令牌票根将作为ISV应用有权调用Open API的验证依据。
需要说明的是,本申请实施例可以根据实际需要对各个步骤顺序进行调整。上述步骤501中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、步骤502中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用权限和步骤503中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用类型三个步骤之间没有必然的先后顺序,可以进行调整。
本申请的技术方案中,对用户授权令牌的使用范围、使用类型和使用权限进行了细化,本申请同时支持用户异步授权的模式,提高***的安全性,并解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。
另外,当SIP创建的用户授权令牌为多次性令牌时,具体的,多次性令牌有效期的控制方法如下所述:
固定时长失效类,该类型的用户授权令牌在创建后就被设定了用户授权令牌有效期,当到达用户授权令牌的有效期时,该令牌失效,ISV应用不能再利用该用户授权令牌授权调用的Open API。
闲置固定时长失效类,该类型的用户授权令牌令牌创建后,当每次使用该用户授权令牌时,将更新使用该用户授权令牌使用的开始时间,从而延长该用户授权令牌的有效期。该类型用户授权令牌采用调用请求更新法和客户端插件更新法两种方式来更新用户授权令牌有效期。
具体的,更新方法如下所述:
调用请求更新法,每当ISV应用调用集成在SIP上的Open API时,SIP更新用户授权令牌的有效期。
客户端插件更新法,SIP提供给ISV应用统一的客户端插件,由客户端插件来更新有效期,防止ISV采用后台隐式操作来延续用户授权。
具体的,如图6所示,客户端插件更新法包括以下步骤:
步骤601,SIP插件获取ISV应用的Cookie,检查是否有会话ID或令牌票根。
步骤602,当检查ISV应用的Cookie中有会话ID或令牌票根,SIP插件向SIP发送更新用户授权令牌有效期的请求。
步骤603,SIP接收SIP插件的请求,判断会话ID或令牌票根是否绑定用户授权令牌。
具体的,判断会话ID或令牌票根是否绑定用户授权令牌的结果包括以下三种中的任一种:
(a)会话ID或令牌票根未绑定用户授权令牌;
(b)会话ID或令牌票根绑定用户授权令牌且该用户授权令牌超过了有效期;
(c)会话ID或令牌票根绑定用户授权令牌且该用户授权令牌未超过有效期。
步骤604,SIP根据判断结果进行处理,包括以下三种中的任一种:
(a)当会话ID或令牌票根未绑定用户授权令牌时,SIP不更新用户授权令牌的有效期。
(b)当会话ID或令牌票根绑定用户授权令牌且该用户授权令牌超过了有效期时,SIP不更新用户授权令牌的有效期。
(c)当会话ID或令牌票根绑定用户授权令牌且该用户授权令牌未超过有效期,SIP更新用户授权令牌的有效期。
步骤605,SIP返回处理结果给SIP插件。
步骤606,SIP插件根据处理结果判断是否需要移除Cookie中的会话ID或令牌票根,包括以下三种中的任一种:
(a)当会话ID或令牌票根未绑定用户授权令牌,SIP不更新用户授权令牌的有效期时,SIP插件移除Cookie中的会话ID或令牌票根。
(b)当会话ID或令牌票根绑定用户授权令牌且该用户授权令牌超过了有效期,SIP不更新用户授权令牌的有效期时,SIP插件移除Cookie中的会话ID或令牌票根。
(c)当会话ID或令牌票根绑定用户授权令牌且该用户授权令牌未超过有效期,SIP更新用户授权令牌的有效期时,SIP插件保存Cookie中的会话ID或令牌票根。
上述用户授权令牌设计首先满足对于安全级别不同要求的Open API的用户授权,其次对于用户数据的安全性作了更多方面的保护,防止ISV应用利用用户授权令牌信息缺乏,对用户信息进行盗取和滥用。
本申请的另一实施例中,为本申请中的方法采用用户异步授权模式应用于互联网络中的另一具体实施方式。该网络中包括:用户、ISV应用、SIP和ISP提供的Open API。其中,ISV应用,用于为用户提供各种各样的应用软件。SIP,用于将由ISV应用提供的软件集成在同一平台上,使用户可以在此平台上应用不同的软件。ISP提供的Open API,用于向用户提供各种数据或网络服务。
本申请实施例中,当用户使用ISV应用时,用户对ISV应用授权并由SIP创建用户授权令牌,ISV应用调用集成在SIP上的Open API,完成用户对ISV应用的使用。其中ISV应用采用Open Id的方式向SIP发出调用请求,SIP创建的用户授权令牌的使用类型采用一次性令牌。
具体的,如图7所示,采用用户异步授权模式的该方法流程图,包括以下步骤:
步骤701,用户使用ISV应用。
具体的,用户登录SIP,使用ISV应用,并授权ISV应用访问和操作用户信息。例如,用户作为买家,登录SIP,使用ISV应用提供的在线交易业务,进行商品支付。
步骤702,ISV应用向SIP发送用户身份认证请求,该请求中携带用户的Open Id以及ISV应用所要调用的Open API的名称。
具体的,ISV应用所要调用的Open API的名称用于创建用户授权令牌时,根据该Open API的名称查询该Open API的注册信息,用于确定用户授权令牌的属性。
Open Id是一个以用户为中心的分散式身份验证***,用户只需要选择一个Open Id服务的提供者注册获取Open Id,就后可以凭借此Open Id账号在多个支持Open Id服务的调用者之间自由登录使用,而不需要每次登录都需要注册账号,更重要的是用户只需将用户密码告知Open Id服务的提供者,避免将用户密码泄露。在本申请的实施例中,ISV应用即为支持Open Id服务的调用者,ISP为Open Id服务的提供者。用户通过在ISP注册的Open Id在ISV应用上自由使用,而无须反复登录和将用户密码泄露ISV应用。
例如,ISV应用根据用户的使用内容在众多Open API中选择提供商品支付功能的Open API并向SIP发送用户身份认证请求,该请求中携带ISV应用提交用户的Open Id以及ISV应用所要调用的Open API的名称。
步骤703,SIP接收ISV应用的用户身份认证请求,并向ISP转发用户身份认证请求,该请求中携带身份标识。
步骤704,ISP接收SIP转发的ISV应用的用户身份认证请求,认证用户身份。
步骤705,当通过认证时,ISP向SIP发送创建用户授权令牌请求,携带用户登录名。
步骤706,SIP接收ISP发送的创建用户授权令牌请求,创建用户授权令牌和令牌票根。
具体的,SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、使用权限及使用类型,创建该用户授权令牌以及令牌票根,将创建的用户授权令牌存储在SIP并将该用户授权令牌关联ISP提供的用户登录名;令牌票根则作为ISV应用有权调用ISP提供的Open API的验证依据。例如,用户根据提供商品信息修改功能的Open API的名称以及该Open API的注册信息,确定该用户授权令牌的属性,其中使用范围为单个API,使用权限为读写权限,使用类型为一次性令牌。
步骤707,SIP将发送令牌票根和Open API实际调用地址给ISV应用。
其中,Open API实际调用地址用于当ISV应用调用Open API时,不通过SIP中转,而是直接与ISP建立连接。
步骤708,ISV应用向ISP发送建立连接请求及调用Open API的请求,携带SIP对应该Open API创建的令牌票根。
需要说明的是,步骤708之前,ISV应用已经通过了用户授权并获得了令牌票根,所以在步骤708中的调用Open API的请求,是由ISV应用直接发送给提供Open API的ISP,而无须将调用Open API的请求中转给SIP进行判断是否绑定了用户授权令牌,从而将调用请求和用户授权的安全机制分离开来,降低了大量数据交互时由于中转调用请求而造成的处理压力,同时也为ISP服务的安全性提供了保障。
步骤709,ISP接收ISV应用发送的调用Open API的请求并向SIP发送验证令牌票根的请求,在该请求中携带令牌票根。
步骤710,SIP接收ISP发送的验证令牌票根的请求,验证令牌票根。
步骤711,SIP向ISP返回对令牌票根的验证结果,该结果中携带用户登录名。
步骤712,ISP接收SIP对令牌票根的验证结果,当该认证结果为令牌票根通过验证时,ISP执行调用请求。
例如,当用户作为买家需要进行商品支付时,ISV应用调用提供该功能的Open API,当该认证结果为令牌票根通过验证时,ISP将通过该Open API进行商品支付。
步骤713,ISP返回调用Open API执行结果给ISV应用。例如,ISP该商品已经支付的信息发送给ISV应用。
步骤714,ISV应用展现调用Open API执行结果给用户。
步骤715,ISV应用再次向ISP发送建立连接请求及调用该Open API的请求,该请求中携带令牌票根。
步骤716,ISP接收ISV应用发送的调用Open API的请求并向SIP发送验证令牌票根的请求。
步骤717,SIP接收ISP发送的验证令牌票根的请求,验证令牌票根。
步骤718,SIP向ISP返回对令牌票根的验证结果,该结果中携带用户登录名。
步骤719,ISP根据令牌票根的验证结果进行处理。
SIP通过验证令牌票根可知,该用户授权为一次性令牌,已经调用过ISP,所以SIP将拒绝ISV的此次调用ISP的请求。例如,当提供商品支付功能的该Open API已经被调用过,当再次被调用时,由于该Open API的使用类型为一次性令牌,则拒绝再次对商品进行支付,保护了作为买家用户的用户信息的安全。
步骤720,ISP返回调用Open API失败消息给ISV应用。
步骤721,ISV应用返回调用Open API失败消息给用户。
其中,步骤706中SIP创建用户授权令牌和令牌票根,具体的,如图5所示。
需要说明的是,本申请实施例可以根据实际需要对各个步骤顺序进行调整。上述步骤501中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、步骤502中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用权限和步骤503中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用类型三个步骤之间没有必然的先后顺序,可以进行调整。
本申请的技术方案中,对用户授权令牌的使用范围、使用类型和使用权限进行了细化,通过用户授权令牌的使用类型,避免了在对安全性要求较高的情况下,用户信息在非授权的情况下进行修改的问题。本申请同时支持用户异步授权的模式,解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。
本申请的另一实施例中,为本申请中的方法采用用户异步授权模式应用于互联网络中的另一具体实施方式。该网络中包括:用户、ISV应用、SIP和ISP提供的Open API。其中,ISV应用,用于为用户提供各种各样的应用软件。SIP,用于将由ISV应用提供的软件集成在同一平台上,使用户可以在此平台上应用不同的软件。ISP提供的Open API,用于向用户提供各种数据或网络服务。
本申请实施例中,当用户使用ISV应用时,用户对ISV应用授权并由SIP创建用户授权令牌,ISV应用调用集成在SIP上的Open API,完成用户对ISV应用的使用。其中ISV应用采用Open Id的方式向SIP发出调用请求,SIP创建的用户授权令牌的使用类型采用多次性令牌中的固定时长失效类。
具体的,如图8所示,采用用户异步授权模式的该方法流程图,包括以下步骤:
步骤801,用户使用ISV应用。
具体的,用户登录SIP,使用ISV应用,并授权ISV应用访问和操作用户信息。例如,用户登录SIP,使用ISV应用提供的在线交易业务,同时直接授权该ISV应用访问和操作用户信息。
步骤802,ISV应用向SIP发送用户身份认证请求,该请求中携带用户的Open Id,以及ISV应用所要调用的Open API的名称。
其中,ISV应用所要调用的Open API的名称用于创建用户授权令牌时,根据该Open API的名称查询该Open API的注册信息,用于确定用户授权令牌的属性。
Open Id是一个以用户为中心的分散式身份验证***,用户只需要选择一个Open Id服务的提供者注册获取Open Id,就后可以凭借此Open Id账号在多个支持Open Id服务的调用者之间自由登录使用,而不需要每次登录都需要注册账号,更重要的是用户只需将用户密码告知Open Id服务的提供者,避免将用户密码泄露。在本申请的实施例中,ISV应用即为支持Open Id服务的调用者,ISP为Open Id服务的提供者。用户通过在ISP注册的Open Id在ISV应用上自由使用,而无须反复登录和将用户密码泄露ISV应用。
例如,用户作为卖家,要对自己提供的商品信息进行修改,ISV应用调用提供商品信息修改功能的Open API,ISV应用向SIP发送用户身份认证请求,该请求中携带Open API的名称以及身份标识。
步骤803,SIP接收ISV应用的用户身份认证请求,并向ISP转发用户身份认证请求,该请求中携带身份标识。
步骤804,ISP接收SIP转发的ISV应用的用户身份认证请求,认证用户身份。
步骤805,当通过认证时,ISP向SIP发送创建用户授权令牌请求,携带用户登录名。
步骤806,SIP接收ISP发送的创建用户授权令牌请求,创建用户授权令牌和令牌票根。
具体的,SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、使用权限及使用类型,创建该用户授权令牌以及令牌票根,将创建的用户授权令牌存储在SIP并将该用户授权令牌关联ISP提供的用户登录名;令牌票根则作为ISV应用有权调用ISP提供的Open API的验证依据。例如,用户根据提供商品信息修改功能的Open API的名称以及该Open API的注册信息,确定该用户授权令牌的属性,其中使用范围为多个API,使用权限为读写权限,使用类型为多次性令牌。
步骤807,SIP将发送令牌票根和Open API实际调用地址给ISV应用。
其中,Open API实际调用地址用于当ISV应用调用Open API时,不通过SIP中转,而是直接与ISP建立连接。
步骤808,ISV应用向ISP发送建立连接请求及调用Open API的请求,携带SIP对应该Open API创建的令牌票根。
需要说明的是,步骤808之前,ISV应用已经通过了用户授权并获得了令牌票根,所以在步骤808中的调用Open API的请求,是由ISV应用直接发送给提供Open API的ISP,而无须将调用Open API的请求中转给SIP进行判断是否绑定了用户授权令牌,从而将调用请求和用户授权的安全机制分离开来,降低了大量数据交互时由于中转调用请求而造成的处理压力,同时也为ISP服务的安全性提供了保障。
步骤809,ISP接收ISV应用发送的调用Open API的请求并向SIP发送验证令牌票根的请求,在该请求中携带令牌票根。
步骤810,SIP接收ISP发送的验证令牌票根的请求,验证令牌票根。
步骤811,SIP向ISP返回对令牌票根的验证结果,该结果中携带用户登录名。
步骤812,ISP接收SIP对令牌票根的验证结果,当该认证结果为令牌票根通过验证时,ISP执行调用请求。
例如,当用户作为卖家需要修改商品信息时,ISV应用调用提供该功能的Open API,当该认证结果为令牌票根通过验证时,ISP将通过该Open API修改用户的商品信息。
步骤813,ISP返回调用Open API执行结果给ISV应用。
步骤814,ISV应用展现调用Open API执行结果给用户。
步骤815,ISV应用再次向ISP发送建立连接请求及调用Open API的请求,携带令牌票根。
步骤816,ISP接收ISV应用发送的调用Open API的请求并向SIP发送验证令牌票根的请求。
步骤817,SIP接收ISP发送的验证令牌票根的请求,验证令牌票根。SIP通过验证令牌票根可知,该用户授权为多次性令牌的固定时长失效类,判断该用户授权令牌是否还在有效期内。
步骤818,SIP向ISP返回对令牌票根的验证结果,携带用户登录名。
步骤819,ISP根据令牌票根的验证结果进行处理。
如果该用户授权令牌不在有效期内,ISP将拒绝ISV应用的此次调用ISP提供的Open API的请求;
如果该用户授权令牌还在有效期内,ISP执行再次调用请求。
例如,当该用户授权令牌还在有效期内,则ISV应用所调用的Open API对商品信息进行修改。
本实施例中以用户授权令牌还在有效期内为例进行说明。
步骤820,ISP返回再次执行调用请求结果给ISV应用。
步骤821,ISV应用展现再次执行调用请求结果给用户。
其中,步骤806中SIP创建用户授权令牌和令牌票根,具体的,如图5所示。
需要说明的是,本申请实施例可以根据实际需要对各个步骤顺序进行调整。上述步骤501中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用范围、步骤502中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用权限和步骤503中的SIP根据Open API注册在SIP上的注册信息,确定用户授权令牌的使用类型三个步骤之间没有必然的先后顺序,可以进行调整。
本申请的技术方案中,对用户授权令牌的使用范围、使用类型和使用权限进行了细化,通过用户授权令牌的使用类型,避免了在对安全性要求不高,读写操作频繁的情况下,重复进行登录。本申请同时支持用户异步授权的模式,解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。
本申请的实施例中,还提供一种用户授权***,其结构示意图如图9所示,包括:
服务集成平台91,用于ISP 93对客户端认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌,处理ISV应用92对ISP 93的调用请求;
ISV应用92,用于向ISP 93发出调用请求;
ISP 93,用于验证客户端的身份以及执行调用请求;
本申请的实施例中一种服务集成平台100的结构示意图,如图10所示,包括:
请求接收模块101,用于接收ISP对用户身份的认证结果;
令牌创建模块102,用于当请求接收模块101接收的ISP对用户身份的认证结果为认证通过时,创建用户授权令牌;
处理模块103,用于根据所述令牌创建模块102创建的用户授权令牌处理ISV应用对所述ISP提供的Open API的调用请求。
其中,令牌创建模块102具体包括:
请求接收子模块1021,用于接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及用户登录名;
令牌属性判断子模块1022,用于根据Open API在SIP上的注册信息判断所述用户授权令牌的属性;
令牌创建子模块1023,用于根据所述令牌属性判断子模块1022判断的用户授权令牌的属性创建所述用户授权令牌。
本申请的实施例中用户同步授权模式下,一种服务集成平台110的结构示意图,如图11所示,包括:
请求接收模块111,用于接收ISP对用户身份的认证结果;
令牌创建模块112,用于当请求接收模块接收111的ISP对用户身份的认证结果为认证通过时,创建用户授权令牌;
处理模块113,用于根据所述令牌创建模块112创建的用户授权令牌处理ISV应用对所述ISP提供的Open API的调用请求。
具体的,当所述创建令牌子模块绑定了所述会话ID和用户授权令牌时,所述处理模块将所述用户授权令牌和用户登录名以及调用请求向所述ISP提供的Open API转发。
其中,令牌创建模块112具体包括:
请求接收子模块1121,用于接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及用户登录名;
令牌属性判断子模块1122,用于根据Open API在SIP上的注册信息判断所述用户授权令牌的属性;
令牌创建子模块1123,用于根据所述令牌属性判断子模块1122判断的用户授权令牌的属性创建所述用户授权令牌。
请求接收模块111,还用于接收所述ISV应用对Open API的调用请求。
用户授权判断模块114,用于根据请求接收模块接收的所述ISV应用对Open API的调用请求,判断所述请求是否需要用户授权。
信息返回模块115,当所述用户授权判断模块判114断所述请求需要用户授权时,向ISV应用返回用户登录授权页面地址。
令牌创建子模块1123,还用于将所述用户授权令牌和会话ID绑定,并关联用户登录名。
本申请的实施例中用户异步授权模式下,一种用户授权服务集成平台120的结构示意图,如图12所示,包括:
请求接收模块121,用于接收ISP对用户身份的认证结果;
令牌创建模块122,用于当请求接收模块接收的ISP对用户身份的认证结果为认证通过时,创建用户授权令牌;
处理模块123,用于根据所述令牌创建模块122创建的用户授权令牌处理ISV应用对所述ISP提供的开放式应用编程接口Open API的调用请求。
具体的,接收ISP发送的验证授权令牌票根的请求,对令牌票根进行验证并向ISP返回验证令牌票根的结果。
其中,令牌创建模块122具体包括:
请求接收子模块1221,用于接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及用户登录名;
令牌属性判断子模块1222,用于根据Open API在SIP上的注册信息判断所述用户授权令牌的属性;
令牌创建子模块1223,用于根据所述用户授权令牌的属性创建所述用户授权令牌。
请求接收模块121,还用于接收所述ISV应用对Open API的用户身份认证请求以及携带的身份标识。
处理模块123,还用于向ISP转发所接收的所述ISV应用对Open API的用户身份认证请求以及携带的身份标识。
令牌创建子模块1223,还用于根据所述用户授权令牌的属性创建所述用户授权令牌的令牌票根,并将用户授权令牌和用户名关联。
为了描述的方便,上述实施例中的所述集成服务平台的各部分以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件或硬件中实现。
本申请包括以下优点,细化用户授权令牌的属性,并支持用户异步授权的模式,提高***的安全性,并解决了在大数据服务请求的过程中由于数据中转造成服务效率低下的问题。当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本申请的保护范围。
Claims (15)
1.一种用户授权的方法,应用于包括服务集成平台SIP、互联网服务提供商ISP、独立软件供应商ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;其特征在于,所述方法包括:
所述SIP在所述ISP对用户身份的认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌;
所述SIP根据所述用户授权令牌,处理所述ISV应用对所述Open API的调用请求;
其中,所述SIP根据所述用户授权令牌,处理所述ISV应用对所述ISP提供的Open API的调用请求,包括:
用户同步授权模式下,所述SIP接收到ISV应用对所述ISP提供的OpenAPI的调用请求,所述请求中携带会话ID;当所述会话ID绑定用户授权令牌时,所述SIP根据所述会话ID获取所述用户授权令牌和用户登录名,将所述用户授权令牌和用户登录名以及调用请求向所述ISP提供的Open API转发;所述SIP接收所述ISP提供的Open API发送的处理结果,将所述处理结果通过所述ISV应用转发给所述用户;
用户异步授权模式下,所述SIP接收所述ISP发送的验证授权令牌票根的请求,对授权令牌票根进行验证并向所述ISP返回验证授权令牌票根的结果。
2.如权利要求1所述的方法,其特征在于,用户同步授权模式下,所述SIP接收到ISP对用户身份的认证通过前,还包括:
所述SIP接收所述ISV应用对Open API的调用请求;
当所述SIP接收到的所述ISV应用对Open API的调用请求需要所述用户授权时,所述SIP向所述ISV应用发送用户登录授权页面地址,触发所述ISV应用和所述用户到所述ISP进行用户身份的认证。
3.如权利要求2所述的方法,其特征在于,所述ISV应用和所述用户到所述ISP进行用户身份的认证包括:
所述ISV应用接收所述SIP发送的用户登录授权页面地址;
所述ISV应用将所述用户登录授权页面地址、以及授权后返回页面地址和会话ID发送给所述用户;
所述用户根据所述登录授权页面地址,向所述ISP发送登录和授权请求,以及所述授权后返回页面地址和会话ID,请求所述ISP进行用户身份的认证。
4.如权利要求2所述的方法,其特征在于,在用户同步授权模式下,所述创建所述用户授权令牌包括:
SIP根据Open API在SIP上的注册信息判断所述用户授权令牌的属性,所述用户授权令牌的属性包括用户授权令牌的使用范围、用户授权令牌的使用权限和用户授权令牌的使用类型;
SIP根据所述用户授权令牌的属性创建所述用户授权令牌,并且将所述用户授权令牌与用户登录名关联;
SIP将所述用户授权令牌和会话ID绑定。
5.如权利要求2所述的方法,其特征在于,在用户同步授权模式下,所述创建所述用户授权令牌之前,还包括:
所述SIP接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及会话ID和用户登录名。
6.如权利要求1所述的方法,其特征在于,用户异步授权模式下,所述SIP接收到ISP对用户身份的认证通过前,还包括:
所述SIP接收所述ISV应用对Open API的用户身份认证请求以及携带的身份标识;
所述SIP向ISP转发所接收的所述ISV应用对Open API的用户身份认证请求以及携带的身份标识。
7.如权利要求6所述的方法,其特征在于,所述携带的身份标识具体为:用户的Open Id、免登Cookie、或交由ISV保管的用户在ISP中的用户密码。
8.如权利要求6所述的方法,其特征在于,在用户异步授权模式下,所述创建所述用户授权令牌包括:
SIP根据Open API在SIP上的注册信息判断所述用户授权令牌的属性,所述用户授权令牌的属性包括用户授权令牌的使用范围、用户授权令牌的使用权限和用户授权令牌的使用类型;
SIP根据所述用户授权令牌的属性创建所述用户授权令牌和授权令牌票根,并且将所述用户授权令牌与用户登录名关联。
9.如权利要求6所述的方法,其特征在于,用户异步授权模式下,所述创建所述用户授权令牌之前,还包括:
所述SIP接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求和用户登录名。
10.一种用户授权的***,应用于包括服务集成平台、ISP、ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;其特征在于,所述***包括:
服务集成平台,用于对客户端的认证通过时,根据所述ISV应用调用的Open API的注册信息,创建用户授权令牌,处理ISV应用对ISP的调用请求;
ISV应用,用于调用ISP的请求;
ISP,用于验证客户端的身份以及执行调用请求;
其中,所述服务集成平台处理ISV应用对ISP的调用请求,包括:
用户同步授权模式下,所述SIP接收到ISV应用对所述ISP提供的OpenAPI的调用请求,所述请求中携带会话ID;当所述会话ID绑定用户授权令牌时,所述SIP根据所述会话ID获取所述用户授权令牌和用户登录名,将所述用户授权令牌和用户登录名以及调用请求向所述ISP提供的Open API转发;所述SIP接收所述ISP提供的Open API发送的处理结果,将所述处理结果通过所述ISV应用转发给所述用户;
用户异步授权模式下,所述SIP接收所述ISP发送的验证授权令牌票根的请求,对令牌票根进行验证并向所述ISP返回验证令牌票根的结果。
11.一种用户授权的服务集成平台,应用于包括服务集成平台、ISP、ISV应用的网络中,所述ISP提供不同的开放式应用编程接口Open API;其特征在于,所述服务集成平台包括:
请求接收模块,用于在用户同步授权模式下接收ISV应用对Open API的调用请求,所述调用请求中携带会话ID,还用于接收ISP对用户身份的认证结果;
令牌创建模块,用于当请求接收模块接收的ISP对用户身份的认证结果为认证通过时,创建用户授权令牌;
处理模块,用于根据所述用户授权令牌处理ISV应用对所述ISP提供的开放式应用编程接口Open API的调用请求;
其中,所述处理模块具体用于:
用户同步授权模式下,当所述调用请求中携带的会话ID绑定用户授权令牌时,所述处理模块将所述用户授权令牌和用户登录名以及调用请求向所述ISP提供的Open API转发;
用户异步授权模式下,接收ISP发送的验证授权令牌票根的请求,对授权令牌票根进行验证并向ISP返回验证授权令牌票根的结果。
12.如权利要求11所述的服务集成平台,其特征在于,所述令牌创建模块具体包括:
请求接收子模块,用于接收ISP对用户身份的认证通过时发送的创建用户授权令牌的请求以及用户登录名;
令牌属性判断子模块,用于根据Open API在SIP上的注册信息判断所述用户授权令牌的属性;
令牌创建子模块,用于根据所述令牌属性判断子模块判断的用户授权令牌的属性创建所述用户授权令牌。
13.如权利要求11所述的服务集成平台,其特征在于,用户同步授权模式下,还包括:
用户授权判断模块,用于根据请求接收模块接收的所述ISV应用对OpenAPI的调用请求,判断所述请求是否需要用户授权;
信息返回模块,当所述用户授权判断模块判断所述请求需要用户授权时,向ISV应用返回用户登录授权页面地址。
14.如权利要求12所述的服务集成平台,其特征在于,用户同步授权模式下,所述令牌创建子模块还用于:
将所述用户授权令牌和会话ID绑定,并与用户名关联。
15.如权利要求12所述的服务集成平台,其特征在于,用户异步授权模式下,
所述请求接收模块还用于:接收所述ISV应用对Open API的用户身份认证请求以及携带的身份标识;
所述处理模块还用于:向ISP转发所接收的所述ISV应用对Open API的用户身份认证请求以及携带的身份标识;
所述令牌创建子模块还用于:根据所述令牌属性判断子模块判断的用户授权令牌的属性创建所述用户授权令牌的授权令牌票根,并将用户授权令牌和用户名关联。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910143737 CN101562621B (zh) | 2009-05-25 | 2009-05-25 | 一种用户授权的方法、***和装置 |
HK10103892.1A HK1135815A1 (en) | 2009-05-25 | 2010-04-21 | User authorization method, system and device thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910143737 CN101562621B (zh) | 2009-05-25 | 2009-05-25 | 一种用户授权的方法、***和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101562621A CN101562621A (zh) | 2009-10-21 |
CN101562621B true CN101562621B (zh) | 2013-05-22 |
Family
ID=41221239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910143737 Active CN101562621B (zh) | 2009-05-25 | 2009-05-25 | 一种用户授权的方法、***和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101562621B (zh) |
HK (1) | HK1135815A1 (zh) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110065247A (ko) * | 2009-12-08 | 2011-06-15 | 삼성전자주식회사 | 복수의 인터넷 서비스 제공자의 서비스를 이용하는 방법 및 장치 |
CN102281311B (zh) | 2010-06-10 | 2014-06-04 | 阿里巴巴集团控股有限公司 | 一种基于开放应用编程接口实现网络业务的方法、***及装置 |
TWI476621B (zh) * | 2010-08-27 | 2015-03-11 | Alibaba Group Holding Ltd | Method, system and device for realizing network service based on open application programming interface |
CN102546532B (zh) * | 2010-12-07 | 2016-03-30 | ***通信集团公司 | 能力调用方法、请求装置、平台及*** |
CN102193798B (zh) * | 2011-03-22 | 2013-08-21 | 天津大学 | 基于Internet的OpenAPI自动获取方法 |
CN102203730B (zh) | 2011-05-20 | 2013-10-02 | 华为技术有限公司 | 开放应用程序编程接口选择方法及设备 |
CN103001936B (zh) * | 2011-09-16 | 2016-05-25 | 北京新媒传信科技有限公司 | 一种第三方应用接口授权方法和*** |
WO2013050649A1 (en) * | 2011-10-04 | 2013-04-11 | Nokia Corporation | Method and apparatus for providing an application marketplace |
CN103078827B (zh) * | 2011-10-25 | 2017-05-31 | 腾讯数码(天津)有限公司 | 第三方应用调用的开放平台***和实现方法 |
CN103095666B (zh) * | 2011-11-07 | 2016-03-23 | 阿里巴巴集团控股有限公司 | 第三方应用处理方法及装置 |
CN103220259B (zh) * | 2012-01-20 | 2016-06-08 | 华为技术有限公司 | Oauth API的使用、调用方法、设备及*** |
CN102664933B (zh) * | 2012-04-06 | 2015-03-18 | 中国联合网络通信集团有限公司 | 用户授权方法、应用终端、开放平台和*** |
CN102694847B (zh) * | 2012-05-03 | 2014-10-22 | 北京新媒传信科技有限公司 | 抓取第三方开放平台中用户动态的方法和装置 |
CN102638473B (zh) * | 2012-05-04 | 2014-12-10 | 盛趣信息技术(上海)有限公司 | 一种用户数据授权方法、装置及*** |
CN102710640B (zh) * | 2012-05-31 | 2015-03-18 | 中国联合网络通信集团有限公司 | 请求授权的方法、装置和*** |
CN102768721B (zh) * | 2012-06-25 | 2016-06-01 | 北京奇虎科技有限公司 | 控制白名单的方法及装置 |
CN103577731B (zh) * | 2012-07-18 | 2016-10-05 | ***通信集团公司 | 一种软件处理方法和装置 |
CN102833328A (zh) * | 2012-08-17 | 2012-12-19 | 中国联合网络通信集团有限公司 | 应用统一调用方法及统一调用客户端 |
US9264413B2 (en) * | 2012-12-06 | 2016-02-16 | Qualcomm Incorporated | Management of network devices utilizing an authorization token |
CN103942093B (zh) * | 2013-01-23 | 2018-02-13 | 阿里巴巴集团控股有限公司 | 业务处理方法及*** |
JP2015001817A (ja) * | 2013-06-14 | 2015-01-05 | ソニー株式会社 | 情報処理装置、情報処理方法、及びプログラム |
CA2919199C (en) * | 2013-07-24 | 2020-06-16 | Visa International Service Association | Systems and methods for communicating risk using token assurance data |
US9819661B2 (en) * | 2013-09-12 | 2017-11-14 | The Boeing Company | Method of authorizing an operation to be performed on a targeted computing device |
CN103490898B (zh) * | 2013-09-22 | 2017-01-18 | 新浪网技术(中国)有限公司 | 一种电子邮件代收授权方法、装置及*** |
CA2927052C (en) | 2013-10-11 | 2021-09-21 | Visa International Service Association | Network token system |
CN103533053B (zh) * | 2013-10-15 | 2016-08-17 | 中国联合网络通信集团有限公司 | 一种开放应用程序编程接口的审批方法、服务器及*** |
CN103618790A (zh) * | 2013-11-28 | 2014-03-05 | 深圳先进技术研究院 | 一种获取api服务的方法及*** |
CN103795712B (zh) * | 2014-01-17 | 2017-05-17 | 歌尔股份有限公司 | 在调用Web Service时进行认证的方法及装置 |
CN104850776A (zh) * | 2014-02-18 | 2015-08-19 | 中国电信股份有限公司 | 控制对api调用的方法、装置与移动终端 |
CN104113552B (zh) * | 2014-07-28 | 2017-06-16 | 百度在线网络技术(北京)有限公司 | 一种平台授权方法、平台服务端及应用客户端和*** |
CN104113549B (zh) * | 2014-07-28 | 2017-07-18 | 百度在线网络技术(北京)有限公司 | 一种平台授权方法、平台服务端及应用客户端和*** |
DE112015005086T5 (de) * | 2014-11-10 | 2017-08-03 | Google Inc. | Implementierung von drittanbieterdiensten in einer plattform für digitale dienste |
JP5956623B1 (ja) * | 2015-01-30 | 2016-07-27 | 株式会社Pfu | システム |
CN106897153B (zh) * | 2015-12-18 | 2021-07-30 | 阿里巴巴集团控股有限公司 | 调用应用编程接口的方法和*** |
CN106961392B (zh) * | 2016-01-12 | 2020-04-24 | 阿里巴巴集团控股有限公司 | 一种流量控制方法及装置 |
CN107026825A (zh) * | 2016-02-02 | 2017-08-08 | ***通信集团陕西有限公司 | 一种访问大数据***的方法及*** |
CN107231335B (zh) * | 2016-03-24 | 2021-05-25 | 创新先进技术有限公司 | 一种业务处理方法及装置 |
CN105704154B (zh) * | 2016-04-01 | 2019-11-05 | 金蝶软件(中国)有限公司 | 一种基于RESTful的服务处理方法、装置及*** |
CN106059994B (zh) * | 2016-04-29 | 2020-02-14 | 华为技术有限公司 | 一种数据传输方法及网络设备 |
CN106709288B (zh) * | 2016-12-22 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 应用程序审核操作权限处理方法和装置 |
CN107133779A (zh) * | 2017-05-02 | 2017-09-05 | 山东浪潮通软信息科技有限公司 | 一种多域通信主动式收集简历的方法、***及浏览器插件 |
CN109150805B (zh) * | 2017-06-19 | 2021-07-09 | 亿阳安全技术有限公司 | 应用程序编程接口的安全管理方法和*** |
CN108471409B (zh) * | 2018-03-15 | 2019-09-03 | 苏州思必驰信息科技有限公司 | 语音对话平台的应用程序接口鉴权配置方法及*** |
CN109471870B (zh) * | 2018-11-16 | 2021-07-20 | 北京金山云网络技术有限公司 | 资源数据读取的方法、装置、电子设备和计算机可读介质 |
CN109802941A (zh) * | 2018-12-14 | 2019-05-24 | 平安科技(深圳)有限公司 | 一种登录验证方法、装置、存储介质和服务器 |
CN110505198A (zh) * | 2019-07-05 | 2019-11-26 | 中国平安财产保险股份有限公司 | 一种验证请求方法、装置、计算机设备及存储介质 |
CN111010396A (zh) * | 2019-12-17 | 2020-04-14 | 紫光云(南京)数字技术有限公司 | 一种互联网身份认证管理方法 |
CN111355743B (zh) * | 2020-03-11 | 2021-07-06 | 成都卓杭网络科技股份有限公司 | 一种基于api网关的管理方法及其*** |
CN112785298A (zh) * | 2020-12-31 | 2021-05-11 | 山东数字能源交易中心有限公司 | 一种互信支付*** |
US12015607B2 (en) | 2021-08-13 | 2024-06-18 | The Toronto-Dominion Bank | System and method for authenticating client devices communicating with an enterprise system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296243A (zh) * | 2008-06-26 | 2008-10-29 | 阿里巴巴集团控股有限公司 | 一种服务集成平台***及提供互联网服务的方法 |
CN101404575A (zh) * | 2008-11-06 | 2009-04-08 | 阿里巴巴集团控股有限公司 | 一种更新签名算法的方法和*** |
-
2009
- 2009-05-25 CN CN 200910143737 patent/CN101562621B/zh active Active
-
2010
- 2010-04-21 HK HK10103892.1A patent/HK1135815A1/xx unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296243A (zh) * | 2008-06-26 | 2008-10-29 | 阿里巴巴集团控股有限公司 | 一种服务集成平台***及提供互联网服务的方法 |
CN101404575A (zh) * | 2008-11-06 | 2009-04-08 | 阿里巴巴集团控股有限公司 | 一种更新签名算法的方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN101562621A (zh) | 2009-10-21 |
HK1135815A1 (en) | 2010-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101562621B (zh) | 一种用户授权的方法、***和装置 | |
US11637820B2 (en) | Customizable sign-on service | |
CN111131242B (zh) | 一种权限控制方法、装置和*** | |
CN106716960B (zh) | 用户认证方法和*** | |
US9992206B2 (en) | Enhanced security for electronic communications | |
CN106716918B (zh) | 用户认证方法和*** | |
CN109309666A (zh) | 一种网络安全中的接口安全控制方法及终端设备 | |
CN101647254A (zh) | 用于为终端设备提供服务的方法和*** | |
JP5838218B2 (ja) | アプリストアシステム及び当該アプリストアシステムを用いたアプリケーションの開発方法 | |
US9210155B2 (en) | System and method of extending a host website | |
KR102116587B1 (ko) | 사이버 id를 이용하여 보안 트랜잭션을 제공하는 방법 및 시스템 | |
CN113411324B (zh) | 基于cas与第三方服务器实现登录认证的方法和*** | |
CN102647429A (zh) | 应用间通信的访问控制方法、应用进程管理器、在线应用平台 | |
CN115412294A (zh) | 基于平台服务的访问方法及装置、存储介质、电子设备 | |
TW201030637A (en) | A method providing internet service and service integration platform system | |
JP5632429B2 (ja) | オープンな通信環境にクローズな通信環境を構築するサービス認証方法及びシステム | |
KR102086406B1 (ko) | 사용자 통합 인증 서비스 시스템 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1135815 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1135815 Country of ref document: HK |