CN105100107B - 代理客户端账号认证的方法和装置 - Google Patents

代理客户端账号认证的方法和装置 Download PDF

Info

Publication number
CN105100107B
CN105100107B CN201510505528.9A CN201510505528A CN105100107B CN 105100107 B CN105100107 B CN 105100107B CN 201510505528 A CN201510505528 A CN 201510505528A CN 105100107 B CN105100107 B CN 105100107B
Authority
CN
China
Prior art keywords
account
database server
client
database
client account
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
Application number
CN201510505528.9A
Other languages
English (en)
Other versions
CN105100107A (zh
Inventor
周凯
辛智敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201510505528.9A priority Critical patent/CN105100107B/zh
Publication of CN105100107A publication Critical patent/CN105100107A/zh
Application granted granted Critical
Publication of CN105100107B publication Critical patent/CN105100107B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity

Abstract

本发明涉及一种代理客户端账号认证的方法,所述方法包括:获取客户端账号与第一数据库服务器的进行认证时的解析数据;在所述客户端账号完成所述第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码;利用所述解析数据和加密密码计算所述客户端账号的密码中间数据;根据所述密码中间数据生成第一认证报文;向第二数据库服务器发送所述第一认证报文,以使所述第二数据库服务器对所述客户端账号进行认证。采用本方法无需手动配置客户端账号和明文密码,即可能够代理客户端账号与第二数据库服务器的认证。此外还提供一种代理客户端账号认证的装置。

Description

代理客户端账号认证的方法和装置
技术领域
本发明涉及计算机技术领域,特别是涉及一种代理客户端账号认证的方法和装置。
背景技术
为了确保数据库的稳定性,目前很多数据库具有读写分离功能,把对数据库读和写的操作分开对应不同的数据库服务器,也就是通过数据库服务器主机进行写操作,通过数据库服务器备机进行读操作。客户端通过数据库代理可以将数据写入数据库服务器主机以及从数据库服务器备机读取数据。在客户端访问数据库之前,通常只会向数据库服务器主机发送认证请求,在完成认证后,则不再继续发送认证请求。由于数据库服务器备机未对客户端进行认证,客户端无法访问数据库服务器备机来读取数据。可以通过数据库代理来代替客户端与数据库服务器备机建立认证连接。传统的,数据库代理需要预先手动配置所有需要被代理的客户端账号和密码。如果被代理的客户端账号较多,则需要一个一个手动进行配置,给用户带来不便。
发明内容
基于此,有必要针对上述技术问题,提供一种无需手动配置客户端账号和明文密码,即可能够代理客户端账号与第二数据库服务器的认证的代理客户端账号认证的方法和装置。
一种代理客户端账号认证的方法,所述方法包括:
获取客户端账号与第一数据库服务器的进行认证时的解析数据;
在所述客户端账号完成所述第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码;
利用所述解析数据和加密密码计算所述客户端账号的密码中间数据;
根据所述密码中间数据生成第一认证报文;
向第二数据库服务器发送所述第一认证报文,以使所述第二数据库服务器对所述客户端账号进行认证。
在其中一个实施例中,在所述获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤之前,还包括:
展示账号配置页面;
通过所述配置页面配置数据库管理员账号;
利用所述数据库管理员账号建立与第一数据库服务器之间的连接。
在其中一个实施例中,所述解析数据包括挑战随机数和挑战认证数据,所述获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤包括:
与客户端建立连接以及与所述第一数据库服务器建立连接后,接收所述第一数据库服务器返回的握手报文;
解析所述握手报文得到挑战随机数;
将所述握手报文发送至所述客户端;
接收所述客户端响应所述握手报文返回的第二认证报文;
解析所述第二认证报文得到挑战认证数据。
在其中一个实施例中,在所述获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤之后,还包括:将所述第二认证报文发送至所述第一数据库服务器;
接收所述第一数据库服务器根据所述第二认证报文返回的应答报文;
当所述应答报文为OK报文时,将所述应答报文转发至客户端,以完成客户端账号在所述第一数据库服务器的认证。
在其中一个实施例中,所述利用预先配置的数据库管理员账号实时获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码的步骤包括:
利用所述预先配置的数据库管理员账号查询所述第一数据库服务器中预先存储的用户表中是否存在当前连接的客户端账号;
若是,则利用所述预先配置的数据库管理员账号获取所述客户端账号对应的加密密码。
一种代理客户端账号认证的装置,所述装置包括:
获取模块,用于获取客户端账号与第一数据库服务器的进行认证时的解析数据;
所述获取模块还用于在所述客户端账号完成所述第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码;
计算模块,用于利用所述解析数据和加密密码计算所述客户端账号的密码中间数据;
报文生成模块,用于根据所述密码中间数据生成第一认证报文;
发送模块,用于向第二数据库服务器发送所述第一认证报文,以使所述第二数据库服务器对所述客户端账号进行认证。
在其中一个实施例中,所述装置还包括:
展示模块,用于展示账号配置页面;
配置模块,用于通过所述配置页面配置数据库管理员账号;
连接模块,用于利用所述数据库管理员账号建立与第一数据库服务器之间的连接。
在其中一个实施例中,所述解析数据包括挑战随机数和挑战认证数据,所述获取模块包括:
接收单元,用于与客户端建立连接以及与所述第一数据库服务器建立连接后,接收所述第一数据库服务器返回的握手报文;
解析单元,用于解析所述握手报文得到挑战随机数;
发送单元,用于将所述握手报文发送至所述客户端;
所述接收单元还用于接收所述客户端响应所述握手报文返回的第二认证报文;
所述解析单元还用于解析所述第二认证报文得到挑战认证数据。
在其中一个实施例中,所述发送模块还用于将所述第二认证报文发送至所述第一数据库服务器;所述装置还包括:
接收模块,用于接收所述第一数据库服务器根据所述第二认证报文返回的应答报文;
所述发送模块还用于当所述应答报文为OK报文时,将所述应答报文转发至客户端,以完成客户端账号在所述第一数据库服务器的认证。
在其中一个实施例中,所述获取模块还用于利用所述预先配置的数据库管理员账号实时查询所述第一数据库服务器中预先存储的用户表中是否存在当前连接的客户端账号;若是,则利用所述预先配置的数据库管理员账号获取所述客户端账号对应的加密密码。
上述代理客户端账号认证的方法和装置,通过获取客户端账号与第一数据库服务器进行认证时的解析数据以及从第一数据库服务器中获取预先存储的客户端账号的加密密码,由此能够计算得到密码中间数据。利用密码中间数据生成第一认证报文,无需手动配置客户端账号和明文密码,即可代理客户端账号与第二数据库服务器的认证,为用户提供了方便。由于利用预先配置的数据库管理员账号可以实时获取客户端账号对应的加密密码,即使存在客户端账号对应的密码被修改的状况,也可以获得修改后的密码中间数据,进而能够自动更新客户端账号信息。
附图说明
图1为一个实施例中代理客户端账号认证方法的硬件环境图;
图2为一个实施例中代理客户端账号认证方法的流程图;
图3为一个实施例中计算密码中间数据的时序图;
图4为一个实施例中代理客户端账号认证装置的结构示意图;
图5为又一个实施例中代理客户端账号认证装置的结构示意图;
图6为一个实施例中获取模块的结构示意图;
图7为另一个实施例中代理客户端账号认证装置的结构示意图。
具体实施方式
本发明实施例中所提供的代理客户端账号认证的方法可应用于如图1所示的硬件环境中。在终端102上安装了客户端,客户端具有对应的客户端账号,客户端账号可以有多个。在负载均衡设备104上安装了数据库代理,并且预先配置了数据库管理员账号。第一数据库服务器106可以实现数据库的写操作,第二数据库服务器108可以实现数据库的读操作。其中客户端与数据库代理建立TCP(Transmission Control Protocol,传输控制协议)连接,数据库代理与第一数据库服务器106建立TCP连接。数据库代理与第一数据库服务器108建立TCP连接。在客户端账号与第一数据库服务器106进行认证时,数据库代理获取认证过程中的挑战随机数和挑战认证数据。在客户端账号完成第一数据库服务器106的认证后,数据库代理利用数据库管理员账号从第一数据库服务器106获取当前连接的客户端账号以及对应的加密密码。数据库代理根据认证加密算法利用挑战随机数、挑战认证数据和加密密码计算客户端账号的密码中间数据。数据库代理将该客户端账号以及对应的密码中间数据缓存至均衡负载设备104中。数据库代理利用该客户端账号、密码中间数据生成对应的第一认证报文,并将第一认证报文通过TCP连接发送至第二数据库服务器108,完成该客户端账号与第二数据库服务器108的认证。由此使得客户端通过该客户端账号能够对第一数据库服务106进行访问实现数据库写操作,并且能够对第二数据库服务器108进行访问实现数据库读操作。整个过程中,无需在数据库代理上手动配置客户端账号和明文密码,即可自动代理客户端账号与第二数据库服务器的认证,为用户提供了方便。
在一个实施例中,如图2所示,提供了一种代理客户端账号认证的方法,具体包括:
步骤202,获取客户端账号与第一数据库服务器的进行认证时的解析数据。
第一数据库服务器可以是数据库服务器主机,也可以是数据库服务器备机。数据库服务器主机与数据库服务器备机可以部署在同一台物理服务器上,也可以部署在不同的物理服务器上。数据库代理可以部署在负载均衡设备上。
在其中一个实施例中,解析数据包括挑战随机数和挑战认证数据,获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤包括:与客户端建立连接以及与第一数据库服务器建立连接后,接收第一数据库服务器返回的握手报文;解析握手报文得到挑战随机数;将握手报文发送至客户端;接收客户端根据握手报文返回的第二认证报文;解析第二认证报文得到挑战认证数据。
客户端与负载均衡设备上的数据库代理经过TCP三次握手建立连接。数据库代理与第一数据库服务器经过TCP三次握手建立连接。在数据库代理与第一数据库服务器建立连接后,第一数据库服务器会向数据库代理返回握手报文,其中握手报文中包括挑战随机数。数据库代理解析握手报文得到挑战随机数。具体的,数据库代理可根据认证加密算法来解析握手报文得到挑战随机数,加密算法可以是目前已公开的认证加密算法,例如MySQL(一个关系型数据库管理系统)数据库加密方式。在解析得到挑战随机数之后,数据库代理将握手报文发送至客户端。客户端响应该握手报文生成第二认证报文,其中第二认证报文中包括挑战认证数据。客户端将第二认证报文发送至数据库代理,数据库代理解析第二认证报文得到挑战认证数据。具体的,数据库代理可根据认证加密算法来解析第二认证报文得到挑战认证数据。
步骤204,在客户端完成第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取第一数据库服务器中预先存储的客户端账号对应的加密密码。
客户端对应的客户端账号可以有多个。也就是可以有多个客户端账号与第一数据库服务器进行认证。第一数据库服务器中预先存储的客户端账号可以有多个,在客户端完成第一数据库服务器的认证之后,数据库代理利用预先配置的数据库管理员账号实时获取当前连接的客户端账号对应的加密密码。
步骤206,利用解析数据和加密密码计算客户端账号的密码中间数据。
根据认证加密算法利用解析数据和加密密码计算客户端账号的密码中间数据,具体包括:根据认证加密算法利用挑战随机数、挑战认证数据和加密密码计算客户端账号的密码中间数据。
步骤208,根据密码中间数据生成第一认证报文。
步骤210,向第二数据库服务器发送第一认证报文,以使第二数据库服务器对客户端账号进行认证。
传统的数据库代理代替客户端来建立与第二数据库服务器之间的连接时,需要配置客户端账号信息,其中包括客户端账号和明文密码。通常数据库服务器中存储是利用加密算法对明文密码加密后的加密密码。为了提高数据的安全性,加密算法基本都采用了不可逆的加密函数,所以数据库代理无法直接截获明文密码,以至于传统的数据库代理需要手动配置客户端账号和明文密码。
本实施例中的数据库代理在获得当前连接的客户端账号和对应的密码中间数据之后,将该客户端账号和对应的密码中间数据在负载均衡设备进行缓存,用于后续完成客户端账号与第二数据库服务器的认证。根据密码中间数据生成认证报文的具体步骤包括:根据密码中间数据生成挑战认证数据;根据当前连接的客户端账号和对应的挑战认证数据生成第一认证报文。具体的,客户端账号包括user name和host name,其中user name表示用户名,host name表示对应的允许访问域,例如客户端的IP(Internet Protocol,网络之间互连的协议)地址、域名等。客户端根据客户端账号中的用户名和对应的挑战认证数据生成第一认证报文。由于挑战认证数据是明文密码根据第一数据库服务发送的调整随机数进行加密后生成的。而数据库代理代替客户端与第二数据库服务器之间的连接认证需要发送第一认证报文。第二数据库服务器在接收到该认证报文后返回OK报文至数据库代理,即表示数据库代理已代替客户端完成了客户端账号与第二数据库服务器之间的认证。因此本实施例中可以直接利用密码中间数据生成挑战认证数据继而生成认证报文,而无需手动配置客户端账号和明文密码,为用户提供了方便。
如果明文密码被修改,相应的第一数据库服务器中存储的是修改后的明文密码的加密密码,也就是修改后的加密密码。由于数据库管理员账号是实时获取加密密码的,也就是在明文密码被修改后,利用数据库管理员账号可以获取到修改后的加密密码,可以计算出修改后的密码中间数据。进而利用修改后的密码中间数据来生成明文密码修改后对应的认证报文即修改后的第一认证报文。通过修改后的第一认证报文依然可以代理客户端与第二数据库服务的认证。
本实施例中,获取客户端账号与第一数据库服务器的进行认证时的解析数据;在客户端完成第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取第一数据库服务器中预先存储的客户端账号对应的加密密码;利用解析数据和加密密码计算客户端账号的密码中间数据;根据密码中间数据生成第一认证报文;向第二数据库服务器发送第一认证报文,以使第二数据库服务器对客户端账号进行认证。通过获取客户端账号与第一数据库服务器进行认证时的解析数据以及从第一数据库服务器中获取预先存储的客户端账号的加密密码,由此能够计算得到密码中间数据。利用密码中间数据生成挑战认证数据继而生成第一认证报文,无需手动配置客户端账号和明文密码,即可代理客户端账号与第二数据库服务器的认证,为用户提供了方便。由于利用预先配置的数据库管理员账号可以实时获取客户端账号对应的加密密码,即使存在客户端账号对应的密码被修改的状况,也可以获得修改后的密码中间数据,进而能够自动更新客户端账号信息。
在一个实施例中,利用预先配置的数据库管理员账号实时获取第一数据库服务器中预先存储的当前连接的客户端账号对应的加密密码的步骤包括:利用预先配置的数据库管理员账号实时查询第一数据库服务器中预先存储的用户表中是否存在当前连接的客户端账号;若是,则利用预先配置的数据库管理员账号获取客户端账号对应的加密密码。
本实施例中,数据库代理可以利用预先配置的数据库管理员账号获取一个客户端账号及对应的加密密码,也可以获取多个客户端账号及对应的加密密码。在多个客户端账号通过客户端与第一数据完成认证后,数据库代理可以利用预先配置的数据库管理员账号从第一数据库服务器中分别获取多个当前连接的客户端账号以及对应的加密密码,并分别计算出每个客户端账号对应的密码中间数据。将每个客户端账号与对应的密码中间数据进行缓存。进而可以代理多个客户端账号与第二数据库服务器认证。
在一个实施例中,在获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤之前,还包括:展示账号配置页面;通过配置页面配置数据库管理员账号;利用数据库管理员账号建立与第一数据库服务器之间的连接。
本实施例中,在利用数据库代理来代理客户端账号与第一数据服务器认证、第二数据服务器认证之前,需要先配置数据库管理账号来进行认证初始化。数据库代理与第一数据库服务器通过TCP连接,数据库代理可以利用该数据库管理员账号实时查询第一数据库中存储的客户端账号以及加密密码。由于加密密码是实时获取到的,因此数据库代理无需担心客户端账号对应的明文密码被修改而更新数据库代理中配置信息的问题。
在一个实施例中,在获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤之后,还包括:将第二认证报文发送至第一数据库服务器;接收第一数据库服务器根据第二认证报文返回的应答报文;当应答报文为OK报文时,将应答报文转发至客户端,以完成客户端在第一数据库服务器的认证。
本实施例中,在数据库代理接收到客户端响应握手报文而返回的第二认证报文后,解析认证报文中的挑战认证数据,并将第二认证报文发送至第一数据库服务器。第一数据库服务器响应第二认证报文后发送应答报文至数据库代理,当该应答报文为OK报文时,也就可以确认挑战认证数据正确,数据库代理将应答报文转发至客户端。由此完成了客户端与第一数据库服务器的认证。当应答报文不为OK时,数据库代理也会将该应答报文转发至客户端。
在一个实施例中,以mysql_native_password(使用MySQL本地密码)认证加密算法为例,来说明数据库代理是如何计算密码中间数据的。mysql_native_password认证加密算法为:SHA1(password)XOR SHA1("20-bytes random data from server"<contcat>SHA1(SHA1(password)))。根据认证加密算法可知,挑战随机数(即20-bytes random data)为第一数据库服务器提供,数据库代理只需要知道密码中间数据SHA1(password)就可以生成正确的挑战认证数据。预先存储在第一数据库服务器用户表中的密码加密算法为SHA1(SHA1(password)),数据库代理可在客户端和服务器认证过程中获得挑战随机数和挑战认证数据。根据认证加密算法利用挑战随机数、挑战认证数据和加密密码即可计算出客户端账号的密码中间数据SHA1(password)。计算密码中间数据的时序图如图3所示。
302:客户端与数据库代理通过TCP三次握手建立连接;
304:数据库代理与第一数据库服务器通过TCP三次握手建立连接;
306:第一数据库服务器向数据库代理返回握手报文;
308:数据库代理解析握手报文得到挑战随机数;
310:数据库代理向客户端转发握手报文;
312:客户端响应握手报文向数据库代理返回第二认证报文;
314:数据库代理解析认证报文得到挑战认证数据;
316:数据库代理转发认证报文至第一数据库服务器;
318:第一数据库服务器响应认证报文向数据库代理返回应答报文;
320:判断应答报文是否为OK报文;
322:数据库代理将应答报文转发至客户端;
324:数据库代理利用数据库管理员账号在第一数据库服务器查询当前连接的客户端账号;
326:数据库代理根据当前连接的客户端账号获取对应的加密密码;
328:根据认证加密算法利用挑战随机数、挑战认证数据和加密密码计算客户端账号的密码中间数据。
在一个实施例中,如图4所示,提供了一种代理客户端账号认证的装置,该装置包括:获取模块402、计算模块404、报文生成模块406和发送模块408,其中:
获取模块402,用于获取客户端账号与第一数据库服务器的进行认证时的解析数据;
获取模块402还用于在客户端账号完成第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取第一数据库服务器中预先存储的客户端账号对应的加密密码。
计算模块404,用于利用解析数据和加密密码计算客户端账号的密码中间数据。
报文生成模块406,用于根据密码中间数据生成第一认证报文。
发送模块408,用于向第二数据库服务器发送第一认证报文,以使第二数据库服务器对客户端账号进行认证。
在一个实施例中,如图5所示,该装置还包括:展示模块410、配置模块412和连接模块414,其中:
展示模块410,用于展示账号配置页面。
配置模块412,用于通过配置页面配置数据库管理员账号。
连接模块414,用于利用数据库管理员账号建立与第一数据库服务器之间的连接。
在一个实施例中,解析数据包括挑战随机数和挑战认证数据,如图6所示,获取模块402包括:接收单元402a、解析单元402b和发送单元402c,其中:
接收单元402a,用于与客户端建立连接以及与第一数据库服务器建立连接后,接收第一数据库服务器返回的握手报文。
解析单元402b,用于解析握手报文得到挑战随机数。
发送单元402c,用于将握手报文发送至客户端
接收单元402a还用于接收客户端响应握手报文返回的第二认证报文.
解析单元402b还用于解析第二认证报文得到挑战认证数据。
在一个实施例中,发送模块408,用于将认证报文发送至所述第一数据库服务器,如图7所示,该装置还包括:接收模块418,用于接收第一数据库服务器根据认证报文返回的应答报文;发送模块408还用于当应答报文为OK报文时,将应答报文转发至客户端,以完成客户端账号在第一数据库服务器的认证。
在一个实施例中,获取模块402还用于利用预先配置的数据库管理员账号实时查询所述第一数据库服务器中预先存储的用户表中是否存在当前连接的客户端账号;若是,则利用预先配置的数据库管理员账号获取客户端账号对应的加密密码。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (8)

1.一种代理客户端账号认证的方法,所述方法包括:
展示账号配置页面;
通过所述配置页面配置数据库管理员账号;
利用所述数据库管理员账号建立与第一数据库服务器之间的连接;
获取客户端账号与第一数据库服务器的进行认证时的解析数据;
在所述客户端账号完成所述第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码;
利用所述解析数据和加密密码计算所述客户端账号的密码中间数据;
根据所述密码中间数据生成第一认证报文;
向第二数据库服务器发送所述第一认证报文,以使所述第二数据库服务器对所述客户端账号进行认证。
2.根据权利要求1所述的方法,其特征在于,所述解析数据包括挑战随机数和挑战认证数据,所述获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤包括:
与客户端建立连接以及与所述第一数据库服务器建立连接后,接收所述第一数据库服务器返回的握手报文;
解析所述握手报文得到挑战随机数;
将所述握手报文发送至所述客户端;
接收所述客户端响应所述握手报文返回的第二认证报文;
解析所述第二认证报文得到挑战认证数据。
3.根据权利要求2所述的方法,其特征在于,在所述获取客户端账号与第一数据库服务器的进行认证时的解析数据的步骤之后,还包括:将所述第二认证报文发送至所述第一数据库服务器;
接收所述第一数据库服务器根据所述第二认证报文返回的应答报文;
当所述应答报文为OK报文时,将所述应答报文转发至客户端,以完成客户端账号在所述第一数据库服务器的认证。
4.根据权利要求1所述的方法,其特征在于,所述利用预先配置的数据库管理员账号实时获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码的步骤包括:
利用所述预先配置的数据库管理员账号查询所述第一数据库服务器中预先存储的用户表中是否存在当前连接的客户端账号;
若是,则利用所述预先配置的数据库管理员账号获取所述客户端账号对应的加密密码。
5.一种代理客户端账号认证的装置,其特征在于,所述装置包括:
展示模块,用于展示账号配置页面;
配置模块,用于通过所述配置页面配置数据库管理员账号;
连接模块,用于利用所述数据库管理员账号建立与第一数据库服务器之间的连接;
获取模块,用于获取客户端账号与第一数据库服务器的进行认证时的解析数据;
所述获取模块还用于在所述客户端账号完成所述第一数据库服务器的认证之后,利用预先配置的数据库管理员账号获取所述第一数据库服务器中预先存储的所述客户端账号对应的加密密码;
计算模块,用于利用所述解析数据和加密密码计算所述客户端账号的密码中间数据;
报文生成模块,用于根据所述密码中间数据生成第一认证报文;
发送模块,用于向第二数据库服务器发送所述第一认证报文,以使所述第二数据库服务器对所述客户端账号进行认证。
6.根据权利要求5所述的装置,其特征在于,所述解析数据包括挑战随机数和挑战认证数据,所述获取模块包括:
接收单元,用于与客户端建立连接以及与所述第一数据库服务器建立连接后,接收所述第一数据库服务器返回的握手报文;
解析单元,用于解析所述握手报文得到挑战随机数;
发送单元,用于将所述握手报文发送至所述客户端;
所述接收单元还用于接收所述客户端响应所述握手报文返回的第二认证报文;
所述解析单元还用于解析所述第二认证报文得到挑战认证数据。
7.根据权利要求6所述的装置,其特征在于,所述发送模块还用于将所述第二认证报文发送至所述第一数据库服务器;所述装置还包括:
接收模块,用于接收所述第一数据库服务器根据所述第二认证报文返回的应答报文;
所述发送模块还用于当所述应答报文为OK报文时,将所述应答报文转发至客户端,以完成客户端账号在所述第一数据库服务器的认证。
8.根据权利要求5所述的装置,其特征在于,所述获取模块还用于利用所述预先配置的数据库管理员账号实时查询所述第一数据库服务器中预先存储的用户表中是否存在当前连接的客户端账号;若是,则利用所述预先配置的数据库管理员账号获取所述客户端账号对应的加密密码。
CN201510505528.9A 2015-08-17 2015-08-17 代理客户端账号认证的方法和装置 Active CN105100107B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510505528.9A CN105100107B (zh) 2015-08-17 2015-08-17 代理客户端账号认证的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510505528.9A CN105100107B (zh) 2015-08-17 2015-08-17 代理客户端账号认证的方法和装置

Publications (2)

Publication Number Publication Date
CN105100107A CN105100107A (zh) 2015-11-25
CN105100107B true CN105100107B (zh) 2018-10-12

Family

ID=54579652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510505528.9A Active CN105100107B (zh) 2015-08-17 2015-08-17 代理客户端账号认证的方法和装置

Country Status (1)

Country Link
CN (1) CN105100107B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111339552B (zh) * 2020-02-12 2022-05-17 厦门网宿有限公司 一种数据库访问方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1889081A (zh) * 2006-08-01 2007-01-03 中国工商银行股份有限公司 一种数据库安全访问方法和系统
CN103023921A (zh) * 2012-12-27 2013-04-03 中国建设银行股份有限公司 一种认证接入方法和认证系统
CN103685282A (zh) * 2013-12-18 2014-03-26 飞天诚信科技股份有限公司 一种基于单点登录的身份认证方法
US8769651B2 (en) * 2012-09-19 2014-07-01 Secureauth Corporation Mobile multifactor single-sign-on authentication

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1889081A (zh) * 2006-08-01 2007-01-03 中国工商银行股份有限公司 一种数据库安全访问方法和系统
US8769651B2 (en) * 2012-09-19 2014-07-01 Secureauth Corporation Mobile multifactor single-sign-on authentication
CN103023921A (zh) * 2012-12-27 2013-04-03 中国建设银行股份有限公司 一种认证接入方法和认证系统
CN103685282A (zh) * 2013-12-18 2014-03-26 飞天诚信科技股份有限公司 一种基于单点登录的身份认证方法

Also Published As

Publication number Publication date
CN105100107A (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
CN107302539B (zh) 一种电子身份注册及认证登录的方法及其系统
CN111245825B (zh) 小程序登录方法、服务器和电子设备
US9544769B2 (en) Method for providing application service
CN103986584A (zh) 基于智能设备的双因子身份验证方法
US10341286B2 (en) Methods and systems for updating domain name service (DNS) resource records
CN107872455A (zh) 一种跨域单点登录系统及其方法
US8732460B2 (en) System and method for providing a one-time key for identification
CN111447220B (zh) 认证信息管理方法、应用系统的服务端及计算机存储介质
US11165768B2 (en) Technique for connecting to a service
CN108011888A (zh) 一种实现证书重构的方法、装置及存储介质、程序产品
CN104247485A (zh) 在通用自举架构中的网络应用功能授权
CN112087412B (zh) 一种基于唯一令牌的服务访问处理方法及装置
WO2020212784A1 (en) Destination addressing associated with a distributed ledger
US20160323260A1 (en) Obtaining data for connection to a device via a network
CN114282267A (zh) 令牌生成方法、令牌验签方法、装置、设备及存储介质
CN109495458A (zh) 一种数据传输的方法、系统及相关组件
CN106453399B (zh) 一种面向用户隐私保护的域名解析服务方法和系统
CN105141624A (zh) 登录方法、账号管理服务器及客户端系统
CN105100107B (zh) 代理客户端账号认证的方法和装置
EP2953312A1 (en) System to handle passwords for service authentication
JP2012181662A (ja) アカウント情報連携システム
CN111817860B (zh) 一种通信认证方法、装置、设备及存储介质
CN104038482A (zh) 多线路选路的方法和装置
JP6383293B2 (ja) 認証システム
CN113079226B (zh) 域名分配方法、装置、服务器及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 518000 the first floor of A1 building, Nanshan Zhiyuan 1001, Nanshan District Xue Yuan Avenue, Shenzhen, Guangdong.

Applicant after: SINFOR Polytron Technologies Inc

Address before: 518000 the first floor of A1 building, Nanshan Zhiyuan 1001, Nanshan District Xue Yuan Avenue, Shenzhen, Guangdong.

Applicant before: Shenxinfu Electronics Science and Technology Co., Ltd., Shenzhen

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant