CN112861089B - 授权认证的方法、资源服务器、资源用户端、设备和介质 - Google Patents
授权认证的方法、资源服务器、资源用户端、设备和介质 Download PDFInfo
- Publication number
- CN112861089B CN112861089B CN202110288236.XA CN202110288236A CN112861089B CN 112861089 B CN112861089 B CN 112861089B CN 202110288236 A CN202110288236 A CN 202110288236A CN 112861089 B CN112861089 B CN 112861089B
- Authority
- CN
- China
- Prior art keywords
- resource
- response message
- server
- information
- authorization 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
- 238000013475 authorization Methods 0.000 title claims abstract description 176
- 238000000034 method Methods 0.000 title claims abstract description 99
- 230000008569 process Effects 0.000 claims abstract description 48
- 230000004044 response Effects 0.000 claims description 117
- 238000012545 processing Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000012795 verification Methods 0.000 description 6
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
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
-
- 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/45—Structures or tools for the administration of 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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供授权认证的方法、资源服务器、资源用户端、设备和介质,该方法包括获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,所述授权请求用于第三方服务器申请访问所述资源服务器中受保护的用户资源信息;对所述待验证签名信息进行签名认证,生成认证结果,其中,所述认证结果用于表征所述资源用户端的身份是否合法;在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程。本申请实施例方法基于数字证书对授权认证过程中资源用户端进行身份认证,能够加强用户身份认证的安全性,进一步确保用户信息开放的安全性。
Description
技术领域
本申请涉及授权认证技术领域,具体而言,涉及授权认证的方法、资源服务器、资源用户端、设备和介质。
背景技术
随着互联网应用的流行,各个巨头互联网应用沉淀了大量的用户资源信息,为了平台生态圈提升影响,纷纷基于OAuth2.0协议实现在用户授权允许的前提下开放用户信息。“开放与共享”是当今互联网的主要特征,将互联网服务提供商的不同服务进行整合成为了互联网发展的必然趋势,整合不同厂商的服务,关键之一就是解决身份认证和信息共享等问题。
具体来说,OAuth2.0协议中在访问受保护资源之前,第三方需要先从用户处获取授权,然后用该授权向授权服务器换取访问凭证,接着利用该访问凭证向授权服务器换取访问令牌,最后通过向资源服务器出示该访问令牌来获取受保护资源。在此过程中,无论是数据包被截取,还是授权服务器被恶意攻击,都有可能造成用户的身份信息被泄露,从而无法保证用户身份的合法性。因此,在OAuth2.0协议的授权认证过程中增强身份认证的安全性成为亟待解决的问题。
发明内容
本申请实施例的目的在于提供授权认证的方法、资源服务器、资源用户端、设备和介质,用以在OAuth2.0协议授权认证过程中增强身份认证的安全性。
第一方面,本申请实施例提供了一种授权认证的方法,所述方法应用于资源服务器,所述方法包括:获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,所述授权请求用于第三方服务器申请访问所述资源服务器中受保护的用户资源信息;对所述待验证签名信息进行签名认证,生成认证结果,其中,所述认证结果用于表征所述资源用户端的身份是否合法;在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程。
在上述实现过程中,在授权认证过程中,通过对资源用户端发送的待验证签名信息进行签名验证,能够有效地对资源用户端进行身份认证,进一步,实现不需要用户的账号和密码提供给第三方客户端的情况下,第三方客户端就能通过用户授权来访问用户在开放平台的资源,能够加强用户身份认证的安全性,进一步确保用户信息开放的安全性。
结合第一方面,在一种实施方式中,在所述获取资源用户端发送的待验证签名信息以及授权请求的标识信息之前,所述方法还包括:获取所述第三方服务器发送的所述授权请求;根据所述授权请求向所述第三方服务器发送响应消息,其中,所述响应消息包括所述授权请求的标识信息和随机数,所述随机数用于资源用户端进行数字签名。
在上述实现过程中,根据授权请求向第三方服务器发送响应消息,便于资源用户端利用个人数字证书对响应消息中的随机数进行数字签名,进一步便于对资源用户端进行身份认证,有效避免了用户的身份信息的泄露。
结合第一方面,在另一种实施方式中,在所述根据所述授权请求向所述第三方服务器发送响应消息之后,所述方法还包括:判断所述资源用户端在预设时间内是否接收到所述响应消息;若否,根据所述授权请求向所述第三方服务器发送更新的响应消息,其中,所述更新的响应消息包括所述授权请求的标识信息和更新后的随机数;重复上述过程,直至所述资源用户端接收到响应消息,其中,所述待验证签名信息是所述资源用户端对接收到的响应消息中的随机数进行数字签名得到的。
在上述实现过程中,通过判断预设时间内资源用户端是否接收到响应消息,进一步对响应消息进行更新,从而实现了对响应消息的安全保护。
结合第一方面,在另一种实施方式中,所述对所述待验证签名信息进行签名认证,生成认证结果,包括:利用所述资源用户端的公钥对所述待验证签名信息进行解密,得到解密摘要;对所述资源用户端接收到的响应消息中的随机数进行函数运算,生成随机数摘要;根据所述解密摘要与所述随机数摘要验证所述资源用户端的身份是否合法。
在上述实现过程中,通过资源用户端的公钥对待验证签名信息进行解密,得到解密摘要,并对资源用户端接收到的响应消息中的随机数进行函数运算,得到随机数摘要,进一步通过解密摘要与随机数摘要进行对比,判断出资源用户端身份的合法性,从而实现了资源用户端的身份认证。
结合第一方面,在另一种实施方式中,所述在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程,包括:在所述资源用户端为合法身份时,生成临时凭证,并将所述临时凭证发送至第三方客户端,其中,所述临时凭证用于所述第三方服务器向所述资源服务器换取授权令牌;根据所述第三方服务器的发送的第一反馈信息生成所述授权令牌,其中,所述第一反馈信息是所述第三方服务器根据所述第三方客户端发送的所述临时凭证生成的;将所述授权令牌发送至所述第三方服务器,其中,所述授权令牌用于所述第三方服务器向所述资源服务器换取所述用户资源信息;根据所述第三方服务器发送的第二反馈信息生成所述用户资源信息,其中,所述第二反馈信息携带所述授权令牌。
在上述实现过程中,在资源用户端身份合法的情况下,资源服务器生成临时凭证,并发送给第三方客户端;第三方服务器从第三方客户端获取临时凭证,并利用临时凭证向资源服务器换取授权令牌,进一步通过授权令牌获取用户资源信息,从而实现了资源服务器将用户资源信息授权给所述第三方服务器的认证过程。
第二方面,本申请实施例提供了一种授权认证的方法,所述方法应用于资源用户端,所述方法包括:获取响应消息,其中,所述响应消息包括授权请求的标识信息和随机数;基于所述资源用户端的数字证书对所述随机数进行数字签名,生成待验证签名信息;将所述待验证签名信息以及所述授权请求的标识信息发送至资源服务器。
在上述实现过程中,基于数字证书对响应消息中的随机数进行数字签名,便于对资源用户端进行身份认证,有效避免了授权认证过程中账号密码认证而导致用户信息泄露的问题,进一步提高了用户身份信息的安全性。
结合第二方面,在一种实施方式中,所述基于所述资源用户端的数字证书对所述随机数进行数字签名,生成待验证签名信息,包括:对所述随机数进行函数运算,生成加密摘要;基于所述资源用户端的数字证书的私钥对所述加密摘要进行加密,生成所述待验证签名信息。
在上述实现过程中,通过函数对随机数进行运算,生成加密摘要,并利用数字证书的私钥对加密摘要进行加密,生成待验证签名信息,进一步便于资源服务器对待验证签名信息进行身份认证。
第三方面,本申请实施例提供了一种授权认证的资源服务器,所述资源服务器包括:第一获取单元,用于获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,所述授权请求用于第三方服务器申请访问所述资源服务器中受保护的用户资源信息;第一处理单元,用于对所述待验证签名信息进行签名认证,生成认证结果,其中,所述认证结果用于表征所述资源用户端的身份是否合法;所述第一处理单元还用于在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程。
结合第三方面,在一种实施方式中,所述第一获取单元在用于获取资源用户端发送的待验证签名信息以及授权请求的标识信息之前,还用于:获取所述第三方服务器发送的所述授权请求;根据所述授权请求向所述第三方服务器发送响应消息,其中,所述响应消息包括所述授权请求的标识信息和随机数,所述随机数用于资源用户端进行数字签名。
结合第三方面,在另一种实施方式中,所述第一处理单元还用于:判断所述资源用户端在预设时间内是否接收到所述响应消息;若否,根据所述授权请求向所述第三方服务器发送更新的响应消息,其中,所述更新的响应消息包括所述授权请求的标识信息和更新后的随机数;重复上述过程,直至所述资源用户端接收到响应消息,其中,所述待验证签名信息是所述资源用户端对接收到的响应消息中的随机数进行数字签名得到的。
结合第三方面,在另一种实施方式中,所述第一处理单元具体用于:利用所述资源用户端的公钥对所述待验证签名信息进行解密,得到解密摘要;对所述资源用户端接收到的响应消息中的随机数进行函数运算,生成随机数摘要;根据所述解密摘要与所述随机数摘要验证所述资源用户端的身份是否合法。
结合第三方面,在另一种实施方式中,所述第一处理单元具体用于:在所述资源用户端为合法身份时,生成临时凭证,并将所述临时凭证发送至第三方客户端,其中,所述临时凭证用于所述第三方服务器向所述资源服务器换取授权令牌;根据所述第三方服务器的发送的第一反馈信息生成所述授权令牌,其中,所述第一反馈信息是所述第三方服务器根据所述第三方客户端发送的所述临时凭证生成的;将所述授权令牌发送至所述第三方服务器,其中,所述授权令牌用于所述第三方服务器向所述资源服务器换取所述用户资源信息;根据所述第三方服务器发送的第二反馈信息生成所述用户资源信息,其中,所述第二反馈信息携带所述授权令牌。
第四方面,本申请实施例提供了一种授权认证的资源用户端,所述资源用户端包括:第二获取单元,用于获取响应消息,其中,所述响应消息包括授权请求的标识信息和随机数;第二处理单元,用于基于所述资源用户端的数字证书对所述随机数进行数字签名,生成待验证签名信息;第二发送单元,用于将所述待验证签名信息以及所述授权请求的标识信息发送至资源服务器。
结合第四方面,在一种实施方式中,所述第二处理单元具体用于:对所述随机数进行函数运算,生成加密摘要;基于所述资源用户端的数字证书的私钥对所述加密摘要进行加密,生成所述待验证签名信息。
第五方面,本申请实施例提供了一种设备,包括:
处理器、存储器和总线,所述处理器通过所述总线与所述存储器相连,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,用于实现如上述第一方面以及第一方面的任一实施方式提供的所述的方法。
第六方面,本申请实施例提供一种可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被服务器执行时实现如上述第一方面以及第一方面的任一实施方式提供的所述方法中的步骤。
第七方面,本申请实施例提供了一种设备,包括:处理器、存储器和总线,所述处理器通过所述总线与所述存储器相连,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,用于实现如上述第二方面以及第二方面的任一实施方式提供的所述方法中的步骤。
第八方面,本申请实施例提供一种可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被服务器执行时实现如上述第二方面以及第二方面的任一实施方式提供的所述方法中的步骤。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种授权认证的系统结构示意图;
图2为本申请实施例提供的一种授权认证的方法交互流程图;
图3为本申请实施例提供的一种授权认证的资源服务器结构示意图;
图4为本申请实施例提供的一种授权认证的资源用户端结构示意图;
图5为本申请实施例提供的一种设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参照图1,图1为本申请实施例提供的一种授权认证的系统结构示意图,该系统100包括:资源用户端110、第三方客户端120、第三方服务器130和资源服务器140。
第三方客户端120为了访问资源服务器140中受保护的用户资源,第三方客户端120通过第三方服务器130向资源服务器140发送授权请求;资源服务器140向资源用户端110获取授权,并验证该授权,验证通过后产生临时凭证,然后将临时凭证发送给第三方客户端120;第三方客户端120使用该临时凭证通过第三方服务器130向资源服务器140获取授权令牌,第三方服务器130利用该授权令牌向资源服务器140获取受保护的用户资源,从而完成了资源服务器140将受保护的用户资源授权给第三方服务器130的认证过程。该处理过程与OAuth2.0协议的流程一致,因此,本申请技术技术方案与OAuth2.0协议具有兼容性。
需要说明的是,本申请实施例中资源用户端110可以有权授予对保护资源访问权限的用户端,可以是手机、平板电脑、笔记本电脑、掌上电脑和可穿戴设备,但本申请不限于此;资源服务器140可以是承载受保护资源的服务器,能够接收使用访问令牌对受保护资源的请求并响应,也可以是授权服务器,即服务提供商专门用来处理认证授权的服务器;第三方客户端120可以是资源所有者及其授权发出对受保护资源请求的应用程序或浏览器;第三方服务器130可以是第三方客户端120对应的后台服务器。
作为一种实施例,资源用户端110是医网信的用户端(医网信APP),资源服务器140是医网信的后台服务器,也是医网信开放平台的授权服务器,第三方客户端120是想要访问在资源服务器140中受保护资源的浏览器,第三方服务器130是第三方客户端120对应的后台服务器。
通过图2描述授权认证方法的具体过程,请参照图2,图2为本申请实施例提供的一种授权认证的方法交互流程图,具体的,图2所示的方法包括:
201,授权请求。
作为一种实施例,第三方客户端向第三方服务器发出授权请求,请求访问存储在资源服务器中的用户资源信息;
需要说明的是,资源服务器可以是医网信服务器,用户资源信息可以是存储在医网信服务器中的用户账户名、账户密码、图像、视频、文本、音频,但本申请不限于此。
202,授权请求。
第三方服务器获取授权请求,并将该授权请求发送至资源服务器;
203,响应消息。
获取第三方服务器发送的授权请求;
根据授权请求向第三方服务器发送响应消息,其中,响应消息包括授权请求的标识信息和随机数,随机数用于资源用户端进行数字签名。
作为一种实施例,资源服务器获取第三方服务器发送的授权请求,并根据该授权请求向第三方服务器发送响应消息,其中,响应消息包括授权请求的标识信息和随机数,随机数用于资源用户端进行数字签名。
需要说明的是,本申请实施例中,响应消息的呈现形式可以是二维码,也可以是条形码,也可以是链接,但本申请不限于此;授权请求202的标识信息可以是授权请求的ID,可以是统一资源定位系统(uniform resource locator,URL),也可以是第三方服务器的IP地址,但本申请不限于此。
在上述实现过程中,根据授权请求向第三方服务器发送响应消息,便于资源用户端利用个人数字证书对响应消息中的随机数进行数字签名,进一步便于对资源用户端进行身份认证,有效避免了用户的身份信息的泄露。
204,响应消息。
205,呈现响应消息。
作为一种实施例,第三方服务器将响应消息发送至第三方客户端,第三方客户端将收到的响应消息以二维码的形式呈现给资源用户端,并且该响应消息中包括了授权请求的ID,以及资源用户端进行数字签名的随机数。
在根据授权请求向第三方服务器发送响应消息之后,该方法还包括:
判断资源用户端在预设时间内是否接收到响应消息;
若否,根据授权请求向第三方服务器发送更新的响应消息,其中,更新的响应消息包括授权请求的标识信息和更新后的随机数;
重复上述过程,直至资源用户端接收到响应消息,其中,待验证签名信息是资源用户端对接收到的响应消息中的随机数进行数字签名得到的。
作为一种实施例,资源服务器根据授权请求向第三方服务器发送响应消息之后,还通过轮询的方式判断资源用户端在预设时间内是否接收到响应消息;
若否,资源服务器根据授权请求向第三方服务器发送更新的响应消息,其中,更新的响应消息包括授权请求的标识信息和更新后的随机数;并且重复上述判断过程,直到资源用户端接收到响应消息,每次发送的响应消息都包括授权请求的标识信息和随机数,每次发送的响应消息中的授权请求的标识信息相同,而随机数不同。
需要说明的是,本申请实施例中,预设时间可以是60秒,可以是90秒,也可以是120秒,但本申请不限于此。
若是,执行后续的认证操作流程。
在上述实现过程中,通过判断在预设时间内资源用户端是否接收到响应消息,若否,重新发送响应消息,重复判断过程,直到资源用户端接收到响应消息,并且每次发送的响应消息都包括授权请求的标识信息和随机数,每次发送的响应消息中的授权请求的标识信息相同,而随机数不同,能够有效的对响应消息中的随机数进行保护,避免被攻击者攻击或截取。
206,获取响应消息,并对响应消息中的随机数进行数字签名,生成待验证签名信息。
207,向资源服务器发送待验证签名信息。
获取响应消息,其中,响应消息包括授权请求的标识信息和随机数;
基于资源用户端的数字证书对随机数进行数字签名,生成待验证签名信息;
将待验证签名信息以及授权请求的标识信息发送至资源服务器。
作为一种实施例,资源用户端通过扫描呈现在第三方客户端的二维码来获取到响应消息,该响应消息包括授权请求的ID和随机数;
资源用户端使用个人数字证书对接收到的响应消息中的随机数进行数字签名,生成待验证签名信息;
对随机数进行函数运算,生成加密摘要;
基于资源用户端的数字证书的私钥对加密摘要进行加密,生成待验证签名信息。
具体的,利用哈希算法对随机数进行函数运算,生成加密摘要,再利用资源用户端的数字证书的私钥对加密摘要进行加密,生成待验证签名信息。
需要说明的是,资源用户端的数字证书是通过认证中心所颁发的一种较为权威与公正的证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息,能够保障用户身份信息的安全性和完整性。
作为一种实施例,资源用户端将验证签名信息和响应消息中的授权请求的标识信息发送至资源服务器。
作为另一种实施例,资源用户端将待验证签名信息、响应消息中的授权请求的标识信息、响应消息中的随机数以及个人数字证书发送至资源服务器。
在上述实现过程中,基于数字证书对响应消息中的随机数进行数字签名,便于对资源用户端进行身份认证,有效避免了授权认证过程中账号密码认证而导致用户信息泄露的问题,进一步提高了用户身份信息的安全性。
208,进行数字验证。
获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,授权请求用于第三方服务器申请访问资源服务器中受保护的用户资源信息;
对待验证签名信息进行签名认证,生成认证结果,其中,认证结果用于表征资源用户端的身份是否合法;
在资源用户端为合法身份时,执行资源服务器将用户资源信息授权给第三方服务器的认证过程。
作为一种实施例,资源服务器获取资源用户端发送的待验证签名信息以及授权请求的标识信息;
作为另一种实施例,资源服务器获取资源用户端发送的待验证签名信息、响应消息中的授权请求的标识信息、响应消息中的随机数以及个人数字证书;
对待验证签名信息进行签名认证,生成认证结果,其中,认证结果用于表征资源用户端的身份是否合法;
在资源用户端为合法身份时,执行资源服务器将用户资源信息授权给第三方服务器的认证过程。
利用资源用户端的公钥对待验证签名信息进行解密,得到解密摘要;
对资源用户端接收到的响应消息中的随机数进行函数运算,生成随机数摘要;
根据解密摘要与随机数摘要验证资源用户端的身份是否合法。
作为一种实施例,对获取到的待验证信息进行签名认证,生成认证结果;
具体的,利用数字证书中资源用户端的公钥对待验证签名信息进行解密,得到解密摘要;
进一步,利用哈希算法对资源用户端接收到的响应消息中的随机数进行函数运算,生成随机数摘要;
需要说明的是,响应消息中的随机数可以是资源用户端发送的,也可以是资源服务器生成该随机数后存储在本地的。
将解密摘要与随机数摘要进行对比,判断资源用户端的身份是否合法;
若解密摘要与随机数摘要相同,则资源用户端的身份合法,证书持有者操作者同意授权,且资源用户端发送的内容没有被篡改,资源用户端的身份得到认证,证书持有者操作者同意授权,即资源用户端的用户同意将自己存储在资源服务器中的资源授权给第三方服务器。
若解密摘要与随机数摘要不相同,则资源用户端的身份不合法,表示第三方服务器想要访问的用户资源信息没有得到用户的授权,则结束授权认证过程。
在上述实现过程中,通过数字证书签名以及验签名的方式确认授权用户的身份,能够有效地对资源用户端的身份进行认证,并且能够安全有效地得到用户的授权,进一步避免了通过用户名密码口令方式进行身份认证授权而造成用户信息被泄露的风险。
209,验证通过后产生临时凭证。
210,轮询到临时凭证。
在资源用户端为合法身份时,资源服务器生成临时凭证;
同时,资源服务器轮询到临时凭证,表明资源用户端同意将受保护的用户资源信息授权给第三方服务器服务的第三方客户端。
资源服务器将临时凭证发送至第三方客户端,其中,临时凭证用于第三方服务器向资源服务器换取授权令牌;
作为一种实施例,在资源用户端通过身份认证,即资源用户端身份合法时,资源服务器生成临时凭证,并将该临时凭证发送至第三方客户端;
需要说明的是,本申请实施例中的临时凭证是一次性的,且具有时效性,该临时凭证的时效可以是30秒内有效,可以是45秒内有效,也可以是60秒内有效,但本申请不限于此。超过该时效后,资源服务器生成新的临时凭证,新的临时凭证与原临时凭证作用和效果相同,但具体内容不同。且第三方服务器使用临时凭证向资源服务器换取授权令牌后即失效。
211,向第三方服务器发送临时凭证。
212,向资源服务器发送临时凭证。
作为一种实施例,第三方客户端向第三方服务器发送临时凭证,该临时凭证用于第三方服务器向资源服务器换取授权令牌;
第三方服务器获取到临时凭证后,通过加密的方式将临时凭证发送至资源服务器,该加密方式可以是在通信消息中存入安全标签以及临时凭证,对安全标签以及临时凭证进行加密,生成加密后的临时凭证,资源服务器收到加密后的临时凭证后通过检验安全标签的方式来判定通信消息是否被篡改或截取,从而保证第三方服务器与资源服务器通信的安全性。
在上述实现过程中,通过第三方服务器与资源服务器进行通信,并通过加密的方式传输通信消息,进一步对通信消息进行验证,能够有效地屏蔽掉非法调用,进一步确保用户授权信息的安全性。
213,验证临时凭证并生成授权令牌。
214,反馈授权令牌。
215,利用授权令牌换取用户资源信息。
根据第三方服务器的发送的第一反馈信息生成授权令牌,其中,第一反馈信息是第三方服务器根据第三方客户端发送的临时凭证生成的;
将授权令牌发送至第三方服务器,其中,授权令牌用于第三方服务器向资源服务器换取用户资源信息;
根据第三方服务器发送的第二反馈信息生成用户资源信息,其中,第二反馈信息携带授权令牌。
作为一种实施例,资源服务器对收到的临时凭证进行验证,验证通过后生成授权令牌,并将生成的授权令牌反馈给第三方服务器;
需要说明的是,本申请实施例中的第一反馈信息第三方服务器根据第三方客户端发送的临时凭证生成的,即第一馈信息中可以包括临时凭证。
第三方服务器收到授权令牌后,将授权令牌发送给资源服务器,通过该授权令牌向资源服务器换取用户资源信息。
需要说明的是,本申请实施例中的第二反馈信息是根据授权令牌生成的,也可以理解为第二反馈信息携带授权令牌。
216,根据授权令牌生成用户资源信息。
217,用户资源信息。
作为一种实施例,资源服务器获取到授权令牌后,生成用户资源信息,同时,授权令牌失效;接着,资源服务器将生成的用户资源信息发送至第三方服务器。
218,根据用户资源信息完成授权访问。
219,访问成功。
作为一种实施例,第三方服务器获取到用户资源信息后,根据用户资源信息进行自有业务处理,即根据用户资源信息进行访问,访问成功后第三方客户端完成了授权访问,能够进行相应的访问操作。
在上述实现过程中,基于数字证书进行身份认证,身份认证通过后,根据OAuth2.0协议实现在用户授权允许的前提下开放用户信息,能够有效地对用户身份进行认证,并保证用户的身份信息不被破解盗取,从而实现了用户资源信息的安全共享。
请参照图3,图3为本申请实施例提供的一种授权认证的资源服务器结构示意图,该资源服务器140应用于图2所示的授权认证的方法,具体的,如图3所示,资源服务器140包括:
第一获取单元141和第一处理单元142;
在一种实施方式中,第一获取单元,用于获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,授权请求用于第三方服务器申请访问资源服务器中受保护的用户资源信息;第一处理单元,用于对待验证签名信息进行签名认证,生成认证结果,其中,认证结果用于表征资源用户端的身份是否合法;第一处理单元还用于在资源用户端为合法身份时,执行资源服务器将用户资源信息授权给第三方服务器的认证过程。
在一种实施方式中,第一获取单元在用于获取资源用户端发送的待验证签名信息以及授权请求的标识信息之前,还用于:获取第三方服务器发送的授权请求;根据授权请求向第三方服务器发送响应消息,其中,响应消息包括授权请求的标识信息和随机数,随机数用于资源用户端进行数字签名。
在一种实施方式中,第一处理单元还用于:判断资源用户端在预设时间内是否接收到响应消息;若否,根据授权请求向第三方服务器发送更新的响应消息,其中,更新的响应消息包括授权请求的标识信息和更新后的随机数;重复上述过程,直至资源用户端接收到响应消息,其中,待验证签名信息是资源用户端对接收到的响应消息中的随机数进行数字签名得到的。
在一种实施方式中,第一处理单元具体用于:利用资源用户端的公钥对待验证签名信息进行解密,得到解密摘要;对资源用户端接收到的响应消息中的随机数进行函数运算,生成随机数摘要;根据解密摘要与随机数摘要验证资源用户端的身份是否合法。
在一种实施方式中,第一处理单元具体用于:在资源用户端为合法身份时,生成临时凭证,并将临时凭证发送至第三方客户端,其中,临时凭证用于第三方服务器向资源服务器换取授权令牌;根据第三方服务器的发送的第一反馈信息生成授权令牌,其中,第一反馈信息是第三方服务器根据第三方客户端发送的临时凭证生成的;将授权令牌发送至第三方服务器,其中,授权令牌用于第三方服务器向资源服务器换取用户资源信息;根据第三方服务器发送的第二反馈信息生成用户资源信息,其中,第二反馈信息携带授权令牌。
需要说明的是,图3所提供的资源服务器140,能够实现图2方法实施例中涉及资源服务器140授权认证的方法的各个过程。资源服务器140中的各个模块的操作和/或功能,分别为了实现图2中的方法实施例中的相应流程。具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详细描述。
请参照图4,图4为本申请实施例提供的一种授权认证的资源用户端结构示意图,该资源用户端110应用于图2所示的授权认证的方法,具体的,如图4所示,资源用户端110包括:
第二获取单元111、第二处理单元112以及第二发送单元113;
在一种实施方式中,第二获取单元,用于获取响应消息,其中,响应消息包括授权请求的标识信息和随机数;第二处理单元,用于基于资源用户端的数字证书对随机数进行数字签名,生成待验证签名信息;第二发送单元,用于将待验证签名信息以及授权请求的标识信息发送至资源服务器。
在一种实施方式中,第二处理单元具体用于:对随机数进行函数运算,生成加密摘要;基于资源用户端的数字证书的私钥对加密摘要进行加密,生成待验证签名信息。
需要说明的是,图4所提供的资源用户端110,能够实现图2方法实施例中涉及资源用户端110授权认证的方法的各个过程。资源用户端110中的各个模块的操作和/或功能,分别为了实现图2中的方法实施例中的相应流程。具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详细描述。
请参照图5,图5为本申请实施例提供的一种设备的结构示意图,所述设备可以包括:至少一个处理器510,例如CPU,至少一个通信接口520,至少一个存储器530和至少一个通信总线540。其中,通信总线540用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口520用于与其他节点设备进行信令或数据的通信。存储器530可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器530可选的还可以是至少一个位于远离前述处理器的存储装置。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备执行图2所示方法过程。
本申请实施例提供一种可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被服务器执行时实现资源用户端或资源服务器所执行图2所示的方法过程。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,也可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,所述系统装置的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个装置或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种授权认证的方法,其特征在于,所述方法应用于资源服务器,所述方法包括:
获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,所述授权请求用于第三方服务器申请访问所述资源服务器中受保护的用户资源信息;
对所述待验证签名信息进行签名认证,生成认证结果,其中,所述认证结果用于表征所述资源用户端的身份是否合法;
在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程;
在所述获取资源用户端发送的待验证签名信息以及授权请求的标识信息之前,所述方法还包括:获取所述第三方服务器发送的所述授权请求;根据所述授权请求向所述第三方服务器发送响应消息,其中,所述响应消息包括所述授权请求的标识信息和随机数,所述随机数用于资源用户端进行数字签名;
在所述根据所述授权请求向所述第三方服务器发送响应消息之后,所述方法还包括:
判断所述资源用户端在预设时间内是否接收到所述响应消息;若否,根据所述授权请求向所述第三方服务器发送更新的响应消息,其中,所述更新的响应消息包括所述授权请求的标识信息和更新后的随机数;
重复上述过程,直至所述资源用户端接收到响应消息,其中,所述待验证签名信息是所述资源用户端对接收到的响应消息中的随机数进行数字签名得到的。
2.根据权利要求1所述的方法,其特征在于,所述对所述待验证签名信息进行签名认证,生成认证结果,包括:
利用所述资源用户端的公钥对所述待验证签名信息进行解密,得到解密摘要;
对所述资源用户端接收到的响应消息中的随机数进行函数运算,生成随机数摘要;
根据所述解密摘要与所述随机数摘要验证所述资源用户端的身份是否合法。
3.根据权利要求1所述的方法,其特征在于,所述在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程,包括:
在所述资源用户端为合法身份时,生成临时凭证,并将所述临时凭证发送至第三方客户端,其中,所述临时凭证用于所述第三方服务器向所述资源服务器换取授权令牌;
根据所述第三方服务器的发送的第一反馈信息生成所述授权令牌,其中,所述第一反馈信息是所述第三方服务器根据所述第三方客户端发送的所述临时凭证生成的;
将所述授权令牌发送至所述第三方服务器,其中,所述授权令牌用于所述第三方服务器向所述资源服务器换取所述用户资源信息;
根据所述第三方服务器发送的第二反馈信息生成所述用户资源信息,其中,所述第二反馈信息携带所述授权令牌。
4.一种授权认证的方法,其特征在于,所述方法应用于资源用户端,所述方法包括:
获取响应消息,其中,所述响应消息包括授权请求的标识信息和随机数;
基于所述资源用户端的数字证书对所述随机数进行数字签名,生成待验证签名信息;
将所述待验证签名信息以及所述授权请求的标识信息发送至资源服务器;
其中,所述响应消息是由所述资源服务器接收到第三方服务器发送的所述授权请求后向所述第三方服务器发送的;
所述响应消息是由所述资源服务器判断所述资源用户端在预设时间内是否接收到;若否,所述资源服务器根据所述授权请求向所述第三方服务器发送更新的响应消息,其中,所述更新的响应消息包括所述授权请求的标识信息和更新后的随机数;重复上述过程,直至所述资源用户端接收到响应消息。
5.根据权利要求4所述的方法,其特征在于,所述基于所述资源用户端的数字证书对所述随机数进行数字签名,生成待验证签名信息,包括:
对所述随机数进行函数运算,生成加密摘要;
基于所述资源用户端的数字证书的私钥对所述加密摘要进行加密,生成所述待验证签名信息。
6.一种授权认证的资源服务器,其特征在于,所述资源服务器包括:
第一获取单元,用于获取资源用户端发送的待验证签名信息以及授权请求的标识信息,其中,所述授权请求用于第三方服务器申请访问所述资源服务器中受保护的用户资源信息;
第一处理单元,用于对所述待验证签名信息进行签名认证,生成认证结果,其中,所述认证结果用于表征所述资源用户端的身份是否合法;
所述第一处理单元还用于在所述资源用户端为合法身份时,执行所述资源服务器将所述用户资源信息授权给所述第三方服务器的认证过程;
所述第一获取单元,用于:
获取所述第三方服务器发送的所述授权请求;根据所述授权请求向所述第三方服务器发送响应消息,其中,所述响应消息包括所述授权请求的标识信息和随机数,所述随机数用于资源用户端进行数字签名;
判断所述资源用户端在预设时间内是否接收到所述响应消息;若否,根据所述授权请求向所述第三方服务器发送更新的响应消息,其中,所述更新的响应消息包括所述授权请求的标识信息和更新后的随机数;
重复上述过程,直至所述资源用户端接收到响应消息,其中,所述待验证签名信息是所述资源用户端对接收到的响应消息中的随机数进行数字签名得到的。
7.一种授权认证的资源用户端,其特征在于,所述资源用户端包括:
第二获取单元,用于获取响应消息,其中,所述响应消息包括授权请求的标识信息和随机数;
第二处理单元,用于基于所述资源用户端的数字证书对所述随机数进行数字签名,生成待验证签名信息;
第二发送单元,用于将所述待验证签名信息以及所述授权请求的标识信息发送至资源服务器;
其中,所述响应消息是由所述资源服务器接收到第三方服务器发送的所述授权请求后向所述第三方服务器发送的;
所述响应消息是由所述资源服务器判断所述资源用户端在预设时间内是否接收到;若否,所述资源服务器根据所述授权请求向所述第三方服务器发送更新的响应消息,其中,所述更新的响应消息包括所述授权请求的标识信息和更新后的随机数;重复上述过程,直至所述资源用户端接收到响应消息。
8.一种设备,其特征在于,包括:
处理器、存储器和总线,所述处理器通过所述总线与所述存储器相连,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,用于实现如权利要求1-5中任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被服务器执行时实现如权利要求1-5任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288236.XA CN112861089B (zh) | 2021-03-17 | 2021-03-17 | 授权认证的方法、资源服务器、资源用户端、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110288236.XA CN112861089B (zh) | 2021-03-17 | 2021-03-17 | 授权认证的方法、资源服务器、资源用户端、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112861089A CN112861089A (zh) | 2021-05-28 |
CN112861089B true CN112861089B (zh) | 2024-02-20 |
Family
ID=75995201
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110288236.XA Active CN112861089B (zh) | 2021-03-17 | 2021-03-17 | 授权认证的方法、资源服务器、资源用户端、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112861089B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312653A (zh) * | 2021-06-25 | 2021-08-27 | 中国农业银行股份有限公司 | 开放平台认证授权方法、装置及存储介质 |
CN113609528A (zh) * | 2021-07-14 | 2021-11-05 | 洛阳小行家科技有限公司 | 一种基于数字通行证的数据授权流通方法及系统 |
CN113656785B (zh) * | 2021-07-30 | 2024-07-02 | 中金金融认证中心有限公司 | 对银行用户进行身份认证、认证服务的方法及相关产品 |
CN113672884A (zh) * | 2021-08-23 | 2021-11-19 | 浙江大华技术股份有限公司 | 身份认证方法、装置、存储介质和身份认证设备 |
CN114066708A (zh) * | 2021-11-16 | 2022-02-18 | 深圳前海微众银行股份有限公司 | 一种可回溯的图片授权方法及装置 |
CN114338031A (zh) * | 2021-11-22 | 2022-04-12 | 珠海格力电器股份有限公司 | 一种数据共享方法、装置、电子设备及存储介质 |
CN114117551B (zh) * | 2021-11-26 | 2022-12-27 | 深圳前海微众银行股份有限公司 | 一种访问验证方法及装置 |
CN114244533B (zh) * | 2021-12-21 | 2025-03-11 | 掌阅科技股份有限公司 | 资源传输方法、终端和存储介质 |
CN118246003B (zh) * | 2024-03-12 | 2025-02-14 | 中金金融认证中心有限公司 | 基于URL的License授权认证方法及认证系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5926549A (en) * | 1996-02-12 | 1999-07-20 | Bull S.A. | Process for verifying the preservation of the integrity of an unprotected request sent by a client to a server by verifying the integrity of the response |
WO2008122627A1 (en) * | 2007-04-05 | 2008-10-16 | Infineon Technologies Ag | Communication terminal device, communication device, electronic card, method for a communication terminal device and method for a communication device for providing a verification |
CN101674304A (zh) * | 2009-10-15 | 2010-03-17 | 浙江师范大学 | 一种网络身份认证系统及方法 |
CN107454115A (zh) * | 2017-10-10 | 2017-12-08 | 北京奇艺世纪科技有限公司 | 一种摘要认证方法及摘要认证系统 |
CN109672537A (zh) * | 2019-01-18 | 2019-04-23 | 如般量子科技有限公司 | 基于公钥池的抗量子证书获取系统及获取方法 |
US10484372B1 (en) * | 2015-12-14 | 2019-11-19 | Amazon Technologies, Inc. | Automatic replacement of passwords with secure claims |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8245052B2 (en) * | 2006-02-22 | 2012-08-14 | Digitalpersona, Inc. | Method and apparatus for a token |
US9374369B2 (en) * | 2012-12-28 | 2016-06-21 | Lookout, Inc. | Multi-factor authentication and comprehensive login system for client-server networks |
-
2021
- 2021-03-17 CN CN202110288236.XA patent/CN112861089B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5926549A (en) * | 1996-02-12 | 1999-07-20 | Bull S.A. | Process for verifying the preservation of the integrity of an unprotected request sent by a client to a server by verifying the integrity of the response |
WO2008122627A1 (en) * | 2007-04-05 | 2008-10-16 | Infineon Technologies Ag | Communication terminal device, communication device, electronic card, method for a communication terminal device and method for a communication device for providing a verification |
CN101674304A (zh) * | 2009-10-15 | 2010-03-17 | 浙江师范大学 | 一种网络身份认证系统及方法 |
US10484372B1 (en) * | 2015-12-14 | 2019-11-19 | Amazon Technologies, Inc. | Automatic replacement of passwords with secure claims |
CN107454115A (zh) * | 2017-10-10 | 2017-12-08 | 北京奇艺世纪科技有限公司 | 一种摘要认证方法及摘要认证系统 |
CN109672537A (zh) * | 2019-01-18 | 2019-04-23 | 如般量子科技有限公司 | 基于公钥池的抗量子证书获取系统及获取方法 |
Non-Patent Citations (1)
Title |
---|
云环境中外包数据安全访问关键技术研究;李昊星;信息科技(第1期);20-40 * |
Also Published As
Publication number | Publication date |
---|---|
CN112861089A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112861089B (zh) | 授权认证的方法、资源服务器、资源用户端、设备和介质 | |
CN102217277B (zh) | 基于令牌进行认证的方法和系统 | |
KR101759193B1 (ko) | 안전한 전자 거래를 위한 네트워크 인증 방법 | |
CN110519309B (zh) | 数据传输方法、装置、终端、服务器及存储介质 | |
CN100563151C (zh) | 一种数字证书更新方法及系统 | |
CN111901346B (zh) | 一种身份认证系统 | |
EP2414983B1 (en) | Secure Data System | |
CN111030814A (zh) | 秘钥协商方法及装置 | |
CN109218334B (zh) | 数据处理方法、装置、接入控制设备、认证服务器及系统 | |
CN109684129B (zh) | 数据备份恢复方法、存储介质、加密机、客户端和服务器 | |
CN104767731A (zh) | 一种Restful移动交易系统身份认证防护方法 | |
JP5431040B2 (ja) | 認証要求変換装置、認証要求変換方法および認証要求変換プログラム | |
CN109981665B (zh) | 资源提供方法及装置、资源访问方法及装置和系统 | |
JP5452192B2 (ja) | アクセス制御システム、アクセス制御方法およびプログラム | |
CN109873819A (zh) | 一种防止非法访问服务器的方法及系统 | |
CN113918967A (zh) | 基于安全校验的数据传输方法、系统、计算机设备、介质 | |
CN114338201B (zh) | 数据处理方法及其装置、电子设备及存储介质 | |
CN104901967A (zh) | 信任设备的注册方法 | |
CN111080856A (zh) | 蓝牙门禁开锁方法 | |
CN113792345A (zh) | 一种数据访问控制方法及装置 | |
CN110807210B (zh) | 一种信息处理方法、平台、系统及计算机存储介质 | |
CN116528230A (zh) | 验证码处理方法、移动终端及可信服务系统 | |
CN110968878A (zh) | 信息传输方法、系统、电子设备及可读介质 | |
CN110532741B (zh) | 个人信息授权方法、认证中心及服务提供方 | |
CN106789060A (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 |