WO2020019420A1 - 一种登录管理***、方法、服务器及计算机可读存储介质 - Google Patents
一种登录管理***、方法、服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- WO2020019420A1 WO2020019420A1 PCT/CN2018/104966 CN2018104966W WO2020019420A1 WO 2020019420 A1 WO2020019420 A1 WO 2020019420A1 CN 2018104966 W CN2018104966 W CN 2018104966W WO 2020019420 A1 WO2020019420 A1 WO 2020019420A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- login
- key
- time
- access request
- credential
- Prior art date
Links
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/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- 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
Definitions
- the present application belongs to the field of computer technology, and particularly relates to a login management system, method, server, and computer-readable storage medium.
- the embodiments of the present application provide a login management system, method, server, and computer-readable storage medium to solve the problem that the existing login management system takes a long time to log in and seriously affects the user's work efficiency.
- a first aspect of the embodiments of the present application provides a login management system, which may include a client plug-in, a login management server, and an authentication server;
- the client plug-in is configured to intercept a first access request to a business system sent by a client, and modify the first access request to a second access request directed to a login management server of the business system;
- the login management server is configured to receive the second access request, and determine whether the second access request includes login credentials; if the second access request includes the login credentials, send the request to the login credentials according to the login credentials.
- a user of the client opens the login permission of the business system; if the login credentials are not included in the second access request, sending a login credential allocation request to the authentication server;
- the authentication server is configured to allocate login credentials to a user of the client according to the login credential allocation request, and send the allocated login credentials to the login management server;
- the login management server is further configured to open the login authority of the business system to a user of the client according to the allocated login credentials.
- a second aspect of the embodiments of the present application provides a login management method, which may include:
- the client plug-in intercepts a first access request to the business system sent by the client, and modifies the first access request to a second access request directed to a login management server of the business system;
- the login management server receives the second access request and determines whether the second access request includes login credentials; if the second access request includes the login credentials, the login management server sends the login credentials to the client according to the login credentials.
- the user opens the login permission of the business system; if the second access request does not include the login credential, sending a login credential allocation request to an authentication server;
- the authentication server assigns login credentials to a user of the client according to the login credential allocation request, and sends the allocated login credentials to the login management server;
- the login management server opens the login authority of the business system to a user of the client according to the allocated login credentials.
- an authentication server is used to assign users with common login credentials between business systems.
- the client plug-in intercepts and modifies the client's access request to the business system to make the access request. Point to the login management server of the business system, and the login management server judges the access request. If it contains login credentials, it will directly open the login permission of the business system for the user, without the user entering a user name, password, etc. If the login credentials are not included (for example, in the initial state, the authentication server has not assigned login credentials to the user), a login credentials assignment request is sent to the authentication server, and the authentication server assigns login credentials to the user. In this way, users can use their own login credentials to directly log in to various business systems without having to perform login verification each time, saving a lot of time and improving work efficiency.
- FIG. 1 is a schematic diagram of an embodiment of a login management system according to an embodiment of the present application.
- FIG. 2 is a schematic flowchart of an embodiment of a login management method according to an embodiment of the present application
- FIG. 3 is a schematic flowchart of modifying a first access request to a second access request directed to a login management server of a business system
- FIG. 4 is a structural diagram of an embodiment of a login management server according to an embodiment of the present application.
- FIG. 5 is a structural diagram of an embodiment of an authentication server according to an embodiment of the present application.
- FIG. 6 is a schematic block diagram of a login management server according to an embodiment of the present application.
- FIG. 7 is a schematic block diagram of an authentication management server according to an embodiment of the present application.
- an embodiment of a login management system in the embodiment of the present application may include a client plug-in, a login management server, and an authentication server.
- the client plug-in can be pre-installed on the client of each user, or can be downloaded and installed by the user from a designated server according to actual needs. For example, for one or two business systems that are generally used in daily work, For users, using conventional login methods can meet their needs, there is no need to download and install the client plug-in, and for users who often use more business systems in daily work, if you want to achieve login-free To access the functions of these business systems, you need to download and install the client plug-in on your own client.
- the login management server is used to manage the process of a user logging in to a business system.
- each business system has a unique corresponding login management server.
- "a" is a logical concept. Instead of physical concepts.
- a business system may have multiple physical servers to implement the login management function. However, only a unique virtual server ID is provided to the outside. It as a whole is a logical login management server.
- the authentication server is used to assign login credentials for users, and each business system shares the same authentication server.
- the login credentials can be shared among various business systems, and the login credentials can enable users to enter information such as user names and passwords without having to enter them. In the case of direct login to each business system. Similar to the login management server, the "a" mentioned here is also a logical concept.
- an embodiment of a login management method in the embodiment of the present application may include:
- Step S201 The client plug-in intercepts a first access request to a business system sent by a client, and modifies the first access request to a second access request directed to a login management server of the business system.
- the step S201 may specifically include:
- Step S2011 Extract a uniform resource locator in the first access request.
- a Uniform Resource Locator Locator a uniform resource locator is a concise representation of the location and access method of a resource that can be obtained from the Internet, and is the address of a standard resource on the Internet. Every file on the Internet has a unique URL, which contains information indicating the location of the file and how the browser should handle it. It should be noted that since the business system often contains a large number of file resources, there are also multiple URLs in a business system. Which one of the file resources does the user specifically need to access, which one is carried in the first access request. The URL of the file resource.
- Step S2012 Determine a service system corresponding to the uniform resource locator according to a value of a first field preset in the uniform resource locator.
- the URL of each file resource in the same business system can use the same prefix, that is, the first field.
- the URL of the A file resource in Service System 1 (ServiceSystem 1) can be: http: / /ServiceSystem1.com/AfileSource.html
- the URL of the B file resource can be: http://ServiceSystem1.com/BfileSource.html
- this field can be used as the identity of the business system to determine Corresponding business system.
- Step S2013 Modify the value of the preset second field in the uniform resource locator to a preset replacement value, where the replacement value is used to indicate the login management server of the business system.
- URLs of file resources in the same service system may use different suffixes, that is, the second field, to indicate respective specific file resources.
- the URL of the A file resource in the business system 1 may be: http://ServiceSystem1.com/AfileSource.html, where the field AfileSource for indicating the A file resource is the second field. If the URL is used to access the business system 1, the business system 1 will perform login authentication for the user, and the business system 1 can be accessed only after the user enters the account and password to pass the verification.
- the client plug-in modifies the value of the second field to a preset replacement value, and the replacement value points to the login management server of the business system, so that the normal login verification process can be bypassed and the login management server performs corresponding login management.
- the replacement value can be set according to the actual situation. For example, you can use sso as the replacement value for instructing to log in to the management server, and modify the above URL to http://ServiceSystem1.com/sso.html.
- the access request after modifying the URL is The second access request.
- the modification of the initial access request is completed, the access request will be directed to the login management server of the business system, the conventional login verification process is bypassed, and the subsequent processing by the login management server is implemented Direct access to the business system.
- Step S202 The login management server receives the second access request, and determines whether the second access request includes login credentials.
- step S203 If the second access request does not include the login credentials, step S203 and subsequent steps are performed, and if the second access request includes the login credentials, step S205 is performed.
- Step S203 The login management server sends a login credential allocation request to the authentication server.
- the authentication server has not assigned login credentials to the user, so the login credentials will not be included in the second access request.
- the login management server will authenticate to the authentication.
- the server sends a login credential allocation request, so that the authentication server allocates login credentials for the user.
- Step S204 The authentication server allocates login credentials to a user of the client according to the login credential allocation request, and sends the allocated login credentials to the login management server.
- the authentication server first obtains user data from the login credential allocation request, then obtains the current system time, and uses the current system time as the credential creation time, and then the user data and the credential creation time Perform encryption processing to obtain login credentials corresponding to the user.
- a specific encryption process may be to encrypt the user data based on a preset key and a preset first encryption algorithm to generate a first encryption result, and create the credential based on a preset second encryption algorithm.
- the result obtained after encryption processing according to the above steps is:
- EncData EncAlg3 ((EncAlg1 (KEY, UserInfo)
- EncAlg1 is the first encryption algorithm
- EncAlg2 is the second encryption algorithm
- EncAlg3 is the third encryption algorithm.
- the encryption algorithms used in this embodiment include, but are not limited to, DES, 3DES, TDEA, Blowfish, RC2, RC4, RC5, IDEA, SKIPJACK, AES, BASE64 and other symmetric encryption algorithms, as well as RSA, Elgamal, Rabin, DH, ECC asymmetric encryption algorithms. It may be selected according to actual conditions.
- the first encryption algorithm may be an AES algorithm
- the second encryption algorithm and the third encryption algorithm may be a BASE64 algorithm.
- the authentication server may send the login credentials to the client, so that the client adds the login credentials to subsequent access requests to the business system, on the other hand,
- the authentication server may send the login credentials to the login management server, so that the login management server opens the login authority of the business system to a user of the client according to the login credentials.
- Step S205 The login management server opens the login authority of the business system to a user of the client according to the login credentials.
- the login management server first decrypts the login credentials, and obtains user data and credential creation time contained in the login credentials.
- EncData EncAlg3 ((EncAlg1 (KEY, UserInfo)
- EncData EncAlg3 ((EncAlg1 (KEY, UserInfo)
- EncAlg3.decode (EncData)
- the operation result is divided into encrypted user data EncUserInfo and encrypted credential creation time EncCreateTime, and then the following operations are performed to obtain the user data UserInfo and credential creation time CreateTime:
- EncAlg1.decode is the inverse operation of the first encryption algorithm
- EncAlg2.decode is the inverse operation of the second encryption algorithm
- EncAlg3.decode is the inverse operation of the third encryption algorithm.
- the user data contained in the login credential is compared with the user data contained in the second access request.
- calculating a time difference between a request receiving time and the credential creation time, and the request receiving time is the login management The time when the server receives the second access request. If the time difference between the request reception time and the credential creation time is greater than or equal to a preset threshold, it is determined that the current login fails; if the time difference between the request reception time and the credential creation time is less than a preset Threshold, the login authority of the business system is opened to users of the client.
- the threshold can be set according to the actual situation. For example, it can be set to 10 minutes, 30 minutes, 1 hour, 2 hours, or other values. However, it should be noted that the smaller the threshold value is, the greater The faster the update frequency, the larger the calculation amount, and the more resource consumption. On the other hand, the larger the threshold value is, the slower the update frequency of login credentials, the smaller the calculation amount, and the smaller the resource consumption. There is a trade-off between the two.
- the authentication server may further generate a key at a preset time interval.
- variable factor is calculated according to the following formula:
- V (cTime-bTime) ⁇ bTime
- HOTP (K, C) (HASH (K, C) & 0x7FFFFFFF) mod 10d
- HASH is a preset hash function
- SEED and V are respectively taken as K and C values into the above formula to calculate HOTP (SEED, V) and HOTP (SEED, V + 1).
- the hash function is used to perform the operation, a 20-byte 40-digit hexadecimal number is obtained, mod is a remainder operation, and the d-modulo operation of 10 is used to obtain a d-digit password, which is also described as Key.
- the authentication server uses the key to perform the above encryption process, and sends the key to the login management server.
- the login management server After receiving the key, the login management server adds the key to a preset key sequence, and deletes the earliest received key from the key sequence from the key sequence.
- the decryption processing is performed in order from the priority of each key in the key sequence until the decryption is successful. If the keys in the key sequence are traversed, the If the decryption is successful, it is determined that the decryption has failed.
- the priority of the key is negatively related to the time of receiving the key. That is, the earlier the time of receiving the key, the lower the priority. On the contrary, if the time of receiving the key is higher, Late, the higher its priority.
- the login management server saves the 4 recently received keys, which are arranged in the order of receiving time from morning to night: key 1, key 2. Key 3 and Key 4.
- the login management server receives the key 5 newly generated by the authentication server, it deletes Key 1 from the key sequence and adds Key 5 Enter the key sequence.
- the key sequence is arranged in the order of reception time from morning to night: key 2, key 3, key 4, and key 5.
- decryption first use the receive The key 5 with the latest time and the highest priority, if it cannot be decrypted successfully, the key 4 with the second highest receiving time and the next highest priority is used, and so on.
- the length of the key sequence can be determined by the above threshold (that is, the threshold of the time difference between the time when the request is received and the time when the credential is created) and the time interval at which the key is generated by the authentication server.
- the key can be calculated according to the following formula Sequence length:
- Threshold is the threshold
- Interval is the time interval
- Ceil is the rounding function up
- SerialNum is the length of the key sequence.
- an authentication server is used to assign users with login credentials that are common between business systems.
- the client plug-in intercepts and modifies the client's access request to the business system. So that the access request is directed to the login management server of the business system, and the login management server judges the access request, and if the login credential is included, the login permission of the business system is directly opened for the user, and the user does not need to enter again User name, password, and other methods for login verification. If the login credentials are not included (for example, in the initial state, the authentication server has not assigned login credentials for the user), a login credential assignment request is sent to the authentication server, and the authentication server The user assigns login credentials.
- users can use their own login credentials to directly log in to various business systems without having to perform login authentication each time.
- the user first accesses business system A. In the initial state, the user does not have login credentials, so he logs in to the management server. After judging the access request, it will request the authentication server to assign login credentials to it. The user successfully logs in to business system A with the login credentials. Then, the user continues to access business system B and business system C. At this time, the access request will carry Login credentials can directly log in to these business systems, saving a lot of time and improving work efficiency.
- FIG. 4 shows a structural diagram of an embodiment of a login management server provided by an embodiment of the present application.
- the login management server may include:
- a login credential determining module 401 configured to receive an access request and determine whether the access request includes a login credential
- An allocation request sending module 402 configured to send a login credential allocation request to an authentication server
- a login permission opening module 403 configured to open a login permission of a business system to a user of a client according to the login credentials
- the login permission opening module may include:
- a decryption processing unit configured to perform decryption processing on the login credentials, and obtain user data and a credential creation time included in the login credentials;
- a user data comparison unit configured to compare the user data contained in the login credentials with the user data contained in the second access request
- a time difference calculating unit configured to calculate a time difference between a request receiving time and a credential creation time if the user data included in the login credential is consistent with the user data included in the second access request, and the request receiving Time is the time when the second access request is received by the login management server;
- a login authority opening unit is configured to open the login authority of the business system to a user of the client if a time difference between the request receiving time and the credential creation time is less than a preset threshold.
- the login management server may further include:
- a key management module configured to add the received key to a preset key sequence, and delete the earliest key received from the key sequence from the key sequence, and perform decryption processing ,
- the decryption process is performed in order from the priority of each key in the key sequence from high to low until the decryption is successful. If the keys in the key sequence are traversed, the decryption is still not successful. Then it is determined that the decryption fails, wherein the priority of the key is negatively related to the reception time of the key.
- FIG. 5 illustrates a structural diagram of an authentication server according to an embodiment of the present application.
- the authentication server may include:
- a login credential allocation module 501 configured to allocate login credentials to a user of the client according to the login credential allocation request, and send the allocated login credentials to the login management server;
- the credential creation time determination module 503 is configured to obtain the current system time, and use the current system time as the credential creation time;
- the encryption processing module 504 is configured to perform encryption processing on the user data and the credential creation time to obtain login credentials corresponding to the user, and send the login credentials to the client.
- the authentication server may further include:
- a key generation module configured to generate a key every preset time interval and send the key to the login management server;
- FIG. 6 shows a schematic block diagram of a login management server provided by an embodiment of the present application. For ease of description, only parts related to the embodiment of the present application are shown.
- the login management server 6 may include a processor 60, a memory 61, and computer-readable instructions 62 stored in the memory 61 and executable on the processor 60.
- the processor 60 executes the computer-readable instructions 62, the steps implemented by the login management server in the embodiments of the foregoing login management method embodiments are implemented.
- FIG. 7 shows a schematic block diagram of an authentication server according to an embodiment of the present application. For ease of description, only a part related to the embodiment of the present application is shown.
- the authentication server 7 may include a processor 70, a memory 71, and computer-readable instructions 72 stored in the memory 71 and executable on the processor 70.
- the processor 70 executes the computer-readable instructions 72, the steps performed by the authentication server in the embodiments of the foregoing login management method embodiments are implemented.
- the processor may be a Central Processing Unit (CPU), or may be another general-purpose processor, a digital signal processor (Digital Signal Processor (DSP), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- a general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
- the memory may be an internal storage unit, such as a hard disk or a memory.
- the memory may also be an external storage device, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), Secure Digital, SD) card, flash card, etc.
- the memory may include both an internal storage unit and an external storage device.
- the memory is used to store the computer-readable instructions and other instructions and data.
- the memory may also be used to temporarily store data that has been or will be output.
- Each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist separately physically, or two or more units may be integrated into one unit.
- the above integrated unit may be implemented in the form of hardware or in the form of software functional unit.
- the integrated unit When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it may be stored in a computer-readable storage medium.
- the technical solution of the present application is essentially a part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium.
- Including computer-readable instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiments of the present application.
- the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), and a random access memory (RAM, Random Access) Memory), magnetic disks, or optical discs, which can store computer-readable instructions.
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)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请属于计算机技术领域,尤其涉及一种登录管理***、方法、服务器及计算机可读存储介质。所述登录管理***包括:客户端插件、登录管理服务器以及认证服务器;所述客户端插件用于拦截客户端发出的对业务***的第一访问请求,并将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求;所述登录管理服务器用于接收所述第二访问请求,并判断所述第二访问请求中是否包含登录凭证;若所述第二访问请求中包含所述登录凭证,则根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限;所述认证服务器用于根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器。
Description
本申请要求于2018年7月26日提交中国专利局、申请号为201810832303.8、发明名称为“一种登录管理***和方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请属于计算机技术领域,尤其涉及一种登录管理***、方法、服务器及计算机可读存储介质。
企业内部,一般都有很多的业务***为用户提供相应的管理和IT服务。这些不同的业务***往往是在不同的时期建设起来的,运行在不同的平台上,每个业务***都会有自己的安全体系和身份认证方式,当用户需要使用到多个业务***时,进入每个业务***都需要重新进行登录,耗费大量的时间,严重影响用户的工作效率。
有鉴于此,本申请实施例提供了一种登录管理***、方法、服务器及计算机可读存储介质,以解决现有的登录管理***登录耗时较多,严重影响用户的工作效率的问题。
本申请实施例的第一方面提供了一种登录管理***,可以包括:客户端插件、登录管理服务器以及认证服务器;
所述客户端插件用于拦截客户端发出的对业务***的第一访问请求,并将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求;
所述登录管理服务器用于接收所述第二访问请求,并判断所述第二访问请求中是否包含登录凭证;若所述第二访问请求中包含所述登录凭证,则根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限;若所述第二访问请求中不包含所述登录凭证,则向所述认证服务器发送登录凭证分配请求;
所述认证服务器用于根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;
所述登录管理服务器还用于根据分配的所述登录凭证向所述客户端的用户开放所述业务***的登录权限。
本申请实施例的第二方面提供了一种登录管理方法,可以包括:
客户端插件拦截客户端发出的对业务***的第一访问请求,并将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求;
登录管理服务器接收所述第二访问请求,并判断所述第二访问请求中是否包含登录凭证;若所述第二访问请求中包含所述登录凭证,则根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限;若所述第二访问请求中不包含所述登录凭证,则向认证服务器发送登录凭证分配请求;
所述认证服务器根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;
所述登录管理服务器根据分配的所述登录凭证向所述客户端的用户开放所述业务***的登录权限。
本申请实施例通过认证服务器为用户分配在业务***间通用的登录凭证,用户通过客户端访问某一业务***时,客户端插件拦截并修改客户端对该业务***的访问请求,使该访问请求指向该业务***的登录管理服务器,登录管理服务器对该访问请求进行判断,若其中包含了登录凭证,则直接为该用户开放该业务***的登录权限,无需该用户再通过输入用户名、密码等方式进行登录验证,若其中不包含登录凭证(例如,在初始状态下,认证服务器尚未为该用户分配登录凭证),则向认证服务器发送登录凭证分配请求,由认证服务器为该用户分配登录凭证。通过这样的方式,用户可以使用自己的登录凭证直接登录各个业务***,而无需每次均进行登录验证,节省了大量的时间,提高了工作效率。
图1为本申请实施例中一种登录管理***的一个实施例的示意图;
图2为本申请实施例中一种登录管理方法的一个实施例的示意流程图;
图3为将第一访问请求修改为指向业务***的登录管理服务器的第二访问请求的示意流程图;
图4为本申请实施例中一种登录管理服务器的一个实施例结构图;
图5为本申请实施例中一种认证服务器的一个实施例结构图;
图6为本申请实施例中一种登录管理服务器的示意框图。
图7为本申请实施例中一种认证管理服务器的示意框图。
请参阅图1,本申请实施例中一种登录管理***的一个实施例可以包括:客户端插件、登录管理服务器以及认证服务器。
所述客户端插件可以预装在每个用户的客户端上,也可以由用户根据实际需求从指定的服务器中下载安装,例如,对于在日常工作中一般只使用到一个或两个业务***的用户而言,使用常规的登录方法已能满足其需求,则无需额外下载安装该客户端插件,而对于在日常工作中经常会使用到较多个业务***的用户而言,若要实现免登录访问这些业务***的功能,则需要在自己的客户端下载并安装该客户端插件。
所述登录管理服务器用于用户登录业务***的过程进行管理,一般地,每个业务***均有一个唯一对应的登录管理服务器,需要注意的是,这里所说的“一个”是逻辑上的概念,而不是物理上的概念,例如,某个业务***可能有多台物理上的服务器来实现登录管理的功能,但是,对外只提供一个唯一的虚拟的服务器标识,对于外部而言,则可以将其整体视作一个逻辑上的登录管理服务器。
所述认证服务器用于为用户分配登录凭证,各个业务***共享同一个认证服务器,该登录凭证可以在各个业务***间通用,通过该登录凭证即可使用户在无需通过输入用户名、密码等信息的情况下直接登录到各个业务***中。与登录管理服务器类似,此处所说的“一个”也是逻辑上的概念。
如图2所示,本申请实施例中一种登录管理方法的一个实施例可以包括:
步骤S201、客户端插件拦截客户端发出的对业务***的第一访问请求,并将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求。
如图3所示,所述步骤S201具体可以包括:
步骤S2011、提取所述第一访问请求中的统一资源定位符。
一般地,当用户需要对某一业务***进行访问时,则会通过客户端向该业务***发送HTTP请求,也即所述第一访问请求,在该第一访问请求中包括了该业务***中的一个统一资源定位符(Uniform Resource
Locator,URL),统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。需要注意的是,由于业务***中往往包含了众多的文件资源,因此一个业务***中也有多个URL,用户具体需要访问其中的哪一个文件资源,则在所述第一访问请求中携带哪一个文件资源的URL。
步骤S2012、根据所述统一资源定位符中预设的第一字段的取值确定与所述统一资源定位符对应的业务***。
在本实施例中,同一业务***中各个文件资源的URL可以使用相同的前缀,也即所述第一字段,例如,业务***1(ServiceSystem1)中的A文件资源的URL可以为:http://ServiceSystem1.com/AfileSource.html,其中的B文件资源的URL可以为:http://ServiceSystem1.com/BfileSource.html,使用了相同的前缀ServiceSystem1,可以将该字段作为业务***的标识,确定出对应的业务***。
步骤S2013、将所述统一资源定位符中预设的第二字段的取值修改为预设的替换值,所述替换值用于指示所述业务***的登录管理服务器。
在本实施例中,同一业务***中各个文件资源的URL可以使用不同的后缀,也即所述第二字段,来指示各自具体的文件资源。例如,业务***1中的A文件资源的URL可以为:http://ServiceSystem1.com/AfileSource.html,其中的用于指示A文件资源的字段AfileSource即为所述第二字段。如果直接使用该URL访问业务***1,则业务***1会对用户进行登录验证,只有当用户输入账号、密码通过验证后才能对业务***1进行访问,因此,在本实施例中,通过所述客户端插件将第二字段的取值修改为预设的替换值,而该替换值指向所述业务***的登录管理服务器,从而可以绕开常规的登录验证流程,由登录管理服务器进行相应的登录管理。所述替换值可以根据实际情况进行设置,例如,可以使用sso作为指示登录管理服务器的替换值,将上述URL修改为http://ServiceSystem1.com/sso.html,修改过URL的访问请求即为所述第二访问请求。
通过客户端插件的上述过程,完成了对于初始访问请求的修改,将访问请求将指向了所述业务***的登录管理服务器,绕开了常规的登录验证流程,再通过登录管理服务器的后续处理实现对所述业务***的直接访问。
步骤S202、所述登录管理服务器接收所述第二访问请求,并判断所述第二访问请求中是否包含登录凭证。
若所述第二访问请求中不包含所述登录凭证,则执行步骤S203及其后续步骤,若所述第二访问请求中包含所述登录凭证,则执行步骤S205。
步骤S203、所述登录管理服务器向所述认证服务器发送登录凭证分配请求。
在初始状态下,所述认证服务器尚未为用户分配过登录凭证,因此在所述第二访问请求中不会包含所述登录凭证,在这种情况下,所述登录管理服务器会向所述认证服务器发送登录凭证分配请求,以使所述认证服务器为该用户分配登录凭证。
步骤S204、所述认证服务器根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器。
具体地,所述认证服务器首先从所述登录凭证分配请求中获取用户数据,然后获取当前***时间,并将所述当前***时间作为凭证创建时间,再对所述用户数据和所述凭证创建时间进行加密处理,得到与所述用户对应的登录凭证。
一种具体地加密处理过程可以是基于预设的密钥和预设的第一加密算法对所述用户数据进行加密以生成第一加密结果,基于预设的第二加密算法对所述凭证创建时间加密以生成第二加密结果,将所述第一加密结果和所述第二加密结果合成为一个字符串,基于预设的第三加密算法对该字符串加密处理,得到与所述用户对应的登录凭证。
例如,密钥为KEY,凭证创建时间为CreateTime,则按照上述步骤加密处理后得到的结果为:
EncData=EncAlg3((EncAlg1 (KEY,UserInfo)|| EncAlg2 (CreateTime))
其中,UserInfo为用户数据,EncData为加密处理后得到的结果,也即与所述用户对应的登录凭证,“||”为字符串连接符,用于将两个字符串连接成一个字符串,EncAlg1为第一加密算法、EncAlg2为第二加密算法、EncAlg3为第三加密算法,本实施例中所使用的加密算法包括但不限于DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK、AES、BASE64等对称加密算法,以及RSA、Elgamal、Rabin、D-H、ECC非对称加密算法。可以根据实际情况进行选择,优选地,所述第一加密算法可以是AES算法,第二加密算法和第三加密算法可以是BASE64算法。
在生成所述登录凭证之后,一方面,所述认证服务器可以将所述登录凭证发送至所述客户端,以使客户端在后续对业务***的访问请求中加入该登录凭证,另一方面,所述认证服务器可以将所述登录凭证发送至所述登录管理服务器,以使所述登录管理服务器根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限。
步骤S205、所述登录管理服务器根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限。
具体地,所述登录管理服务器首先对所述登录凭证进行解密处理,获取所述登录凭证中包含的用户数据和凭证创建时间。
对所述登录凭证进行解密处理的过程实质上是对上述加密过程的一个逆运算。以EncData=EncAlg3((EncAlg1 (KEY,UserInfo)|| EncAlg2 (CreateTime))为例,则解密时,按照如下过程:
按照EncAlg3.decode(EncData)运算,并将运算结果拆分为加密用户数据EncUserInfo和加密凭证创建时间EncCreateTime,再经过如下运算得到其中包含的用户数据UserInfo和凭证创建时间CreateTime:
UserInfo=EncAlg1.decode(KEY, EncUserInfo)
CreateTime=EncAlg2.decode(EncCreateTime)
其中,EncAlg1.decode为第一加密算法的逆运算,EncAlg2.decode为第二加密算法的逆运算,EncAlg3.decode为第三加密算法的逆运算。
在完成解密之后,将所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据进行比对。
若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据不一致,则判定本次登录失败。
若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据一致,则计算请求接收时间与所述凭证创建时间之间的时间差,所述请求接收时间为所述登录管理服务器接收到所述第二访问请求的时间。若所述请求接收时间与所述凭证创建时间之间的时间差大于或等于预设的阈值,则判定本次登录失败;若所述请求接收时间与所述凭证创建时间之间的时间差小于预设的阈值,则向所述客户端的用户开放所述业务***的登录权限。
所述阈值可以根据实际情况进行设置,例如,可以将其设置为10分钟、30分钟、1小时、2小时或者其它取值,但需要注意的是,该阈值取值越小,则登录凭证的更新频率越快,计算量越大,资源消耗也较多,反之,该阈值取值越大,则登录凭证的更新频率越慢,计算量越小,资源消耗也较少,需要根据具体情景对这两者进行权衡。
进一步地,为了提高整个***的安全性,在本申请实施例的一种可能实现中,所述认证服务器还可以每隔预设的时间间隔生成一个密钥。
具体地,获取当前时间cTime以及预设的基准时间bTime,并根据下式计算可变因子:
V=(cTime-bTime) ÷bTime
从预设的随机发生器中获取一个随机字符串SEED,根据下式对该可变因子V以及随机字符串SEED进行处理,得到密钥KEY:
KEY=HOTP(SEED,V)||HOTP(SEED,V+1)
HOTP(K,C)=(HASH(K,C)&0x7FFFFFFF)mod 10d
其中,HASH为预设的哈希函数,将SEED和V分别作为K、C值带入上述公式计算得到HOTP(SEED,V)和HOTP(SEED,V+1)。采用所述哈希函数进行运算,会得到一个20字节40位的十六进制数字,mod为取余运算,与10的d次方模运算得到d位的一个数字口令,也即所述密钥。
在生成密钥后,所述认证服务器使用该密钥进行上述加密过程,并将所述密钥发送至所述登录管理服务器。
所述登录管理服务器在接收到密钥后,将该密钥添加入预设的密钥序列中,并将所述密钥序列中接收时间最早的密钥从所述密钥序列中删除,当进行解密处理时,按照所述密钥序列中各个密钥的优先级从高到低的顺序依次进行解密处理,直至解密成功为止,若遍历完所述密钥序列中的各个密钥,仍未解密成功,则判定解密失败,其中,密钥的优先级与密钥的接收时间负相关,也即密钥的接收时间越早,则其优先级越低,反之,若密钥的接收时间越晚,则其优先级越高。
例如,假设所述密钥序列的长度为4,也即所述登录管理服务器会保存最近接收到的4个密钥,按照接收时间从早到晚的顺序依次排列为:密钥1、密钥2、密钥3和密钥4,当所述登录管理服务器接收到所述认证服务器最新生成的密钥5后,则会将密钥1从该密钥序列中删除,并将密钥5添加入该密钥序列,此时的密钥序列按照接收时间从早到晚的顺序依次排列为:密钥2、密钥3、密钥4和密钥5,当需要进行解密时,首先使用接收时间最晚,优先级最高的密钥5,若未能成功解密,则使用接收时间次晚,优先级次高的密钥4,依次类推。
所述密钥序列的长度可以由上述阈值(即请求接收时间与凭证创建时间之间的时间差的阈值)和认证服务器生成密钥的时间间隔来确定,例如,可以根据下式计算所述密钥序列的长度:
SerialNum=Ceil(Threshold÷Interval)
其中,Threshold为所述阈值,Interval为所述时间间隔,Ceil为向上取整函数,SerialNum为所述密钥序列的长度。
综上所述,本申请实施例通过认证服务器为用户分配在业务***间通用的登录凭证,用户通过客户端访问某一业务***时,客户端插件拦截并修改客户端对该业务***的访问请求,使该访问请求指向该业务***的登录管理服务器,登录管理服务器对该访问请求进行判断,若其中包含了登录凭证,则直接为该用户开放该业务***的登录权限,无需该用户再通过输入用户名、密码等方式进行登录验证,若其中不包含登录凭证(例如,在初始状态下,认证服务器尚未为该用户分配登录凭证),则向认证服务器发送登录凭证分配请求,由认证服务器为该用户分配登录凭证。通过这样的方式,用户可以使用自己的登录凭证直接登录各个业务***,而无需每次均进行登录验证,例如,用户首先访问业务***A,初始状态下用户尚没有登录凭证,因此在登录管理服务器对访问请求进行判断后,会请求认证服务器为其分配登录凭证,用户凭借该登录凭证顺利登录业务***A,接着,用户继续访问业务***B和业务***C,此时的访问请求中都将携带登录凭证,可以直接登录这些业务***,节省了大量的时间,提高了工作效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图4示出了本申请实施例提供的一种登录管理服务器的一个实施例结构图,所述登录管理服务器可以包括:
登录凭证判断模块401,用于接收访问请求,并判断所述访问请求中是否包含登录凭证;
分配请求发送模块402,用于向认证服务器发送登录凭证分配请求;
登录权限开放模块403,用于根据所述登录凭证向客户端的用户开放业务***的登录权限;
进一步地,所述登录权限开放模块可以包括:
解密处理单元,用于对所述登录凭证进行解密处理,获取所述登录凭证中包含的用户数据和凭证创建时间;
用户数据对比单元,用于将所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据进行比对;
时间差计算单元,用于若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据一致,则计算请求接收时间与所述凭证创建时间之间的时间差,所述请求接收时间为所述登录管理服务器接收到所述第二访问请求的时间;
登录权限开放单元,用于若所述请求接收时间与所述凭证创建时间之间的时间差小于预设的阈值,则向所述客户端的用户开放所述业务***的登录权限。
进一步地,所述登录管理服务器还可以包括:
密钥管理模块,用于将接收到的密钥添加入预设的密钥序列中,并将所述密钥序列中接收时间最早的密钥从所述密钥序列中删除,当进行解密处理时,按照所述密钥序列中各个密钥的优先级从高到低的顺序依次进行解密处理,直至解密成功为止,若遍历完所述密钥序列中的各个密钥,仍未解密成功,则判定解密失败,其中,密钥的优先级与密钥的接收时间负相关。
图5示出了本申请实施例提供的一种认证服务器的一个实施例结构图,所述认证服务器可以包括:
登录凭证分配模块501,用于根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;
用户数据获取模块502,用于从所述登录凭证分配请求中获取用户数据;
凭证创建时间确定模块503,用于获取当前***时间,并将所述当前***时间作为凭证创建时间;
加密处理模块504,用于对所述用户数据和所述凭证创建时间进行加密处理,得到与所述用户对应的登录凭证,并将所述登录凭证发送至所述客户端。
进一步地,所述认证服务器还可以包括:
密钥生成模块,用于每隔预设的时间间隔生成一个密钥,并将所述密钥发送至所述登录管理服务器;
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
图6示出了本申请实施例提供的一种登录管理服务器的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
在本实施例中,所述登录管理服务器6可包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机可读指令62。所述处理器60执行所述计算机可读指令62时实现上述各个登录管理方法实施例中由所述登录管理服务器实施的步骤。
图7示出了本申请实施例提供的一种认证服务器的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
在本实施例中,所述认证服务器7可包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机可读指令72。所述处理器70执行所述计算机可读指令72时实现上述各个登录管理方法实施例中由所述认证服务器实施的步骤。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital
Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable
Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可以是内部存储单元,例如硬盘或内存。所述存储器也可以是外部存储设备,例如插接式硬盘,智能存储卡(Smart
Media Card, SMC),安全数字(Secure Digital,
SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器还可以既包括内部存储单元也包括外部存储设备。所述存储器用于存储所述计算机可读指令以及其它指令和数据。所述存储器还可以用于暂时地存储已经输出或者将要输出的数据。
在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机可读指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access
Memory)、磁碟或者光盘等各种可以存储计算机可读指令的介质。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (20)
- 一种登录管理***,其特征在于,包括:客户端插件、登录管理服务器以及认证服务器;所述客户端插件用于拦截客户端发出的对业务***的第一访问请求,并将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求;所述登录管理服务器用于接收所述第二访问请求,并判断所述第二访问请求中是否包含登录凭证;若所述第二访问请求中包含所述登录凭证,则根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限;若所述第二访问请求中不包含所述登录凭证,则向所述认证服务器发送登录凭证分配请求;所述认证服务器用于根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;所述登录管理服务器还用于根据分配的所述登录凭证向所述客户端的用户开放所述业务***的登录权限。
- 根据权利要求1所述的登录管理***,其特征在于,所述将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求包括:提取所述第一访问请求中的统一资源定位符;根据所述统一资源定位符中预设的第一字段的取值确定与所述统一资源定位符对应的业务***;将所述统一资源定位符中预设的第二字段的取值修改为预设的替换值,所述替换值用于指示所述业务***的登录管理服务器。
- 根据权利要求1所述的登录管理***,其特征在于,所述根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限包括:对所述登录凭证进行解密处理,获取所述登录凭证中包含的用户数据和凭证创建时间;将所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据进行比对;若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据一致,则计算请求接收时间与所述凭证创建时间之间的时间差,所述请求接收时间为所述登录管理服务器接收到所述第二访问请求的时间;若所述请求接收时间与所述凭证创建时间之间的时间差小于预设的阈值,则向所述客户端的用户开放所述业务***的登录权限。
- 根据权利要求1所述的登录管理***,其特征在于,所述根据所述登录凭证分配请求为所述客户端的用户分配登录凭证包括:从所述登录凭证分配请求中获取用户数据;获取当前***时间,并将所述当前***时间作为凭证创建时间;对所述用户数据和所述凭证创建时间进行加密处理,得到与所述用户对应的登录凭证,并将所述登录凭证发送至所述客户端。
- 根据权利要求1至4中任一项所述的登录管理***,其特征在于,所述认证服务器还用于每隔预设的时间间隔生成一个密钥,并将所述密钥发送至所述登录管理服务器;所述登录管理服务器还用于将接收到的密钥添加入预设的密钥序列中,并将所述密钥序列中接收时间最早的密钥从所述密钥序列中删除,当进行解密处理时,按照所述密钥序列中各个密钥的优先级从高到低的顺序依次进行解密处理,直至解密成功为止,若遍历完所述密钥序列中的各个密钥,仍未解密成功,则判定解密失败,其中,密钥的优先级与密钥的接收时间负相关。
- 一种登录管理方法,其特征在于,包括:客户端插件拦截客户端发出的对业务***的第一访问请求,并将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求;所述登录管理服务器接收所述第二访问请求,并判断所述第二访问请求中是否包含登录凭证;若所述第二访问请求中包含所述登录凭证,则根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限;若所述第二访问请求中不包含所述登录凭证,则向认证服务器发送登录凭证分配请求;所述认证服务器根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;所述登录管理服务器根据分配的所述登录凭证向所述客户端的用户开放所述业务***的登录权限。
- 根据权利要求6所述的登录管理方法,其特征在于,所述将所述第一访问请求修改为指向所述业务***的登录管理服务器的第二访问请求包括:提取所述第一访问请求中的统一资源定位符;根据所述统一资源定位符中预设的第一字段的取值确定与所述统一资源定位符对应的业务***;将所述统一资源定位符中预设的第二字段的取值修改为预设的替换值,所述替换值用于指示所述业务***的登录管理服务器。
- 根据权利要求6所述的登录管理方法,其特征在于,所述根据所述登录凭证向所述客户端的用户开放所述业务***的登录权限包括:对所述登录凭证进行解密处理,获取所述登录凭证中包含的用户数据和凭证创建时间;将所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据进行比对;若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据一致,则计算请求接收时间与所述凭证创建时间之间的时间差,所述请求接收时间为所述登录管理服务器接收到所述第二访问请求的时间;若所述请求接收时间与所述凭证创建时间之间的时间差小于预设的阈值,则向所述客户端的用户开放所述业务***的登录权限。
- 根据权利要求6所述的登录管理方法,其特征在于,所述根据所述登录凭证分配请求为所述客户端的用户分配登录凭证包括:从所述登录凭证分配请求中获取用户数据;获取当前***时间,并将所述当前***时间作为凭证创建时间;对所述用户数据和所述凭证创建时间进行加密处理,得到与所述用户对应的登录凭证,并将所述登录凭证发送至所述客户端。
- 根据权利要求6至9中任一项所述的登录管理方法,其特征在于,还包括:所述认证服务器每隔预设的时间间隔生成一个密钥,并将所述密钥发送至所述登录管理服务器;所述登录管理服务器将接收到的密钥添加入预设的密钥序列中,并将所述密钥序列中接收时间最早的密钥从所述密钥序列中删除,当进行解密处理时,按照所述密钥序列中各个密钥的优先级从高到低的顺序依次进行解密处理,直至解密成功为止,若遍历完所述密钥序列中的各个密钥,仍未解密成功,则判定解密失败,其中,密钥的优先级与密钥的接收时间负相关。
- 一种登录管理服务器,其特征在于,包括:登录凭证判断模块,用于接收访问请求,并判断所述访问请求中是否包含登录凭证;分配请求发送模块,用于向认证服务器发送登录凭证分配请求;登录权限开放模块,用于根据所述登录凭证向客户端的用户开放业务***的登录权限。
- 根据权利要求11所述的登录管理服务器,其特征在于,所述登录权限开放模块包括:解密处理单元,用于对所述登录凭证进行解密处理,获取所述登录凭证中包含的用户数据和凭证创建时间;用户数据对比单元,用于将所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据进行比对;时间差计算单元,用于若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据一致,则计算请求接收时间与所述凭证创建时间之间的时间差,所述请求接收时间为所述登录管理服务器接收到所述第二访问请求的时间;登录权限开放单元,用于若所述请求接收时间与所述凭证创建时间之间的时间差小于预设的阈值,则向所述客户端的用户开放所述业务***的登录权限。
- 根据权利要求11所述的登录管理服务器,其特征在于,还包括:密钥管理模块,用于将接收到的密钥添加入预设的密钥序列中,并将所述密钥序列中接收时间最早的密钥从所述密钥序列中删除,当进行解密处理时,按照所述密钥序列中各个密钥的优先级从高到低的顺序依次进行解密处理,直至解密成功为止,若遍历完所述密钥序列中的各个密钥,仍未解密成功,则判定解密失败,其中,密钥的优先级与密钥的接收时间负相关。
- 一种认证服务器,其特征在于,包括:登录凭证分配模块,用于根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;用户数据获取模块,用于从所述登录凭证分配请求中获取用户数据;凭证创建时间确定模块,用于获取当前***时间,并将所述当前***时间作为凭证创建时间;加密处理模块,用于对所述用户数据和所述凭证创建时间进行加密处理,得到与所述用户对应的登录凭证,并将所述登录凭证发送至所述客户端。
- 根据权利要求14所述的认证服务器,其特征在于,还包括:密钥生成模块,用于每隔预设的时间间隔生成一个密钥,并将所述密钥发送至所述登录管理服务器。
- 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如下步骤:接收访问请求,并判断所述访问请求中是否包含登录凭证;向认证服务器发送登录凭证分配请求;根据所述登录凭证向客户端的用户开放业务***的登录权限。
- 根据权利要求16所述的计算机可读存储介质,其特征在于,所述根据所述登录凭证向客户端的用户开放业务***的登录权限包括:对所述登录凭证进行解密处理,获取所述登录凭证中包含的用户数据和凭证创建时间;将所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据进行比对;若所述登录凭证中包含的用户数据与所述第二访问请求中包含的用户数据一致,则计算请求接收时间与所述凭证创建时间之间的时间差,所述请求接收时间为所述登录管理服务器接收到所述第二访问请求的时间;若所述请求接收时间与所述凭证创建时间之间的时间差小于预设的阈值,则向所述客户端的用户开放所述业务***的登录权限。
- 根据权利要求16所述的计算机可读存储介质,其特征在于,还包括:将接收到的密钥添加入预设的密钥序列中,并将所述密钥序列中接收时间最早的密钥从所述密钥序列中删除,当进行解密处理时,按照所述密钥序列中各个密钥的优先级从高到低的顺序依次进行解密处理,直至解密成功为止,若遍历完所述密钥序列中的各个密钥,仍未解密成功,则判定解密失败,其中,密钥的优先级与密钥的接收时间负相关。
- 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如下步骤:根据所述登录凭证分配请求为所述客户端的用户分配登录凭证,并将分配的所述登录凭证发送至所述登录管理服务器;从所述登录凭证分配请求中获取用户数据;获取当前***时间,并将所述当前***时间作为凭证创建时间;对所述用户数据和所述凭证创建时间进行加密处理,得到与所述用户对应的登录凭证,并将所述登录凭证发送至所述客户端。
- 根据权利要求19所述的计算机可读存储介质,其特征在于,还包括:每隔预设的时间间隔生成一个密钥,并将所述密钥发送至所述登录管理服务器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810832303.8A CN109190341B (zh) | 2018-07-26 | 2018-07-26 | 一种登录管理***和方法 |
CN201810832303.8 | 2018-07-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020019420A1 true WO2020019420A1 (zh) | 2020-01-30 |
Family
ID=64937448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/104966 WO2020019420A1 (zh) | 2018-07-26 | 2018-09-11 | 一种登录管理***、方法、服务器及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109190341B (zh) |
WO (1) | WO2020019420A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765655A (zh) * | 2020-09-11 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 访问控制方法、装置、设备及存储介质 |
WO2022027904A1 (zh) * | 2020-08-07 | 2022-02-10 | 郑州阿帕斯数云信息科技有限公司 | 服务器登录方法、***及装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395586A (zh) * | 2019-08-15 | 2021-02-23 | 奇安信安全技术(珠海)有限公司 | 文件访问的控制方法及装置、***、存储介质、电子装置 |
CN112711697A (zh) * | 2020-12-25 | 2021-04-27 | 河南工业和信息化职业学院 | 一种便于操作的电子信息查询*** |
CN113722693A (zh) * | 2021-09-09 | 2021-11-30 | 国网福建省电力有限公司漳州供电公司 | 基于生物识别的rpa平台登录方法、***、设备和存储介质 |
CN113852471B (zh) * | 2021-11-30 | 2022-04-01 | 武汉天喻信息产业股份有限公司 | 一种基于资源受限场景的数据通信方法及装置 |
CN114465806A (zh) * | 2022-02-21 | 2022-05-10 | 深圳市世强元件网络有限公司 | 多方数据接入安全管理方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193027A (zh) * | 2006-11-28 | 2008-06-04 | 深圳市永兴元科技有限公司 | 一种整合异构***的单点登录***及方法 |
CN101277234A (zh) * | 2007-03-28 | 2008-10-01 | 华为技术有限公司 | 一种家庭网络及登录方法 |
CN102801713A (zh) * | 2012-07-23 | 2012-11-28 | 中国联合网络通信集团有限公司 | 网站登录方法、***和访问管理平台 |
CN102984169A (zh) * | 2012-12-11 | 2013-03-20 | 中广核工程有限公司 | 单点登录方法、设备及*** |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201915B (zh) * | 2010-03-22 | 2014-05-21 | ***通信集团公司 | 一种基于单点登录的终端认证方法和装置 |
CN103685282B (zh) * | 2013-12-18 | 2016-08-24 | 飞天诚信科技股份有限公司 | 一种基于单点登录的身份认证方法 |
WO2015200256A1 (en) * | 2014-06-27 | 2015-12-30 | Gerard Lin | Method of mutual verification between a client and a server |
CN105391734B (zh) * | 2015-12-10 | 2019-01-11 | 布比(北京)网络技术有限公司 | 一种安全登录***及方法、登录服务器和认证服务器 |
CN105610810B (zh) * | 2015-12-23 | 2020-08-07 | 北京奇虎科技有限公司 | 一种数据处理方法、客户端和服务器 |
CN108023874B (zh) * | 2017-11-15 | 2020-11-03 | 平安科技(深圳)有限公司 | 单点登录的校验装置、方法及计算机可读存储介质 |
-
2018
- 2018-07-26 CN CN201810832303.8A patent/CN109190341B/zh active Active
- 2018-09-11 WO PCT/CN2018/104966 patent/WO2020019420A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193027A (zh) * | 2006-11-28 | 2008-06-04 | 深圳市永兴元科技有限公司 | 一种整合异构***的单点登录***及方法 |
CN101277234A (zh) * | 2007-03-28 | 2008-10-01 | 华为技术有限公司 | 一种家庭网络及登录方法 |
CN102801713A (zh) * | 2012-07-23 | 2012-11-28 | 中国联合网络通信集团有限公司 | 网站登录方法、***和访问管理平台 |
CN102984169A (zh) * | 2012-12-11 | 2013-03-20 | 中广核工程有限公司 | 单点登录方法、设备及*** |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022027904A1 (zh) * | 2020-08-07 | 2022-02-10 | 郑州阿帕斯数云信息科技有限公司 | 服务器登录方法、***及装置 |
CN113765655A (zh) * | 2020-09-11 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 访问控制方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109190341B (zh) | 2024-03-15 |
CN109190341A (zh) | 2019-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020019420A1 (zh) | 一种登录管理***、方法、服务器及计算机可读存储介质 | |
US11563567B2 (en) | Secure shared key establishment for peer to peer communications | |
US20200204530A1 (en) | Self-encrypting key management system | |
US9917829B1 (en) | Method and apparatus for providing a conditional single sign on | |
US11153085B2 (en) | Secure distributed storage of encryption keys | |
US11240024B2 (en) | Cryptographic key management using key proxies and generational indexes | |
US20180150646A1 (en) | Management of encrypted data storage | |
US20110302398A1 (en) | Key protectors based on online keys | |
US20200106767A1 (en) | Trusted account revocation in federated identity management | |
US10462112B1 (en) | Secure distributed authentication data | |
US9942050B2 (en) | Method and apparatus for bulk authentication and load balancing of networked devices | |
EP3697053B1 (en) | Accessing encrypted user data at a multi-tenant hosted cloud service | |
WO2018234885A9 (en) | Systems and methods for data encryption for cloud services | |
US11019033B1 (en) | Trust domain secure enclaves in cloud infrastructure | |
US11956242B2 (en) | Distributed directory caching techniques for secure and efficient resource access | |
US11394698B2 (en) | Multi-party computation (MPC) based authorization | |
US11966460B2 (en) | Facilitating generation of credentials and verification thereof within a distributed object storage system | |
JP2023516130A (ja) | エンドポイント・インスタンスの間のセキュアなプライベート・キー分散 | |
US20190190710A1 (en) | Allocating security parameter index values using time-based one-time passwords | |
US20210281608A1 (en) | Separation of handshake and record protocol | |
US10972455B2 (en) | Secure authentication in TLS sessions | |
EP3886355A2 (en) | Decentralized management of data access and verification using data management hub | |
Rastogi et al. | Secured identity management system for preserving data privacy and transmission in cloud computing | |
CN109923525B (zh) | 用于执行安全备份操作的***和方法 | |
US11012245B1 (en) | Decentralized management of data access and verification using data management hub |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18927986 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 11/05/2021) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18927986 Country of ref document: EP Kind code of ref document: A1 |