CN106375270A - 令牌生成并认证的方法及认证服务器 - Google Patents
令牌生成并认证的方法及认证服务器 Download PDFInfo
- Publication number
- CN106375270A CN106375270A CN201510439479.3A CN201510439479A CN106375270A CN 106375270 A CN106375270 A CN 106375270A CN 201510439479 A CN201510439479 A CN 201510439479A CN 106375270 A CN106375270 A CN 106375270A
- Authority
- CN
- China
- Prior art keywords
- token
- certificate server
- authentication
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种令牌生成并认证方法及认证服务器,方法包括:第一认证服务器对用户的登录请求进行验证;所述第一认证服务器对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成包括标识信息以及令牌寻址信息的令牌;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述第一认证服务器位于所述认证服务器集群中。本发明实施例在正确认证令牌的情况下,能够节省认证服务器集群内的数据传输资源以及存储资源。
Description
技术领域
本发明涉及通信领域,尤其涉及一种令牌生成并认证的方法及认证服务器。
背景技术
单点登录是指在多个相互信任应用***中,用户只需要登录一次就可以访问所有应用***。一般的,一个网站中可以包括多个应用***,例如某一网站可以包括网上营业厅、网上商城、积分商城、Portal等应用***,如果网站支持单点登录,用户可以只在网站登录一次而访问网站中所有的应用***。
在支持单点登录的网站中,网站一般包括支持各种应用***的应用***服务器、用于登录和令牌认证的认证***,网站的认证***在用户成功登录后,为用户生成令牌,之后,用户可以携带令牌访问各个应用***。图1通过举例的方式说明用户单点登录过程,其中以应用***为网上营业厅和网上商城为例。参见图1,网络架构包括:网上营业厅服务器、网上商城服务器、认证***以及用户所在的客户端,具体单点登录过程包括:用户访问网上营业厅时,客户端向网上营业厅服务器发送访问请求,网上营业厅服务器确定用户未登录时向客户端反馈登录指示;客户端向认证***发送携带用户名和密码的登录请求,认证***根据用户名和密码确定用户成功登录后为用户生成令牌,将令牌发送给客户端;之后,用户访问网上营业厅时,客户端向网上营业厅服务器发送携带令牌的访问请求,网上营业厅服务器将令牌发送至认证***进行认证,如果认证结果为认证成功,认证***向网上营业厅服务器反馈用户信息,网上营业厅服务器允许用户访问网上营业厅;同样的,用户访问网上商城时,客户端向网上商城服务器发送携带令牌的访问请求,网上商城服务器将令牌发送至认证***进行认证,如果认证结果为认证成功,认证***向网上商城服务器反馈用户信息,网上商城服务器允许用户访问网上商城。
参见图2,认证***一般由负载均衡服务器以及认证服务器集群构成,认证服务器集群中包括n台认证服务器,n大于等于2,负载均衡服务器与客户端、应用***服务器分别连接。当客户端向认证***发送登录请求或者应用***服务器向认证***发送令牌认证请求时,由负载均衡服务器分发至认证服务器集群中的认证服务器进行处理。负载均衡服务器一般根据发送请求的客户端或者应用***服务器的IP地址进行hash运算,根据运算结果分发接收到的请求,由于客户端与应用***服务器的IP地址不同,从而负载均衡服务器可能将客户端发送的某一用户的登录请求、应用***服务器发送的该用户的令牌认证请求分发至不同的认证服务器,也就是说生成令牌的认证服务器与认证令牌的认证服务器不是同一服务器,从而导致认证***无法正确进行令牌认证,进而用户无法通过令牌正常访问应用***。
目前解决这一问题的方法是:认证服务器集群中的每个认证服务器复制其他所有认证服务器中的会话,这里的会话是处理用户登录请求的认证服务器在用户成功登录后所保存的用户的状态信息,例如用户的登录状态以及为用户发放的令牌列表等状态,会话在用户成功登录后建立,用户超时未访问时被清除。例如,参见表1所示,认证服务器1中存储有用户A、E、G的会话,认证服务器2中存储有用户C、D的会话,认证服务器3中存储有用户F、H的会话,则认证服务器1需要复制认证服务器2、3中的会话,认证服务器2需要复制认证服务器1、3中的会话,认证服务器3需要复制认证服务器1、2中的会话,参见表2所示,认证服务器1、2、3最终均需要存储用户A~H的会话。
表1
认证服务器1 | 认证服务器2 | 认证服务器3 |
用户A | 用户C | 用户F |
用户E | 用户D | 用户H |
用户G |
表2
认证服务器1 | 认证服务器2 | 认证服务器3 |
用户A | 用户C | 用户F |
用户E | 用户D | 用户H |
用户G | 用户A | 用户A |
用户C | 用户E | 用户E |
用户D | 用户G | 用户G |
用户F | 用户F | 用户C |
用户H | 用户H | 用户D |
每一个认证服务器需要复制其他所有认证服务器中的会话,将大大消耗认证服务器集群内的数据传输资源,而且,每一个认证服务器均存储所有用户的会话,对认证服务器的容量要求高,且浪费认证服务器集群的存储资源。
发明内容
本发明实施例中提供了一种令牌生成并认证的方法及认证服务器,在正确认证令牌的情况下,能够节省认证服务器集群内的数据传输资源以及存储资源。
第一方面,本发明实施例提供一种令牌生成并认证的方法,该方法包括:
第一认证服务器对用户的登录请求进行验证;
所述第一认证服务器对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成包括标识信息以及令牌寻址信息的令牌;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述第一认证服务器位于所述认证服务器集群中。
结合第一方面,在第一方面第一种可能的实现方式中,所述第一认证服务器为所述用户生成令牌,包括:
所述第一认证服务器确定所述标识信息;
所述第一认证服务器根据所述第一认证服务器的地址和服务端口生成令牌寻址信息;
所述第一认证服务器将所述令牌寻址信息封装于所述标识信息之外。
结合第一方面第一种可能的实现方式,在第一方面第二种可能的实现方式中,所述令牌还包括:安全验证信息;所述第一认证服务器为所述用户生成令牌,还包括:
所述第一认证服务器将所述安全验证信息封装于所述令牌寻址信息和所述验证信息之外。
结合第一方面,和/或第一方面第一种可能的实现方式,和/或第一方面第二种可能的实现方式,在第一方面第三种可能的实现方式中,还包括:
所述第一认证服务器接收令牌认证请求,所述令牌认证请求中包括所述令牌,从所述令牌认证请求携带的令牌中获取令牌寻址信息;
所述第一认证服务器确定获取的所述令牌寻址信息指示的存储位置为所述第一认证服务器时,所述第一认证服务器从所述令牌认证请求携带的令牌中获取标识信息,根据获取的所述标识信息对所述令牌认证请求携带的令牌进行认证。
结合第一方面第三种可能的实现方式,在第一方面第四种可能的实现方式中,所述第一认证服务器确定获取的所述令牌寻址信息指示的存储位置为所述第一认证服务器包括:
所述第一认证服务器确定获取的所述令牌寻址信息中的地址和服务端口是所述第一认证服务器的地址和服务端口。
结合第一方面第四种可能的实现方式,在第一方面第五种可能的实现方式中,所述令牌认证请求携带的令牌还包括:安全验证信息;所述第一认证服务器从所述令牌认证请求携带的令牌中获取令牌寻址信息之前还包括:
所述第一认证服务器从所述令牌认证请求携带的令牌中获取所述安全验证信息,根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证。
结合第一方面第五种可能的实现方式,在第一方面第六种可能的实现方式中,获取的所述安全验证信息为:SHA算法私钥;所述第一认证服务器根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证包括:
所述第一认证服务器使用SHA算法公钥对所述SHA算法私钥进行安全验证。
结合第一方面第三种可能的实现方式,和/或第一方面第四种可能的实现方式,和/或第一方面第五种可能的实现方式,和/或第一方面第六种可能的实现方式,在第一方面第七种可能的实现方式中,所述第一认证服务器根据获取的标识信息对所述令牌认证请求携带的令牌进行认证包括:
所述第一认证服务器搜索本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
第二方面,本发明实施例提供一种令牌生成并认证的方法,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;该方法包括:
第二认证服务器接收令牌认证请求,所述令牌认证请求中包括令牌,从所述令牌中获取令牌寻址信息;
所述第二认证服务器确定所述令牌寻址信息指示的存储位置不位于所述第二认证服务器时,所述第二认证服务器将所述令牌转发至所述令牌寻址信息指示的存储位置所在的第一认证服务器,以便第一认证服务器对所述令牌进行认证;所述第一认证服务器和所述第二认证服务器均位于所述认证服务器集群。
结合第二方面,在第二方面第一种可能的实现方式中,还包括:
所述第二认证服务器接收所述第一认证服务器发送的认证结果,所述认证结果由所述第一认证服务器对所述令牌进行认证得到。
第三方面,本发明实施例提供一种认证服务器,包括:
验证单元,用于对用户的登录请求进行验证;
建立单元,用于当所述验证单元对用户的登录请求验证成功时,为所述用户建立会话;
生成单元,用于当所述验证单元对用户的登录请求验证成功时,为所述用户生成令牌,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述认证服务器位于所述认证服务器集群中。
结合第三方面,在第三方面第一种可能的实现方式中,所述生成单元包括:
确定子单元,用于确定所述标识信息;
生成子单元,用于根据所述认证服务器的地址和服务端口生成令牌寻址信息;
封装子单元,用于将所述令牌寻址信息封装于所述标识信息之外。
结合第三方面第一种可能的实现方式,在第三方面第二种可能的实现方式中,所述令牌还包括:安全验证信息;所述封装子单元还用于:
将所述安全验证信息封装于所述令牌寻址信息和所述验证信息之外。
结合第三方面,和/或第三方面第一种可能的实现方式,和/或第三方面第二种可能的实现方式,在第三方面第三种可能的实现方式中,还包括:
接收单元,用于接收令牌认证请求,所述令牌认证请求中包括所述令牌;
处理单元,用于从所述接收单元接收的所述令牌认证请求携带的令牌中获取令牌寻址信息;确定获取的所述令牌寻址信息指示的存储位置为所述认证服务器时,从所述令牌认证请求携带的令牌中获取标识信息;
认证单元,用于根据所述获取单元获取的所述标识信息对所述令牌认证请求携带的令牌进行认证。
结合第三方面第三种可能的实现方式,在第三方面第四种可能的实现方式中,所述处理单元具体用于:
确定获取的所述令牌寻址信息中的地址和服务端口是所述认证服务器的地址和服务端口。
结合第三方面第四种可能的实现方式,在第三方面第五种可能的实现方式中,所述令牌认证请求携带的令牌还包括:安全验证信息;所述处理单元还用于:
从所述令牌认证请求携带的令牌中获取所述安全验证信息,根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证。
结合第三方面第五种可能的实现方式,在第三方面第六种可能的实现方式中,获取的所述安全验证信息为:SHA算法私钥;所述处理单元用于根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证,具体包括:
使用SHA算法公钥对所述SHA算法私钥进行安全验证。
结合第三方面第三种可能的实现方式,和/或第三方面第四种可能的实现方式,和/或第三方面第五种可能的实现方式,和/或第三方面第六种可能的实现方式,在第三方面第七种可能的实现方式中,所述认证单元具体用于:
搜索所述认证服务器本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
第四方面,本发明实施例提供一种认证服务器,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述认证服务器位于所述认证服务器集群,所述认证服务器包括:
接收单元,用于接收令牌认证请求,所述令牌认证请求中包括令牌;
获取单元,用于从所述接收单元接收到的所述令牌中获取令牌寻址信息;
发送单元,用于确定所述获取单元获取的所述令牌寻址信息指示的存储位置不是所述认证服务器时,依据所述存储位置将所述令牌转发至与所述认证服务器位于同一集群的另一认证服务器,以便所述存储位置所在的另一认证服务器对所述令牌进行认证。
结合第四方面,在第四方面第一种可能的实现方式中,所述接收单元还用于:
接收所述存储位置所在的认证服务器发送的认证结果,所述认证结果由所述存储位置所在的认证服务器对所述令牌进行认证得到。
本发明实施例中,第一认证服务器对用户的登录请求进行验证,对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成令牌,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述第一认证服务器位于所述认证服务器集群中。首先,第一认证服务器生成的令牌中包括标识信息,从而保证认证服务器集群能够对令牌进行准确认证;其次,由于在令牌中携带了令牌寻址信息,即便负载均衡服务器确定的认证服务器不是存储该令牌的认证服务器,认证服务器也可以根据令牌寻址信息将令牌转发至保存有该令牌的认证服务器进行令牌认证,从而认证服务器之间无需相互复制会话,节省了认证服务器集群内的数据传输资源以及存储资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术用户单点登录流程示例图;
图2为现有技术一种支持单点登录的网络结构图;
图3为本发明实施例令牌认证方法应用的网络结构示例图;
图4为本发明实施例令牌生成并认证方法的一种流程示意图;
图5A为本发明实施例令牌的一种结构示意图;
图5B为本发明实施例令牌的另一种结构示意图;
图5C为本发明实施例令牌生成和拆解过程示意图;
图6为本发明实施例令牌生成并认证方法的另一流程示意图;
图7A为本发明实施例令牌生成并认证方法的一种网络结构示例图;
图7B为本发明实施例令牌生成并认证方法的另一流程示意图;
图7C为本发明实施例令牌认证过程一种示例图;
图8A为本发明实施例令牌生成并认证方法的另一流程示意图;
图8B为本发明实施例令牌认证过程另一种示例图;
图9为本发明实施例第一认证服务器的结构示意图;
图10为本发明实施例第二认证服务器的结构示意图;
图11为本发明实施例认证服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
其中,本发明实施例令牌认证方法所应用的网络架构参见图3所示,包括:客户端310、m个应用***服务器320(m≥2)、负载均衡服务器330、n个认证服务器3401(n≥2)构成的认证服务器集群340;其中,负载均衡服务器330分别与客户端310、各个应用***服务器320、各个认证服务器3401连接。客户端310,用于用户登录、访问各个应用***;应用***服务器320,用于为用户提供对应应用***的各项服务;负载均衡服务器330,用于将客户端发来的登录请求、各个应用***服务器发来的令牌认证请求分发给各个认证服务器3401进行处理,将各个认证服务器3401的处理结果反馈给相应的客户端310或应用***服务器320;各个认证服务器3401,用于对登录请求或令牌认证请求进行处理,将处理结果反馈负载均衡服务器330。
以下以该网络架构为参考,说明本发明实施例令牌认证方法、装置及服务器的实现。
参见图4,为本发明实施例令牌生成并认证方法的一种流程示意图,该方法包括:
步骤401:第一认证服务器对用户的登录请求进行验证;
其中,第一认证服务器可以是认证服务器集群中的任一服务器,称为第一认证服务器仅用于与之后出现的第二认证服务器进行区分。第一、第二并无其他实际意义。
步骤402:所述第一认证服务器对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成包括标识信息以及令牌寻址信息的令牌。
其中,所述第一认证服务器位于所述认证服务器集群中。
以下,对本发明实施例中的令牌进行说明。
为了与本发明实施例中的令牌区别,以下将现有技术的令牌称为传统令牌,传统令牌一般包括标识信息,标识信息可以由用户信息、或者会话信息或者随机码实现,作用在于唯一标识用户成功登录后认证服务器为用户所建立的会话。认证服务器可以根据传统令牌在认证服务器中快速查找用户的会话,进而确定用户是否成功登录以及传统令牌是否正确。
本发明实施例的令牌可以包括:标识信息以及令牌寻址信息;标识信息用于标识认证服务器为用户所建立的会话,令牌寻址信息用于指示令牌在认证服务器集群中的存储位置。
其中,标识信息可以通过传统令牌实现,此时本发明实施例可以与现有技术兼容。标识信息具体可以由用户信息、或者会话信息或者随机码实现,作用在于唯一标识用户成功登录后认证服务器为用户所建立的会话。
其中,令牌寻址信息可以包括:生成令牌的认证服务器的地址、认证服务端口。认证服务器的地址可以为认证服务器在认证服务器集群中的内网IP地址、也可以为认证服务器的Mac地址等,只要能够唯一标识认证服务器即可。认证服务端口用于记录认证服务器提供服务的端口。
可选的,为了提高令牌在传递过程中的安全性,令牌可以进一步包括:安全验证信息。安全验证信息用于进行令牌的安全验证。在一种可能的实现方式中,安全验证信息可以为加密算法的密钥,如安全哈希算法(SHA,Secure Hash Algorithm)的私钥等。
在第一种可能的实现方式中,参见图5A所示,可以由传统令牌附加令牌寻址信息得到令牌。
在第二种可能的实现方式中,参见图5B所示,可以由传统令牌附加令牌寻址信息以及安全验证信息,得到令牌。
在一种可能的实现方式中,可以通过逐层封装的方式生成令牌。当令牌包括标识信息和令牌寻址信息时,可以在标识信息外封装令牌寻址信息;当令牌包括:标识信息、令牌寻址信息和安全验证信息时,可以在标识信息外逐层封装令牌寻址信息和安全验证信息。例如,参见图5C所示,对于图5B中所示的令牌结构,可以首先生成传统令牌,之后封装令牌寻址信息,最后封装安全验证信息;相应的,认证服务器对需要验证的令牌,首先拆解出安全验证信息,验证通过后,拆解出令牌寻址信息,最后拆解出传统令牌。
当令牌包括标识信息和令牌寻址信息时,所述第一认证服务器为所述用户生成令牌,可以包括:
所述第一认证服务器确定所述标识信息;
所述第一认证服务器根据所述第一认证服务器的地址和服务端口生成令牌寻址信息;
所述第一认证服务器将所述令牌寻址信息封装于所述标识信息之外。
当令牌包括标识信息、令牌寻址信息和安全验证信息时,所述第一认证服务器为所述用户生成令牌,可以包括:
所述第一认证服务器确定所述标识信息;
所述第一认证服务器根据所述第一认证服务器的地址和服务端口生成令牌寻址信息;
所述第一认证服务器将所述令牌寻址信息封装于所述标识信息之外;
所述第一认证服务器将所述安全验证信息封装于所述令牌寻址信息和所述验证信息之外。
其中,步骤402之后还可以包括:
所述第一认证服务器接收令牌认证请求,所述令牌认证请求中包括所述令牌,从所述令牌认证请求携带的令牌中获取令牌寻址信息;
所述第一认证服务器确定获取的所述令牌寻址信息指示的存储位置为所述第一认证服务器时,所述第一认证服务器从所述令牌认证请求携带的令牌中获取标识信息,根据获取的所述标识信息对所述令牌认证请求携带的令牌进行认证。
其中,所述第一认证服务器确定获取的所述令牌寻址信息指示的存储位置为所述第一认证服务器可以包括:
所述第一认证服务器确定获取的所述令牌寻址信息中的地址和服务端口是所述第一认证服务器的地址和服务端口。
其中,所述令牌认证请求携带的令牌还可以包括:安全验证信息;所述第一认证服务器从所述令牌认证请求携带的令牌中获取令牌寻址信息之前还可以包括:
所述第一认证服务器从所述令牌认证请求携带的令牌中获取所述安全验证信息,根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证。
其中,获取的所述安全验证信息可以为:SHA算法私钥;所述第一认证服务器根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证可以包括:
所述第一认证服务器使用SHA算法公钥对所述SHA算法私钥进行安全验证。
其中,所述第一认证服务器根据获取的标识信息对所述令牌认证请求携带的令牌进行认证可以包括:
所述第一认证服务器搜索本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
本发明实施例中,第一认证服务器对用户的登录请求进行验证,对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成令牌,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述第一认证服务器位于所述认证服务器集群中。首先,第一认证服务器生成的令牌中包括标识信息,从而保证认证服务器集群能够对令牌进行准确认证;其次,由于在令牌中携带了令牌寻址信息,即便负载均衡服务器确定的认证服务器不是存储该令牌的认证服务器,认证服务器也可以根据令牌寻址信息将令牌转发至保存有该令牌的认证服务器进行令牌认证,从而认证服务器之间无需相互复制会话,节省了认证服务器集群内的数据传输资源以及存储资源。
参见图6,为本发明实施例令牌生成并认证方法的另一流程示意图,该方法包括:
步骤601:第二认证服务器接收令牌认证请求,所述令牌认证请求中包括令牌,从所述令牌中获取令牌寻址信息;所述第二认证服务器位于所述认证服务器集群。
步骤602:所述第二认证服务器确定所述令牌寻址信息指示的存储位置不位于所述第二认证服务器时,所述第二认证服务器将所述令牌转发至所述令牌寻址信息指示的存储位置所在的第一认证服务器,以便第一认证服务器对所述令牌进行认证。
其中,步骤602之后还可以包括:
所述第二认证服务器接收所述第一认证服务器发送的认证结果,所述认证结果由所述第一认证服务器对所述令牌进行认证得到。
本实施例中,第二认证服务器从需要认证的令牌中获取令牌寻址信息,确定所述令牌寻址信息指示的存储位置不位于所述第二认证服务器时,将所述令牌转发至所述令牌寻址信息指示的存储位置所在的第一认证服务器,由第一认证服务器对所述令牌进行认证,从而保证认证服务器集群能够对令牌进行准确认证;而且,由于在令牌中携带了令牌寻址信息,即便负载均衡服务器确定的第二认证服务器不是存储该令牌的认证服务器,第二认证服务器也可以根据令牌寻址信息将令牌转发至保存有该令牌的第一认证服务器进行令牌认证,从而认证服务器之间无需相互复制会话,节省了认证服务器集群内的数据传输资源以及存储资源。
参见图7A,为本发明实施例网络架构举例,其中包括:客户端、应用***服务器、负载均衡服务器、认证服务器集群,认证服务器集群包括认证服务器1、认证服务器2、认证服务器3。其中,假设认证服务器1是为客户端所属用户生成令牌的第一认证服务器。
结合7A,对本发明实施例令牌生成并认证方法进行说明。
参见图7B,为本发明实施例令牌生成并认证方法的另一流程示意图,该实施例中,假设负载均衡服务器确定的进行令牌认证的服务器为第一认证服务器。该方法包括:
以下步骤701~步骤705为用户在客户端登录并获取令牌的过程。
步骤701:客户端向负载均衡服务器发送登录请求,登录请求中携带用户登录信息,用户登录信息可以为用户名和密码。
例如,假设使用客户端的用户为用户A,则登录请求中可以携带用户A的用户名和密码。
步骤702:负载均衡服务器确定处理该登录请求的认证服务器1,将登录请求转发至认证服务器1。
其中,认证服务器1可以是认证服务器集群中的认证服务器。
其中,负载均衡服务器可以根据发送登录请求的客户端的IP地址等进行hash运算确定处理令牌认证请求的认证服务器。
步骤703:认证服务器1根据用户名、密码进行登录验证,验证通过时,为所述用户建立会话,并为所述用户生成令牌,令牌包括:标识信息、令牌寻址信息以及安全验证信息。
其中,本发明实施例仅关注登录验证通过后认证服务器为用户生成令牌情况下的处理过程,对于登录验证不通过的处理过程并不限定,不再赘述。
令牌寻址信息可以包括:认证服务器1的地址、认证服务端口。
其中,认证服务器1生成令牌寻址信息的方法可以参考步骤402中的相关描述,这里不再赘述。
本步骤中,认证服务器1为用户建立的会话中一般存储令牌中的标识信息,当标识信息通过传统令牌实现时,认证服务器1为用户建立的会话中存储传统令牌。需要说明的是,标识信息可以有一个或多个,用户可以使用其中任何一个进行认证。本发明实施例中认证服务器1可以仅将为用户建立的会话存储于本地,而不同步到其他认证服务器。
例如,表3所示为认证服务器1、2、3中所保存会话举例。例如,表3中认证服务器1为用户A建立了会话,并保存了为用户A生成的传统令牌A01、A02。其中,本实施例以认证服务器1为用户A生成的两个传统令牌A01、A02为例,在使用过程中可使用A01、A02中的任意一个。
表3
步骤704:认证服务器1将令牌发送给负载均衡服务器。
步骤705:负载均衡服务器将令牌发送给客户端。
以下步骤706~步骤713为令牌认证过程。
步骤706:客户端向应用***服务器发送访问请求,访问请求中携带用户的令牌。
步骤707:应用***服务器向负载均衡服务器发送令牌认证请求,令牌认证请求中携带令牌。
步骤708:负载均衡服务器确定认证服务器1处理该令牌认证请求,将令牌认证请求转发给认证服务器1。
其中,负载均衡服务器可以根据发送令牌认证请求的应用***服务器的IP地址等进行hash运算确定处理令牌认证请求的认证服务器1。
步骤709:认证服务器1从令牌认证请求中获取令牌。
步骤710:认证服务器1从获取的令牌中获取安全验证信息,根据获取的安全验证信息对获取的令牌进行安全验证,验证通过时,执行步骤711。
当验证失败时,认证服务器1可以向负载均衡服务器发送验证失败消息,负载均衡服务器向客户端转发验证失败消息,这里不赘述。
例如,假设安全验证信息为SHA算法私钥,本步骤中认证服务器1可以使用SHA算法公钥验证令牌。
步骤711:认证服务器1从获取的令牌中获取令牌寻址信息,确定获取的所述令牌寻址信息指示的存储位置是否为认证服务器1,如果是,执行步骤712。
由于步骤709中令牌认证请求中携带的是认证服务器1为用户生成的令牌,所述本步骤中确定结果必然为是,确定结果为否的分支不再赘述。
步骤712:认证服务器1从获取的令牌中获取标识信息,根据获取的标识信息对获取的令牌进行认证,得到认证结果,执行步骤713。
认证服务器1根据获取的标识信息对获取的令牌进行认证可以包括:
认证服务器1搜索本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
具体的,如果本地存储的会话中存在所述标识信息标识的会话,认证服务器1获取搜索到的会话中的用户信息,生成包含所述用户信息的认证成功消息;如果不存在所述标识信息标识的会话,生成认证失败消息。
步骤713:认证服务器1将认证结果发送给负载均衡服务器,负载均衡服务器将接收到的认证结果发送给应用***服务器,应用***服务器根据认证结果响应客户端的访问请求;处理流程结束。
其中,如果认证结果为认证成功消息,应用***服务器获取用户信息,允许用户访问应用***;如果认证结果为认证失败消息,应用***不允许用户访问应用***。
对步骤706~步骤713的令牌认证过程举例说明:
假设认证服务器1中存储的会话如表3所示,应用***服务器需要验证封装有传统令牌A01的令牌a01,则,执行步骤706~713,直接由认证服务器1对负载均衡服务器发来的令牌a01进行认证,将认证结果通过负载均衡服务器反馈至应用***服务器,参见图7C所示。
本实施例中,认证服务器1既是生成令牌的服务器,又是负载均衡服务器确定的验证令牌的服务器,根据令牌中的令牌寻址信息可以确定令牌寻址信息指示的存储位置为认证服务器1,认证服务器1对令牌进行认证,由于认证服务器1生成了该令牌,所以可以准确对该令牌进行认证。
而且,各个认证服务器仅需要存储自身建立的会话,而不需要复制其他认证服务器所建立的会话,相对于现有技术节省了认证服务器集群内的数据传输资源以及存储资源;进而,认证***可以根据***容量和用户规模来确定认证服务器集群规模,动态增加新的认证服务器节点,无需考虑单个认证服务器的容量限制以及认证服务器之间相互复制会话的开销。
另外,本发明实施例中的负载均衡服务器仍然可以依照现有处理方法选择处理登录请求和令牌认证请求的认证服务器,从而可以与现有技术兼容。
参见图8A,为本发明实施例令牌生成并认证方法的另一流程示意图,该实施例中,假设认证服务器1是为客户端所属用户生成令牌的第一认证服务器,认证服务器2负载均衡服务器确定的进行令牌认证的第二认证服务器。该方法包括:
步骤801~步骤807参见步骤701~步骤707,这里不赘述。
步骤808:负载均衡服务器将该令牌认证请求分发给认证服务器2。
步骤809:认证服务器2从令牌认证请求中获取令牌。
步骤810:认证服务器2从获取的令牌中获取安全验证信息,根据获取的安全验证信息对获取的令牌进行安全验证,验证通过时,执行步骤811。
当验证失败时,认证服务器2可以向负载均衡服务器发送验证失败消息,负载均衡服务器向客户端转发验证失败消息,这里不赘述。
步骤811:认证服务器2从获取的令牌中获取令牌寻址信息,确定获取的所述令牌寻址信息指示的存储位置是否为认证服务器2,如果否,执行步骤812。
由于步骤809中令牌认证请求中携带的是认证服务器1为用户生成的令牌,所述本步骤中确定结果必然为否,确定结果为是的分支不再赘述。
步骤812:所述认证服务器2将所述令牌认证请求转发至获取的令牌寻址信息指示的认证服务器1。
步骤813~步骤816参见步骤709~步骤712,这里不赘述。
步骤817:认证服务器1将认证结果发送给认证服务器2,认证服务器2将认证结果发送给负载均衡服务器,负载均衡服务器将接收到的认证结果发送给应用***服务器,应用***服务器根据认证结果响应客户端的访问请求;处理流程结束。
以下,对本发明实施例中令牌认证过程进行举例说明:
假设认证服务器中存储的会话如表3所示,应用***服务器需要验证传统令牌A01封装后的令牌a01,则,执行步骤806~817,由认证服务器2将令牌a01转发至认证服务器1进行认证,认证服务器1向认证服务器2反馈认证结果,再由认证服务器2将认证结果通过负载均衡服务器反馈至应用***服务器,参见图8B所示。
本实施例中,对于同一用户,当对用户的令牌进行验证的认证服务器2不是生成令牌的认证服务器时,认证服务器2作为转发节点,将令牌认证请求转发至令牌寻址信息指示的认证服务器1,由认证服务器1对令牌进行认证处理,从而保证认证***能够正确认证令牌;
而且,各个认证服务器仅需要存储自身建立的会话,而不需要复制其他认证服务器所建立的会话,相对于现有技术节省了认证服务器集群内的数据传输资源以及存储资源;进而,认证***可以根据***容量和用户规模来确定认证服务器集群规模,动态增加新的认证服务器节点,无需考虑单个认证服务器的容量限制以及认证服务器之间相互复制会话的开销。
另外,本发明实施例中的负载均衡服务器仍然可以依照现有处理方法选择处理登录请求和令牌认证请求的认证服务器,从而可以与现有技术兼容。
与上述方法相对应的,本发明实施例还提供一种认证服务器。
参见图9,认证服务器900包括:验证单元910、建立单元920、生成单元930;其中,
验证单元910,用于对用户的登录请求进行验证;
建立单元920,用于当所述验证单元910对用户的登录请求验证成功时,为所述用户建立会话;
生成单元930,用于当所述验证单元910对用户的登录请求验证成功时,为所述用户生成包括标识信息以及令牌寻址信息的令牌;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述认证服务器位于所述认证服务器集群中。
可选地,所述生成单元930可以包括:
确定子单元,用于确定所述标识信息;
生成子单元,用于根据所述认证服务器的地址和服务端口生成令牌寻址信息;
封装子单元,用于将所述令牌寻址信息封装于所述标识信息之外。
可选地,所述令牌还可以包括:安全验证信息;所述封装子单元还可以用于:
将所述安全验证信息封装于所述令牌寻址信息和所述验证信息之外。
可选地,该认证服务器900还可以包括:
接收单元,用于接收令牌认证请求,所述令牌认证请求中包括所述令牌;
处理单元,用于从所述接收单元接收的所述令牌认证请求携带的令牌中获取令牌寻址信息;确定获取的所述令牌寻址信息指示的存储位置为所述认证服务器时,从所述令牌认证请求携带的令牌中获取标识信息;
认证单元,用于根据所述获取单元获取的所述标识信息对所述令牌认证请求携带的令牌进行认证。
可选地,所述处理单元具体可以用于:
确定获取的所述令牌寻址信息中的地址和服务端口是所述认证服务器的地址和服务端口。
可选地,所述令牌认证请求携带的令牌还可以包括:安全验证信息;所述处理单元还可以用于:
从所述令牌认证请求携带的令牌中获取所述安全验证信息,根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证。
可选地,获取的所述安全验证信息可以为:SHA算法私钥;所述处理单元用于根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证,具体可包括:
使用SHA算法公钥对所述SHA算法私钥进行安全验证。
可选地,所述认证单元具体可以用于:
搜索所述认证服务器本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
本实施例中,认证服务器对用户的登录请求进行验证,对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成令牌,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述认证服务器位于所述认证服务器集群中。首先,认证服务器生成的令牌中包括标识信息,从而保证认证服务器集群能够对令牌进行准确认证;其次,由于在令牌中携带了令牌寻址信息,即便负载均衡服务器确定的认证服务器不是存储该令牌的认证服务器,认证服务器也可以根据令牌寻址信息将令牌转发至保存有该令牌的认证服务器进行令牌认证,从而认证服务器之间无需相互复制会话,节省了认证服务器集群内的数据传输资源以及存储资源。
与上述方法相对应的,本发明实施例还提供一种认证服务器。
参见图10,该认证服务器1000包括:接收单元1010、获取单元1020、发送单元1030;其中,
接收单元1010,用于接收令牌认证请求,所述令牌认证请求中包括令牌;
获取单元1020,用于从所述接收单元1010接收到的所述令牌中获取令牌寻址信息;
发送单元1030,用于确定所述获取单元1020获取的所述令牌寻址信息指示的存储位置不是所述认证服务器时,依据所述存储位置将所述令牌转发至与所述认证服务器位于同一集群的另一认证服务器,以便所述另一认证服务器对所述令牌进行认证。
可选地,所述接收单元1010还可以用于:
接收所述存储位置所在的认证服务器发送的认证结果,所述认证结果由所述存储位置所在的认证服务器对所述令牌进行认证得到。
本实施例中,认证服务器从需要认证的令牌中获取令牌寻址信息,确定所述令牌寻址信息指示的存储位置不位于所述认证服务器时,将所述令牌转发至所述令牌寻址信息指示的存储位置所在的认证服务器,由所述存储位置所在的认证服务器对所述令牌进行认证,从而保证认证服务器集群能够对令牌进行准确认证;而且,由于在令牌中携带了令牌寻址信息,即便负载均衡服务器确定的认证服务器不是存储该令牌的认证服务器,负载均衡服务器确定的认证服务器也可以根据令牌寻址信息将令牌转发至保存有该令牌的认证服务器进行令牌认证,从而认证服务器之间无需相互复制会话,节省了认证服务器集群内的数据传输资源以及存储资源。
参见图11,为本发明实施例认证服务器结构示意图,该认证服务器1100包括:处理器1110、存储器1120、收发器1130和总线1140;
处理器1110、存储器1120、收发器1130通过总线1140相互连接;总线1140可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1120,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器1120可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
收发器1130用于连接其他设备,并与其他设备进行通信。
所述处理器1110用于执行所述程序代码。
其中,当所述认证服务器作为本发明实施例中的第一认证服务器时,所述处理器1110用于:对用户的登录请求进行验证;对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成包括标识信息以及令牌寻址信息的令牌;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述第一认证服务器位于所述认证服务器集群中。具体的,所述处理器1110可用于实现图9所示实施例中的验证单元、建立单元、生成单元、处理单元以及认证单元中的所有或部分单元的功能,接收器用于实现有图9所示实施例中的接收单元的功能。
其中,当所述认证服务器作为本发明实施例中的第二认证服务器时,所述收发器1130用于:接收令牌认证请求,所述令牌认证请求中包括令牌;
所述处理器1110用于:从所述令牌中获取令牌寻址信息;
所述收发器1130还用于:所述处理器1110确定所述令牌寻址信息指示的存储位置不是所述第二认证服务器时,依据所述存储位置将所述令牌转发至与所述认证服务器位于同一集群的另一认证服务器,以便第一认证服务器对所述令牌进行认证;所述第一认证服务器和所述第二认证服务器均位于所述认证服务器集群。
具体的,处理单元1110可用于实现图10所示实施例中的获取单元的功能,通过接收器1130可用于实现图10所示实施例中的接收单元和发送单元的功能。
本发明实施例中,认证服务器生成的令牌中包括标识信息,从而保证认证服务器集群能够对令牌进行准确认证;并且,由于在令牌中携带了令牌寻址信息,即便负载均衡服务器确定的认证服务器不是存储该令牌的认证服务器,认证服务器也可以根据令牌寻址信息将令牌转发至保存有该令牌的认证服务器进行令牌认证,从而认证服务器之间无需相互复制会话,节省了认证服务器集群内的数据传输资源以及存储资源。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种令牌生成并认证的方法,其特征在于,该方法包括:
第一认证服务器对用户的登录请求进行验证;
所述第一认证服务器对用户的登录请求验证成功时,为所述用户建立会话,并为所述用户生成包括标识信息以及令牌寻址信息的令牌;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述第一认证服务器位于所述认证服务器集群中。
2.根据权利要求1所述的方法,其特征在于,所述第一认证服务器为所述用户生成令牌,包括:
所述第一认证服务器确定所述标识信息;
所述第一认证服务器根据所述第一认证服务器的地址和服务端口生成令牌寻址信息;
所述第一认证服务器将所述令牌寻址信息封装于所述标识信息之外。
3.根据权利要求2所述的方法,其特征在于,所述令牌还包括:安全验证信息;所述第一认证服务器为所述用户生成令牌,还包括:
所述第一认证服务器将所述安全验证信息封装于所述令牌寻址信息和所述验证信息之外。
4.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
所述第一认证服务器接收令牌认证请求,所述令牌认证请求中包括所述令牌,从所述令牌认证请求携带的令牌中获取令牌寻址信息;
所述第一认证服务器确定获取的所述令牌寻址信息指示的存储位置为所述第一认证服务器时,所述第一认证服务器从所述令牌认证请求携带的令牌中获取标识信息,根据获取的所述标识信息对所述令牌认证请求携带的令牌进行认证。
5.根据权利要求4所述的方法,其特征在于,所述第一认证服务器确定获取的所述令牌寻址信息指示的存储位置为所述第一认证服务器包括:
所述第一认证服务器确定获取的所述令牌寻址信息中的地址和服务端口是所述第一认证服务器的地址和服务端口。
6.根据权利要求5所述的方法,其特征在于,所述令牌认证请求携带的令牌还包括:安全验证信息;所述第一认证服务器从所述令牌认证请求携带的令牌中获取令牌寻址信息之前还包括:
所述第一认证服务器从所述令牌认证请求携带的令牌中获取所述安全验证信息,根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证。
7.根据权利要求6所述的方法,其特征在于,获取的所述安全验证信息为:SHA算法私钥;所述第一认证服务器根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证包括:
所述第一认证服务器使用SHA算法公钥对所述SHA算法私钥进行安全验证。
8.根据权利要求4至7任一项所述的方法,其特征在于,所述第一认证服务器根据获取的标识信息对所述令牌认证请求携带的令牌进行认证包括:
所述第一认证服务器搜索本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
9.一种令牌生成并认证的方法,其特征在于,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;该方法包括:
第二认证服务器接收令牌认证请求,所述令牌认证请求中包括令牌,从所述令牌中获取令牌寻址信息;
所述第二认证服务器确定所述令牌寻址信息指示的存储位置不位于所述第二认证服务器时,所述第二认证服务器将所述令牌转发至所述令牌寻址信息指示的存储位置所在的第一认证服务器,以便第一认证服务器对所述令牌进行认证;所述第一认证服务器和所述第二认证服务器均位于所述认证服务器集群。
10.根据权利要求9所述的方法,其特征在于,还包括:
所述第二认证服务器接收所述第一认证服务器发送的认证结果,所述认证结果由所述第一认证服务器对所述令牌进行认证得到。
11.一种认证服务器,其特征在于,包括:
验证单元,用于对用户的登录请求进行验证;
建立单元,用于当所述验证单元对用户的登录请求验证成功时,为所述用户建立会话;
生成单元,用于当所述验证单元对用户的登录请求验证成功时,为所述用户生成包括标识信息以及令牌寻址信息的令牌;所述标识信息用于标识所述用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述认证服务器位于所述认证服务器集群中。
12.根据权利要求11所述的认证服务器,其特征在于,所述生成单元包括:
确定子单元,用于确定所述标识信息;
生成子单元,用于根据所述认证服务器的地址和服务端口生成令牌寻址信息;
封装子单元,用于将所述令牌寻址信息封装于所述标识信息之外。
13.根据权利要求12所述的认证服务器,其特征在于,所述令牌还包括:安全验证信息;所述封装子单元还用于:
将所述安全验证信息封装于所述令牌寻址信息和所述验证信息之外。
14.根据权利要求11至13任一项所述的认证服务器,其特征在于,还包括:
接收单元,用于接收令牌认证请求,所述令牌认证请求中包括所述令牌;
处理单元,用于从所述接收单元接收的所述令牌认证请求携带的令牌中获取令牌寻址信息;确定获取的所述令牌寻址信息指示的存储位置为所述认证服务器时,从所述令牌认证请求携带的令牌中获取标识信息;
认证单元,用于根据所述获取单元获取的所述标识信息对所述令牌认证请求携带的令牌进行认证。
15.根据权利要求14所述的认证服务器,其特征在于,所述处理单元具体用于:
确定获取的所述令牌寻址信息中的地址和服务端口是所述认证服务器的地址和服务端口。
16.根据权利要求15所述的认证服务器,其特征在于,所述令牌认证请求携带的令牌还包括:安全验证信息;所述处理单元还用于:
从所述令牌认证请求携带的令牌中获取所述安全验证信息,根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证。
17.根据权利要求16所述的认证服务器,其特征在于,获取的所述安全验证信息为:SHA算法私钥;所述处理单元用于根据获取的所述安全验证信息对所述令牌认证请求携带的令牌进行安全验证,具体包括:
使用SHA算法公钥对所述SHA算法私钥进行安全验证。
18.根据权利要求14至17任一项所述的认证服务器,其特征在于,所述认证单元具体用于:
搜索所述认证服务器本地存储的会话中是否存在所述标识信息标识的会话,根据搜索结果生成认证结果。
19.一种认证服务器,其特征在于,所述令牌包括:标识信息以及令牌寻址信息;所述标识信息用于标识用户的会话,所述令牌寻址信息用于指示令牌在认证服务器集群中的存储位置;所述认证服务器位于所述认证服务器集群,所述认证服务器包括:
接收单元,用于接收令牌认证请求,所述令牌认证请求中包括令牌;
获取单元,用于从所述接收单元接收到的所述令牌中获取令牌寻址信息;
发送单元,用于确定所述获取单元获取的所述令牌寻址信息指示的存储位置不是所述认证服务器时,依据所述存储位置将所述令牌转发至与所述认证服务器位于同一集群的另一认证服务器,以便所述另一认证服务器对所述令牌进行认证。
20.根据权利要求19所述的认证服务器,其特征在于,所述接收单元还用于:
接收所述存储位置所在的认证服务器发送的认证结果,所述认证结果由所述存储位置所在的认证服务器对所述令牌进行认证得到。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510439479.3A CN106375270B (zh) | 2015-07-24 | 2015-07-24 | 令牌生成并认证的方法及认证服务器 |
EP16829619.2A EP3316544B1 (en) | 2015-07-24 | 2016-04-26 | Token generation and authentication method, and authentication server |
PCT/CN2016/080254 WO2017016252A1 (zh) | 2015-07-24 | 2016-04-26 | 令牌生成并认证的方法及认证服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510439479.3A CN106375270B (zh) | 2015-07-24 | 2015-07-24 | 令牌生成并认证的方法及认证服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106375270A true CN106375270A (zh) | 2017-02-01 |
CN106375270B CN106375270B (zh) | 2020-12-08 |
Family
ID=57880028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510439479.3A Active CN106375270B (zh) | 2015-07-24 | 2015-07-24 | 令牌生成并认证的方法及认证服务器 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3316544B1 (zh) |
CN (1) | CN106375270B (zh) |
WO (1) | WO2017016252A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108769075A (zh) * | 2018-07-06 | 2018-11-06 | 广东微云科技股份有限公司 | 一种寻址登录服务器的方法及*** |
CN109697194A (zh) * | 2018-12-25 | 2019-04-30 | 杭州安恒信息技术股份有限公司 | 一种基于微服务的文件服务方法和*** |
CN109743163A (zh) * | 2019-01-03 | 2019-05-10 | 优信拍(北京)信息科技有限公司 | 微服务架构中的权限认证方法、装置及*** |
CN110235410A (zh) * | 2017-02-14 | 2019-09-13 | 科因普拉格株式会社 | 使用基于utxo的协议的区块链数据库并通过基于pki的认证取代用户的登录的方法及利用其的服务器 |
CN110799938A (zh) * | 2018-09-30 | 2020-02-14 | 深圳市大疆创新科技有限公司 | 令牌管理方法、装置、芯片及可移动平台 |
CN111125674A (zh) * | 2019-12-20 | 2020-05-08 | ***股份有限公司 | 开放式数据处理***、开放式数据***及数据处理方法 |
WO2020155761A1 (zh) * | 2019-01-28 | 2020-08-06 | 平安科技(深圳)有限公司 | 登录多个服务集群的方法、装置、计算机设备及存储介质 |
CN112149076A (zh) * | 2020-10-10 | 2020-12-29 | 上海威固信息技术股份有限公司 | 一种安全的计算机存储*** |
CN112866265A (zh) * | 2021-01-27 | 2021-05-28 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种csrf攻击防护方法及装置 |
WO2023045548A1 (zh) * | 2021-09-23 | 2023-03-30 | 中兴通讯股份有限公司 | 云桌面的认证管理方法和***、电子设备、可读存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017221300A1 (de) * | 2017-11-28 | 2019-05-29 | Siemens Mobility GmbH | Verfahren und System zum Bereitstellen einer datentechnischen Funktion mittels eines Datenverarbeitungssystems eines spurgebundenen Fahrzeugs |
CN109150862B (zh) * | 2018-08-03 | 2021-06-08 | 福建天泉教育科技有限公司 | 一种实现token漫游的方法及服务端 |
US11121863B1 (en) * | 2020-03-12 | 2021-09-14 | Oracle International Corporation | Browser login sessions via non-extractable asymmetric keys |
CN114244548B (zh) * | 2021-04-12 | 2023-10-13 | 无锡江南计算技术研究所 | 一种面向云ide的动态调度和用户认证方法 |
CN114866247B (zh) * | 2022-04-18 | 2024-01-02 | 杭州海康威视数字技术股份有限公司 | 一种通信方法、装置、***、终端及服务器 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060173781A1 (en) * | 2000-07-24 | 2006-08-03 | Donner Irah H | System and method for interactive messaging and/or allocating and/or upgrading and/or rewarding tickets, other event admittance means, goods and/or services |
CN101356759A (zh) * | 2006-01-05 | 2009-01-28 | 摩托罗拉公司 | 安全密钥材料的基于令牌的分布式生成 |
US8175875B1 (en) * | 2006-05-19 | 2012-05-08 | Google Inc. | Efficient indexing of documents with similar content |
CN102893623A (zh) * | 2010-05-04 | 2013-01-23 | 索尼公司 | 用于互联网视频客户端的认证和授权 |
CN103595720A (zh) * | 2013-11-15 | 2014-02-19 | 华为技术有限公司 | 卸载数据传输方法、装置和客户端 |
US20140282940A1 (en) * | 2013-03-15 | 2014-09-18 | salesforce.com,inc. | Method and Apparatus for Multi-Domain Authentication |
CN104660409A (zh) * | 2013-11-25 | 2015-05-27 | 北京神州泰岳软件股份有限公司 | 集群环境下***登录的方法和认证服务器集群 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7761911B2 (en) * | 2005-11-21 | 2010-07-20 | Oracle International Corporation | Method and apparatus for facilitating single sign-on |
CN101605030B (zh) * | 2008-06-13 | 2012-09-05 | 新奥特(北京)视频技术有限公司 | 一种面向电视台应用的基于Active Directory的统一认证实现方法 |
US8572268B2 (en) * | 2010-06-23 | 2013-10-29 | International Business Machines Corporation | Managing secure sessions |
-
2015
- 2015-07-24 CN CN201510439479.3A patent/CN106375270B/zh active Active
-
2016
- 2016-04-26 EP EP16829619.2A patent/EP3316544B1/en active Active
- 2016-04-26 WO PCT/CN2016/080254 patent/WO2017016252A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060173781A1 (en) * | 2000-07-24 | 2006-08-03 | Donner Irah H | System and method for interactive messaging and/or allocating and/or upgrading and/or rewarding tickets, other event admittance means, goods and/or services |
CN101356759A (zh) * | 2006-01-05 | 2009-01-28 | 摩托罗拉公司 | 安全密钥材料的基于令牌的分布式生成 |
US8175875B1 (en) * | 2006-05-19 | 2012-05-08 | Google Inc. | Efficient indexing of documents with similar content |
CN102893623A (zh) * | 2010-05-04 | 2013-01-23 | 索尼公司 | 用于互联网视频客户端的认证和授权 |
US20140282940A1 (en) * | 2013-03-15 | 2014-09-18 | salesforce.com,inc. | Method and Apparatus for Multi-Domain Authentication |
CN103595720A (zh) * | 2013-11-15 | 2014-02-19 | 华为技术有限公司 | 卸载数据传输方法、装置和客户端 |
CN104660409A (zh) * | 2013-11-25 | 2015-05-27 | 北京神州泰岳软件股份有限公司 | 集群环境下***登录的方法和认证服务器集群 |
Non-Patent Citations (4)
Title |
---|
BRUCE SCHNEIER: "《APPLIED CRYPTOGRAPHY,SECOND EDITION PROTOCOLS,ALGORITHMS,AND SOURCE CODE IN C》", 31 December 1996 * |
KERBEROS CONSORTIUM: "ticket management - MIT kerberos documentation", 《HTTP://WEB.MIT.EDU/KERBEROS/KRB5-1.11/DOC/USER/TKT_MGMT.HTML》 * |
斯坎布雷: "《黑客大曝光Web应用程序安全原书第3版》", 31 October 2011 * |
陈泽茂: "《信息***安全》", 30 April 2014 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110235410A (zh) * | 2017-02-14 | 2019-09-13 | 科因普拉格株式会社 | 使用基于utxo的协议的区块链数据库并通过基于pki的认证取代用户的登录的方法及利用其的服务器 |
CN110235410B (zh) * | 2017-02-14 | 2022-05-10 | 科因普拉格株式会社 | 使用基于utxo的协议的区块链数据库并通过基于pki的认证取代用户的登录的方法及利用其的服务器 |
CN108769075A (zh) * | 2018-07-06 | 2018-11-06 | 广东微云科技股份有限公司 | 一种寻址登录服务器的方法及*** |
CN110799938A (zh) * | 2018-09-30 | 2020-02-14 | 深圳市大疆创新科技有限公司 | 令牌管理方法、装置、芯片及可移动平台 |
CN109697194A (zh) * | 2018-12-25 | 2019-04-30 | 杭州安恒信息技术股份有限公司 | 一种基于微服务的文件服务方法和*** |
CN109743163A (zh) * | 2019-01-03 | 2019-05-10 | 优信拍(北京)信息科技有限公司 | 微服务架构中的权限认证方法、装置及*** |
WO2020155761A1 (zh) * | 2019-01-28 | 2020-08-06 | 平安科技(深圳)有限公司 | 登录多个服务集群的方法、装置、计算机设备及存储介质 |
CN111125674A (zh) * | 2019-12-20 | 2020-05-08 | ***股份有限公司 | 开放式数据处理***、开放式数据***及数据处理方法 |
CN111125674B (zh) * | 2019-12-20 | 2022-03-22 | ***股份有限公司 | 开放式数据处理***、开放式数据***及数据处理方法 |
CN112149076A (zh) * | 2020-10-10 | 2020-12-29 | 上海威固信息技术股份有限公司 | 一种安全的计算机存储*** |
CN112866265A (zh) * | 2021-01-27 | 2021-05-28 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种csrf攻击防护方法及装置 |
WO2023045548A1 (zh) * | 2021-09-23 | 2023-03-30 | 中兴通讯股份有限公司 | 云桌面的认证管理方法和***、电子设备、可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3316544A1 (en) | 2018-05-02 |
CN106375270B (zh) | 2020-12-08 |
EP3316544B1 (en) | 2023-10-25 |
EP3316544A4 (en) | 2018-05-02 |
WO2017016252A1 (zh) | 2017-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106375270A (zh) | 令牌生成并认证的方法及认证服务器 | |
US20220215082A1 (en) | Method and apparatus for facilitating the login of an account | |
US8869258B2 (en) | Facilitating token request troubleshooting | |
JP6716745B2 (ja) | ブロックチェーン基盤の権限認証方法、端末及びこれを利用したサーバ | |
CN104184713B (zh) | 终端识别方法、机器识别码注册方法及相应***、设备 | |
TWI587672B (zh) | Login authentication method, client, server and system | |
WO2017097123A1 (zh) | 访问请求转换的方法和装置 | |
CN101588390B (zh) | 提高集中认证服务***业务黏性的方法及负载均衡设备 | |
CN112491776B (zh) | 安全认证方法及相关设备 | |
WO2020259389A1 (zh) | 一种csrf漏洞的检测方法及装置 | |
CN105959267A (zh) | 单点登录技术中的主令牌获取方法、单点登录方法及*** | |
US20180124048A1 (en) | Data transmission method, authentication method, and server | |
KR20220019834A (ko) | 디바이스로의 보안 자격증명 전송을 인증하는 방법 및 시스템 | |
CN102739678B (zh) | 单点登录处理***和单点登录处理方法 | |
CN106341233A (zh) | 客户端登录服务器端的鉴权方法、装置、***及电子设备 | |
CN107888592A (zh) | 一种vpn登录认证方法及装置 | |
CN106453349B (zh) | 账号登录方法及装置 | |
CN101808097B (zh) | 一种防arp攻击方法和设备 | |
US8875244B1 (en) | Method and apparatus for authenticating a user using dynamic client-side storage values | |
US10129263B2 (en) | Tokenization for network authorization routing | |
CN103179089A (zh) | 在不同软件开发平台之间访问验证身份的***及方法 | |
CN112836199A (zh) | 一种实现统一鉴权的工具及方法 | |
CN112769863A (zh) | 一种业务请求报文数据的处理方法和装置 | |
US11218466B2 (en) | Endpoint security | |
CN105812138B (zh) | 登录的处理方法、装置、用户终端及登录*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |