Information processing device, method and program

The authentication system addresses the challenge of secure and user-friendly password resetting by validating clients and offering alternative methods, ensuring security and usability are maintained.

JP2025005926APending Publication Date: 2025-01-17CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023106366
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-06-28
Publication Date
2025-01-17

AI Technical Summary

Technical Problem

Existing methods for resetting authentication information either compromise security or increase user effort and reduce usability.

Method used

An authentication system that includes a reception means for accepting authentication information, a determining means to validate the client, and a requesting means to reset authentication information based on the determination, allowing on-the-spot password reset for legitimate clients and alternative methods for illegitimate clients.

Benefits of technology

Enables secure and user-friendly password resetting by providing on-the-spot password reset for legitimate clients while ensuring security through additional authentication methods for illegitimate clients.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025005926000001_ABST
    Figure 2025005926000001_ABST
Patent Text Reader

Abstract

To provide a password reset method that guarantees security while not degrading usability.SOLUTION: An information processing device includes acceptance means for accepting authentication information for logging into a service from a client, request means for requesting the client to reset authentication information based on the authentication information accepted by the acceptance means, and determination means for determining legitimacy of the client. The request means requests the resetting of the authentication information in a manner based on the determination made by the determination means.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an information processing device, an information processing method, and a program. [Background technology]

[0002] In recent years, it has become possible to use a variety of services by connecting to the Internet. Users who use these services are authenticated by information such as a user ID and password. In these services, the user may be required to change his or her password due to expiration of the password or changes to the password policy. Patent Document 1 discloses a technique in which, when a user logs in with an expired password, the user sets and transmits a new password. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Special Publication No. 2011-516952 Summary of the Invention [Problem to be solved by the invention]

[0004] There is a risk that security will not be guaranteed if the user can set new authentication information on the spot as in Patent Document 1. However, if the user is forced to reset the authentication information via another service such as email, the user's work will increase and usability will decrease.

[0005] In view of the above, the present invention provides a method for resetting authentication information that ensures security while not reducing usability. [Means for solving the problem]

[0006] In order to solve the above problems, the present invention comprises a receiving means for receiving authentication information for logging in to a service from a client, a requesting means for requesting the client to reset the authentication information based on the authentication information received by the receiving means, and a judging means for judging the legitimacy of the client, wherein the requesting means requests the resetting of the authentication information in a manner based on the judgment made by the judging means. Effect of the Invention

[0007] It is possible to reconfigure authentication information without reducing usability while ensuring security. [Brief description of the drawings]

[0008] [Figure 1] FIG. 1 is a diagram illustrating an example of the configuration of an authentication system according to a first embodiment. [Diagram 2] FIG. 2 is a diagram illustrating an example of the configuration of a computer device according to the first embodiment. [Diagram 3] 3 is a configuration example of components constituting software that operates on an authentication server in the first embodiment. [Figure 4] 4 is an example of a table of information stored in a user information storage unit in the first embodiment. [Diagram 5] 4 is a flowchart showing a user authentication process in the first embodiment. [Figure 6] 11 is a flowchart showing a process performed when a password reset request is received in the first embodiment. [Figure 7] 1 is a flowchart showing a password reset process in the first embodiment. [Figure 8] 3 is an example of a screen according to the first embodiment. [Figure 9] 13 is a configuration example of components constituting software that operates on an authentication server in embodiment 2. [Figure 10] 13 is an example of a table of information stored in a user information storage unit in the second embodiment. [Figure 11]13 is a flowchart showing a user authentication process in the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] Hereinafter, the present invention will be described in detail based on preferred embodiments thereof with reference to the accompanying drawings. Note that the configurations shown in the following embodiments are merely examples, and the present invention is not limited to the configurations shown in the drawings.

[0010] <Embodiment 1> 1 is a schematic diagram showing a configuration example of an authentication system (including multiple information processing devices) according to this embodiment. This authentication system includes an authentication server 102, a resource server 103, and a user terminal 104. In addition, each component is connected via a network 101.

[0011] The authentication server 102 is an authentication server that receives user information including authentication information such as a user ID and a password from the user terminal 104 and authenticates the user by comparing it with user information held by the authentication server 102. Here, information for verifying that the user is the user, such as a user ID and a password, is referred to as authentication information.

[0012] The resource server 103 is a resource server that holds user resources and provides services. Here, the resource refers to any data or process accessible via the Web. The resource server 103 is, for example, a Web server that holds files such as user image data and documents and provides the held files to the user based on the user's access. The resource server 103 may also be configured to acquire and store files such as images and documents held by the user terminal 104. It is assumed that the user terminal 104 cannot access resources from the resource server 103 unless user authentication is performed by the authentication server 102.

[0013] The user terminal 104 is a client that accesses the resource server, and is a device such as a smartphone, a PC, a printer, a camera, etc. The user terminal 104 accepts a request from a user, transmits the user's authentication information to the authentication server 102, and accesses the resource of the resource server 103 if the authentication is successful.

[0014] The above is an overview of the authentication system based on the configuration example shown in Fig. 1, but the present invention can be applied in a manner not limited to the configuration shown in Fig. 1. Information processing devices other than those shown here may be included. Also, for example, the authentication server 102 and the resource server 103 may be the same server.

[0015] Next, a hardware configuration of an information processing device according to an embodiment of the present invention will be described. Fig. 2 is a block diagram showing an example of the configuration of the authentication server 102. The hardware configurations of the resource server 103 and the user terminal 104 are similar to the hardware configuration of the authentication server 102 shown in Fig. 2. Note that the authentication server 102, the resource server 103, and the user terminal 104 do not necessarily have to have the same configuration.

[0016] The authentication server 102 includes a CPU 201, a RAM 202, a network interface 203, an external storage device 204, a display 205, a keyboard 206, and a mouse 207. These components are connected to each other by a bus 208.

[0017] A CPU (Central Processing Unit) 201 controls the entire apparatus according to a control program stored in a RAM 202 .

[0018] A RAM (Random Access Memory) 202 is a main storage device that stores programs executed by the CPU 201 and data such as documents and images, and is a volatile memory.

[0019] A network interface 203 establishes a connection to a network under the control of the CPU 201 to transmit and receive data and the like.

[0020] The external storage device 204 is an external storage device such as a magnetic disk or a flash memory that stores data to be processed and programs to be loaded into the RAM 202, and is a non-volatile memory.

[0021] A display 205 displays the processing results of the device.

[0022] The keyboard 206 functions as an input means for the user to give instructions and operate the device.

[0023] The mouse 207 is a pointing device that enables the user to give instructions and perform operations on the present apparatus. The user can use the keyboard 206 and the mouse 207 to perform operations such as inputting information to be displayed on the display 205.

[0024] The CPU 201, which executes the programs stored in the RAM 202, calls and uses some of the functions of the OS (Operating System) stored in the RAM 202 as necessary. Based on the computer programs stored in the RAM 202, the CPU 201 reads and writes the contents of data temporarily stored in the RAM 202, and reads and writes data from and to the external storage device 204. Based on the computer programs stored in the RAM 202, the CPU 201 can also transmit and receive data to and from other devices via the network interface 203. Based on the programs stored in the RAM 202, the CPU 201 receives input from the keyboard 206 and mouse 207, and displays on the display 205.

[0025] 3 is a block diagram showing an example of the configuration of software that operates on an information processing device that operates as the authentication server 102. Each component that configures the software is realized by the CPU 201 of the information processing device executing program codes in the RAM 202.

[0026] The communication unit 301 is a communication unit that communicates with other devices such as the user terminal 104 .

[0027] The authentication unit 302 authenticates the user by comparing the user authentication information received by the communication unit 301 with the user information held in the user information holding unit 308 .

[0028] The change determination unit 303 is a change determination unit that determines whether or not the user's password needs to be changed.

[0029] The safety determination unit 304 is a safety determination unit that determines the legitimacy of the user terminal 104, or the user terminal 104 and the user, that is, it determines the legitimacy of the client.

[0030] The password resetting unit 305 is a password resetting unit that requests the user terminal 104 to reset a password.

[0031] The additional authentication unit 306 is an additional authentication unit that requests additional authentication when a password is reset.

[0032] The control unit 307 is a control unit that controls the password reset method depending on the result of the judgment made by the safety judgment unit 304 .

[0033] The user information storage unit 308 is a user information storage unit that stores authentication information.

[0034] FIG. 4 is an example of a table of user information stored in the user information storage unit 308. In FIG.

[0035] Column 401 is a user ID field that stores the user ID of the user. A unique value is set for the user ID.

[0036] Column 402 is a password field that stores the user's password.

[0037] Column 403 is an email address field that stores the user's email address.

[0038] Column 404 is an IP address field that stores the IP address of the user terminal.

[0039] Column 405 is a browser field that stores the type of browser used by the user terminal to access the resource server 103 or the authentication server 102 .

[0040] Column 406 is a reset ID field that stores an ID for resetting a password.

[0041] Column 407 is a device token field that stores a device token issued to the user terminal 104 when the user logs in.

[0042] The user information stored in the user information storage unit 308 is registered when the user accesses the resource server 103 or the authentication server 102 for the first time, and is updated as necessary.

[0043] 5 is a flowchart showing a user authentication process in the authentication server 102. The following process may be executed by the resource server 103 and the authentication server 102 in cooperation with each other.

[0044] In S501, the communication unit 301 receives an authentication request from the user terminal 104. Here, the user registration request includes the user's authentication information (user ID, password), the IP address of the user terminal, the type of browser, and a device token. The device token is a value stored as a COOKIE in the browser of the user terminal 104.

[0045] In S502, the authentication unit 302 compares the user authentication information received in S501 with the user information held in the user information holding unit 308.

[0046] In S503, the authentication unit 302 judges whether the authentication information matches the user information as a result of checking in S502. If it is judged to be equal, the process proceeds to S504. If it is judged to be different, the process proceeds to S511.

[0047] In S504, the change determination unit 303 determines whether or not the user's password needs to be changed. For example, if the user's password does not comply with the password policy of the authentication system, it is determined that the user's password needs to be changed. For example, even if the password policy of the authentication system has been changed to "password length 10 characters or more", if the password received from the user is less than 10 characters, it is determined that the user's password needs to be changed. This occurs when the password policy of the authentication system is changed and the user's password set before does not comply with the changed password policy. In addition, it may be determined that the password needs to be changed even if a password expiration date is set and the expiration date has expired. If it is determined that the user's password needs to be changed, the process proceeds to S506. If it is determined that the user's password does not need to be changed, the process proceeds to S512.

[0048] In S506, the safety determination unit 304 determines the safety and validity of the user terminal 104 or the user, that is, the client. Here, if there is a high possibility that the terminal is the same as the terminal that logged in last time, it is determined to be valid. For example, a record having the user ID acquired in S501 is searched for in the user information storage unit 308, and if the value of the device token field 407 of the record matches the value of the device token acquired in S501, it is determined that the user terminal 104 is valid. As a means for determining the safety and validity of the user terminal 104, the IP address or browser type of the user terminal 104 that logged in last time may match the IP address or browser type of the user terminal 104 that logged in this time. In addition, the safety and validity may be determined comprehensively from multiple items such as the device token, IP address, and browser type, or the safety and validity may be determined by other methods.

[0049] In S506, the control unit 307 controls the process based on whether the user terminal 104 is authentic. That is, if it is determined that the user terminal 104 is authentic, the process proceeds to S507, and if it is determined that the user terminal 104 is not authentic, the process proceeds to S508.

[0050] In S507, the authentication server 102 executes a password reset process. The password reset process will be described in detail later.

[0051] In S508, the additional authentication unit 306 issues a reset ID. At the same time, the record having the user ID acquired in S501 in the user information storage unit 308 is updated. That is, the value of the reset ID field 406 is updated to the issued value.

[0052] In S509, the additional authentication unit 306 obtains the value of the email address field 403 from the record having the user ID obtained in S501 in the user information storage unit 308, and sends a password reset email to that email address. Although email is used as an example here, it is not limited to email as long as a message can be sent, and a password reset message may be sent using a short message using a phone number or other SNS, etc.

[0053] 8A is an example of the password reset email sent in S509. Here, a URL including the reset ID generated in S508 is generated and included in the password reset email (801).

[0054] In S510, the additional authentication unit 306 transmits screen information of a password reset email sending page to the user terminal 104. Fig. 8(b) is an example of the password reset email sending page transmitted in S510. This screen guides the user to the email application.

[0055] In S511, the communication unit 301 returns a message to the user terminal 104 indicating that the login has failed.

[0056] In S512, the communication unit 301 returns a message to the user terminal 104 indicating that the login was successful. At this time, the communication unit 301 issues a device token and notifies the user terminal 104. At the same time, the values ​​of the record having the user ID acquired in S501 in the user information storage unit 308 are updated. That is, the values ​​of the IP address field 404 and browser field 405 are updated to the values ​​acquired in S501, and the value of the device token field 407 is updated to the issued value. The user terminal 104 that has successfully logged in is now able to access user-specific resources in the resource server 103.

[0057] 6 is a flowchart showing the process performed when a password reset request is received by the authentication server 102. A password reset request is transmitted from the user terminal 104 to the authentication server 102 by the user selecting the link in the email transmitted in S509.

[0058] In S601, the communication unit 301 receives a password reset request from the user terminal 104. In the example of Fig. 8(a), the user terminal 104 selects a link 801, whereby the password reset request is transmitted from the user terminal 104 to the authentication server 102. Here, the password reset request includes a reset ID.

[0059] In S602, the password reset unit 305 determines whether the request received in S701 is correct. That is, if a record having the reset ID acquired in S601 exists in the user information storage unit 308, it is determined that the request is correct. If it is determined that the request is correct, the process proceeds to S602. If it is determined that the request is incorrect, this process ends.

[0060] In S603, the authentication server 102 executes a password reset process. The password reset process will be described in detail later.

[0061] 7 is a flowchart showing the password reset process in the authentication server 102. The process shown here corresponds to S507 and S603.

[0062] In S701, the password reset unit 305 transmits a password reset page to the user terminal 104. FIG. 8(c) is an example of the password reset page transmitted in S701. The user inputs a new password on the screen of FIG. 8(c) and selects the "Continue" button, whereby the new password is transmitted from the user terminal 104 to the authentication server 102. In the password reset in S507, only the input of the new password may be requested, and in the password reset in S603, the input of the user ID, old password, and new password may be requested. In this way, if it is determined that the client is a legitimate client, the password reset may be performed in a simple manner, and if it is not determined that the client is a legitimate client, the input of authentication information may be requested again to enhance security.

[0063] In S702, the password resetting unit 305 receives a new password from the user terminal 104.

[0064] In S703, the authentication unit 302 holds the new password received in S702. That is, the value of the password field 402 of the record having the user ID acquired in S501 in the user information holding unit 308 is updated to the received value.

[0065] In S704, the communication unit 301 returns a message to the user terminal indicating that the login was successful. At this time, the communication unit 301 issues a device token and notifies the user terminal 104, and causes the browser of the user terminal 104 to save the value of the device token as a COOKIE. At the same time, the value of the record having the user ID acquired in S501 in the user information storage unit 308 is updated. That is, the values ​​of the IP address field 404 and browser field 405 are updated to the values ​​acquired in S501, and the value of the device token field 407 is updated to the issued value.

[0066] With the above configuration, if a password reset is required when a client attempts to log in to a service, and if the client is determined to be legitimate, a password reset screen is provided on the spot, and the client can reset the password and log in. On the other hand, if the client is not determined to be legitimate, the password can be reset once via email. In other words, because the password reset method changes depending on whether the client is determined to be legitimate, it is possible to achieve password resetting without reducing usability while ensuring security.

[0067] In addition, in the above embodiment, if the client is not determined to be a legitimate client, an email including a link to a password reset page is sent, but this is not limiting. For example, if the client is not determined to be a legitimate client, the authentication server 102 may generate a one-time password and send the password by email or the like while providing a password reset page to the user terminal 104. The user may then input the one-time password on the provided password reset page to verify the legitimacy of the client and set a new password.

[0068] <Embodiment 2> In the first embodiment, an example is shown in which an email for resetting a password is sent if the security and validity of the user terminal cannot be confirmed. However, email may become unavailable due to a change in email address, communication failure, etc. In such a case, the user cannot receive the email for resetting the password, which causes a problem of being unable to reset the password. Therefore, in this embodiment, if it is determined that email is unavailable, a request to reset the password is made by another method. In the description of this embodiment, the same reference numerals are used for configurations and steps having the same functions as those in the first embodiment, and descriptions of those that are structurally and functionally the same will be omitted.

[0069] 9 is a block diagram showing an example of the configuration of software that operates on the authentication server 102 in this embodiment. Each component that configures the software is realized by the CPU 201 of the authentication server 102 executing program codes in the RAM 202.

[0070] Reference numeral 901 denotes a transmission decision unit that decides whether or not it is possible to send an e-mail to the user terminal 104 .

[0071] 10 shows an example of a table of user information in this embodiment stored in the user information storage unit 308. Secret questions and their answers are stored to verify the authenticity of the user.

[0072] 1001 is a secret question field that stores the user's secret question.

[0073] A secret question (answer) field 1002 stores an answer to a secret question.

[0074] 1003 is an email valid field that stores whether the user's email address is unavailable. If the email address can be used, TRUE is stored, and if it cannot be used, FALSE is stored. If no error occurs when sending email through the authentication system's processing, the authentication system sets the value of this field to TRUE. If an error occurs when sending email through the authentication system's processing, the authentication system sets the value of this field to FALSE.

[0075] 11 is a flowchart showing user authentication processing in the authentication server 102 in this embodiment. The basic configuration is the same as the flowchart in FIG.

[0076] In S1101, the transmission judgment unit 901 judges whether it is possible to send an email to the user terminal 104. That is, the value of the email valid field 1003 is obtained from the record having the user ID obtained in S501 in the user information storage unit 308, and if it is TRUE, it is judged that the email can be sent. If it is judged that the email can be sent, the process proceeds to S508. If it is judged that the email cannot be sent, the process proceeds to S1102.

[0077] In S1102, the additional authentication unit 306 transmits a secret question page to the user terminal 104. Here, the value of the secret question field 1001 is obtained from the record having the user ID obtained in S501 in the user information storage unit 308, and is included in the secret question page and transmitted. In S1103, the additional authentication unit 306 receives the answer to the secret question from the user terminal 104.

[0078] In S1104, the additional authentication unit 306 determines whether the answer to the secret question acquired in S1103 is the same as the value of the secret question (answer) field 1002 from the record having the user ID acquired in S501 in the user information storage unit 308. If it is determined that they are the same, the process proceeds to S1105. If it is determined that they are not the same, the process proceeds to S1102 or ends the process.

[0079] In S1105, the authentication server 102 executes the password reset process. The details of the password reset process have already been described in FIG.

[0080] As described above, this embodiment solves the problem of being unable to reset a password when email cannot be used. In this embodiment, an example is shown in which a password is requested to be reset using a secret question when an email address cannot be used. However, a password may be requested to be reset using a secret question regardless of whether an email address can be used. In addition, although a secret question is used here as an element for confirming legitimacy, other items such as a date of birth may be used as long as they can confirm the legitimacy of the user.

[0081] <Other embodiments> Although the embodiment has been described above in detail, the present invention can be embodied, for example, as a system, an apparatus, a method, a program, or a recording medium (storage medium), etc. Specifically, the present invention may be applied to a system composed of multiple devices (for example, a host computer, an interface device, an imaging device, a web application, etc.), or may be applied to an apparatus composed of a single device.

[0082] The object of the present invention is also achieved by the following: A recording medium (or storage medium) on which is recorded a program code (computer program) of software that realizes the functions of the above-mentioned embodiments is supplied to a system or device. The storage medium is, needless to say, a computer-readable storage medium. Then, a computer (or a CPU or MPU) of the system or device reads and executes the program code stored in the recording medium. In this case, the program code itself read from the recording medium realizes the functions of the above-mentioned embodiments, and the recording medium on which the program code is recorded constitutes the present invention.

[0083] The disclosure of this embodiment includes the following configurations, methods, and programs.

[0084] (Configuration 1) A receiving means for receiving authentication information for logging in to the service from a client; a requesting means for requesting the client to reset authentication information based on the authentication information received by the receiving means; A determination means for determining the legitimacy of the client, The information processing apparatus according to claim 1, wherein the request means requests resetting of authentication information by a method based on a determination made by the determination means.

[0085] (Configuration 2) 2. The information processing device according to configuration 1, wherein the authentication information is a password.

[0086] (Configuration 3) 3. The information processing device according to configuration 1 or 2, wherein the information processing device is a Web server.

[0087] (Configuration 4) The information processing device according to any one of configurations 1 to 3, wherein the request means, when it is determined that the client is legitimate based on the determination by the determination means, provides the client with a screen for resetting authentication information, and, when it is not determined that the client is legitimate, sends to the client a message including a link for accessing the screen for resetting authentication information.

[0088] (Configuration 5) 5. The information processing device according to configuration 4, wherein when input of new authentication information is accepted on a screen for resetting the authentication information, the information processing device logs the client in to the service.

[0089] (Configuration 6) The information processing device according to any one of configurations 1 to 5, characterized in that, when the judgment means cannot determine that the client is legitimate, the request means provides the client with a screen including a question and accepts an answer to the question.

[0090] (Configuration 7) 7. The information processing device according to any one of configurations 1 to 6, wherein the determination means determines the validity of a client based on at least one of an IP address, a type of browser, and a cookie.

[0091] (Configuration 8) 8. The information processing device according to any one of configurations 1 to 7, wherein the client is a terminal.

[0092] (Method 1) A control method executed by an information processing device, comprising: a reception step of receiving authentication information for logging in to the service from a client; a request step of requesting the client to reset authentication information based on the authentication information received in the receiving step; a determining step of determining the legitimacy of the client, A control method, wherein the request step requests resetting of authentication information by a method based on the determination made in the determination step.

[0093] (Program 10) A program for causing a computer to function as the information processing device according to any one of configurations 1 to 8.

Claims

1. A receiving means for receiving authentication information for logging in to the service from a client; a requesting means for requesting the client to reset authentication information based on the authentication information received by the receiving means; A determination means for determining the legitimacy of the client, The information processing apparatus according to claim 1, wherein the request means requests resetting of authentication information by a method based on a determination made by the determination means.

2. 2. The information processing apparatus according to claim 1, wherein the authentication information is a password.

3. 2. The information processing apparatus according to claim 1, wherein the information processing apparatus is a Web server.

4. The information processing device according to claim 1, characterized in that when the request means determines that the client is legitimate based on the judgment by the judgment means, it provides the client with a screen for resetting authentication information, and when it cannot determine that the client is legitimate, it sends to the client a message including a link for accessing the screen for resetting authentication information.

5. 5. The information processing apparatus according to claim 4, wherein when new authentication information is input on a screen for resetting the authentication information, the information processing apparatus logs the client into the service.

6. 2. The information processing apparatus according to claim 1, wherein said requesting means, when said determining means cannot determine that the client is valid, provides the client with a screen including a question and accepts a response to the question.

7. 2. The information processing apparatus according to claim 1, wherein said determining means determines the validity of a client based on at least one of an IP address, a type of browser, and a cookie.

8. 2. The information processing apparatus according to claim 1, wherein the client is a terminal.

9. A control method executed by an information processing device, comprising: a reception step of receiving authentication information for logging in to the service from a client; a request step of requesting the client to reset authentication information based on the authentication information received in the receiving step; a determining step of determining the legitimacy of the client, A control method, wherein the request step requests resetting of authentication information by a method based on the determination made in the determination step.

10. A program for causing a computer to function as the information processing device according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Methods for operating a server, the server itself, and computer program products for operating the server, as well as the handling of expired passwords in computer programs (handling of expired passwords).

    JP2011516952A