Authentication system and control method

The authentication system for image forming devices addresses the challenge of user authentication and privilege management by allowing the image forming apparatus to verify security information and authenticate users, ensuring secure and effective access to device functions.

JP7660448B2Active Publication Date: 2025-04-11SHARP KK
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2021108009
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-06-29
Publication Date
2025-04-11
Estimated Expiration
2041-06-29

AI Technical Summary

Technical Problem

Existing technologies for image forming devices do not adequately address user authentication when used as terminal devices, and they lack a method to manage user privileges and usage history effectively.

Method used

An authentication system that includes an image forming apparatus capable of acquiring a user's email address and security information from a terminal device, verifying the security information at a specified destination, and authenticating the user upon successful verification.

Benefits of technology

The system enables secure user authentication and effective management of user privileges and usage history, ensuring that only authenticated users can access and utilize the image forming device's functions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007660448000001
    Figure 0007660448000001
  • Figure 0007660448000002
    Figure 0007660448000002
  • Figure 0007660448000003
    Figure 0007660448000003
Patent Text Reader

Abstract

To provide an authentication system and so on for carrying out authentication of a user when security information is correctly verified.SOLUTION: The present invention is directed to an authentication system in which an image forming apparatus authenticates a user. The system has an acquiring unit for acquiring, from a terminal device, a mail address of the user and security information, a verification unit for verifying the security information at a verification destination specified based on the mail address, and an authentication unit for authenticating the user if the security information is correctly verified.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to an information processing device and the like. [Background technology]

[0002] Image forming apparatuses that output images by electrophotography, such as multifunction peripherals and printers, have been used for some time now. In addition, technology has been proposed that associates image forming apparatuses with services (e.g., web services and cloud services) provided through a network.

[0003] For example, a technique has been proposed for linking an access token acquired from a web service server with information on an IC card used to authenticate a user who uses an image forming apparatus (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2016-126462 A Summary of the Invention [Problem to be solved by the invention]

[0005] Recently, a technology for operating an image forming apparatus using a terminal device such as a smartphone has been widely used. Here, the technology described in Patent Document 1 requires a device such as an IC card reader for reading an IC card, and does not take into consideration the case where an image forming apparatus is used by a terminal device alone.

[0006] Furthermore, an apparatus such as an image forming apparatus can determine that a user using a terminal apparatus is a user authenticated by an apparatus (e.g., a server apparatus) that provides web services, etc., by receiving security information such as an access token from an apparatus such as a terminal apparatus. However, when managing the authority held by a user or storing information on the usage history for each user, a means for identifying a user is required.

[0007] In view of the above-mentioned problems, the present disclosure has an object to provide an authentication system etc. that authenticates a user when security information is correctly verified. [Means for solving the problem]

[0008] In order to solve the above-mentioned problems, the authentication system disclosed herein is an authentication system in which an image forming device authenticates a user, and is characterized in having an acquisition unit that acquires the user's email address and security information from a terminal device, a verification unit that verifies the security information at a verification destination identified from the email address, and an authentication unit that authenticates the user if the security information can be correctly verified.

[0009] The information processing device according to the present disclosure is characterized by comprising an acquisition unit that acquires a user's email address and security information, a security information transmission unit that transmits the security information to a verification destination server device corresponding to the email address, a result receiving unit that receives a verification result from the verification destination server device, and an authentication result transmission unit that authenticates the user and transmits the authentication result to an image forming device if the verification result is correct.

[0010] The image forming apparatus according to the present disclosure is characterized by comprising an acquisition unit that acquires a user's email address and security information from a terminal device, a transmission unit that transmits the email address and the security information to a first server device that is a verification destination, a reception unit that receives an authentication result of the user based on a result of the first server device verifying the security information at a second server device that is a verification destination identified from the email address, and an authentication unit that authenticates the user if the authentication result is correct.

[0011] The control method of the present disclosure is a control method for an authentication system in which an image forming device authenticates a user, and is characterized by including an acquisition step of acquiring the user's email address and security information from a terminal device, a verification step of verifying the security information at a verification destination identified from the email address, and an authentication step of authenticating the user if the security information can be correctly verified. Effect of the Invention

[0012] According to the present disclosure, it is possible to provide an authentication system or the like that authenticates a user if security information is correctly verified. [Brief description of the drawings]

[0013] [Figure 1] FIG. 1 is a diagram for explaining the overall configuration of a system in a first embodiment. [Diagram 2] FIG. 2 is a diagram for explaining the functional configuration of a terminal device in the first embodiment. [Diagram 3] 2 is a diagram for explaining the functional configuration of an authentication server in the first embodiment. FIG. [Figure 4] 4 is a diagram for explaining an example of a data structure of user information managed by an authentication server in the first embodiment; FIG. [Diagram 5] FIG. 2 is a diagram for explaining the functional configuration of the image forming apparatus according to the first embodiment. [Figure 6]4 is a diagram for explaining an example of a data structure of session information in the first embodiment; FIG. [Figure 7] FIG. 2 is a diagram for explaining a functional configuration of an IdP server in the first embodiment. [Figure 8] 4 is a diagram for explaining an example of a data structure of user information managed by an IdP server in the first embodiment. FIG. [Figure 9] FIG. 2 is a sequence diagram for explaining the flow of processing of the system in the first embodiment. [Figure 10] FIG. 4 is a sequence diagram illustrating a flow of authority confirmation in the first embodiment. [Figure 11] 4 is a flowchart illustrating a flow of a process executed by a terminal device in the first embodiment. FIG. [Figure 12] FIG. 2 is a flowchart illustrating a flow of a process executed by the image forming apparatus in the first embodiment. [Figure 13] FIG. 11 is a flowchart illustrating the flow of a session ID issuing process in the first embodiment. [Figure 14] 4 is a flowchart illustrating a process performed by an authentication server in the first embodiment. FIG. [Figure 15] FIG. 4 is a flowchart illustrating the flow of authentication processing in the first embodiment. [Figure 16] FIG. 4 is a diagram illustrating an operation example in the first embodiment. [Figure 17] FIG. 4 is a diagram illustrating an operation example in the first embodiment. [Figure 18] FIG. 11 is a diagram for explaining the overall configuration of a system in a second embodiment. [Figure 19] FIG. 11 is a diagram illustrating a functional configuration of a relay device in a second embodiment. [Figure 20] FIG. 11 is a sequence diagram illustrating a process flow of the system in the second embodiment. [Figure 21] 13 is a diagram for explaining an example of a data structure of user information managed by an authentication server in the third embodiment. FIG. [Figure 22]FIG. 13 is a flowchart illustrating the flow of authentication processing in the third embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0014] Hereinafter, an embodiment for carrying out the present disclosure will be described with reference to the drawings. Note that the following embodiment is an example for explaining the present disclosure, and the technical scope of the invention described in the claims is not limited to the following description.

[0015] [1. First embodiment] [1.1 Overall structure] The overall configuration of a system 1 in this embodiment will be described with reference to Fig. 1. As shown in Fig. 1, the system 1 includes a terminal device 10, an image forming device 20, an authentication server 30, and an IdP server 40.

[0016] The terminal device 10, the image forming device 20, the authentication server 30, and the IdP server 40 are connected via a network. For example, as shown in FIG. 1, the terminal device 10, the image forming device 20, and the authentication server 30 are connected via a first network, NW1. Each device connected to the NW1 is connected to the IdP server 40 via a second network, NW2. Here, the NW1 is, for example, a LAN (Local Area Network) that is a network that connects devices in a specific facility to each other. The NW2 is an external network such as the Internet. Note that the method of connecting the devices constituting the system 1 to each other is not limited to the method shown in FIG. 1. For example, each device constituting the system 1 may be connected to the Internet.

[0017] The terminal device 10 is a device used by a user. For example, the terminal device 10 of the present embodiment is realized by installing an application in a general terminal device. The terminal device 10 is an information processing device such as a smartphone, a smart watch, a tablet, or a PC (Personal Computer).

[0018] The image forming apparatus 20 is an apparatus capable of forming (printing) an image on a recording medium such as recording paper. For example, the image forming apparatus 20 is a digital multifunction peripheral (MFP; Multi-Function Printer / Peripheral) having a copy function, a print function, a scan function, an email transmission function, and the like.

[0019] The authentication server 30 is an information processing device (first server device) that authenticates a user who uses the image forming device 20. The IdP server 40 is an information processing device (IdP; Identity Provider) (second server device) that provides a service for authenticating a user who uses a web service or a cloud service, and a service for managing information of the user. The IdP server 40 is, for example, a device that exists on the cloud (on the Internet).

[0020] The IdP server 40 obtains information necessary for user authentication from another device (for example, the terminal device 10) and authenticates the user. If the IdP server 40 can authenticate the user, it issues security information such as an access token. In other words, the security information (for example, the access token) is information indicating that the user has been authenticated. The IdP server 40 transmits information about the authenticated user and the access token to the device that transmitted the information necessary for user authentication. The device that transmitted the information necessary for user authentication can determine that the user has been authenticated by receiving the access token. In this embodiment, the security information is described as an access token.

[0021] The authentication server 30 and the IdP server 40 are, for example, information processing devices such as computers, such as PCs and servers. The authentication server 30 and the IdP server 40 may each be configured with a plurality of information processing devices, or may be a virtual server realized on any information processing device. In addition, a plurality of IdP servers 40 (40a, 40b) may be connected to the network NW2 for each service. For example, an IdP server 40a providing a service for authenticating a user for using a cloud service of company A and an IdP server 40b providing a service for authenticating a user for using a cloud service of company B may be connected to the network NW2.

[0022] [1.2 Functional configuration] [1.2.1 Terminal Equipment] The functional configuration of the terminal device 10 will be described with reference to Fig. 2. As shown in Fig. 2, the terminal device 10 includes a control unit 100, a display unit 140, an operation unit 150, a storage unit 160, and a communication unit 190.

[0023] The control unit 100 controls the entire terminal device 10. The control unit 100 realizes various functions by reading and executing various programs stored in the storage unit 160, and is configured with one or more arithmetic units (for example, CPUs (Central Processing Units)).

[0024] The display unit 140 displays various types of information. The display unit 140 is configured with a display device such as an LCD (Liquid crystal display), an organic EL (electro-luminescence) display, or a micro LED (Light Emitting Diode) display.

[0025] The operation unit 150 accepts operations by a user who uses the terminal device 10. The operation unit 150 is configured with an input device such as a touch sensor. The touch sensor may detect an input using a general detection method such as a resistive film method, an infrared method, an electromagnetic induction method, or a capacitive method. The terminal device 10 may be equipped with a touch panel in which the display unit 140 and the operation unit 150 are integrally formed.

[0026] The storage unit 160 stores various programs and various data necessary for the operation of the terminal device 10. The storage unit 160 is configured by a storage device such as a solid state drive (SSD) that is a semiconductor memory or a hard disk drive (HDD), for example.

[0027] The storage unit 160 stores an operation application 162. The operation application 162 is an application for operating the image forming apparatus 20. For example, the operation application 162 causes the control unit 100 to realize a function of transmitting image data and information indicating the content of a process to be executed to the image forming apparatus 20, and a function of managing the image forming apparatus 20. Note that the image data is data indicating an image formed by the image forming apparatus 20. When transmitting image data, the operation application 162 may transmit information on settings (print settings) for forming an image based on the image data to the image forming apparatus 20 together with the image data.

[0028] Furthermore, the operation application 162 in this embodiment allows the control unit 100 to realize a function of transmitting and receiving information used for authenticating a user as a function for utilizing a service of authenticating a user provided by the IdP server 40. For example, the operation application 162 provides the control unit 100 with a function of displaying on the display unit 140 a screen for allowing the user to input information (e.g., an account name and a password) required for user authentication by the IdP server 40, and a function of receiving an authentication result from the IdP server 40. That is, the operation application 162 allows the control unit 100 to realize an interface of the IdP server 40. With this function, the user can use a service of authenticating a user provided by the IdP server 40 via the operation application 162.

[0029] The communication unit 190 communicates with an external device such as the image forming apparatus 20. The communication unit 190 is configured by, for example, a network interface card (NIC) used in a wired / wireless LAN, or a communication module connectable to a Long Term Evolution (LTE) / LTE-Advanced (LTE-A) / License-Assisted Access using LTE (LAA) / 5G line.

[0030] [1.2.2 Authentication Server] Next, a description will be given of the functional configuration of the authentication server 30. The authentication server 30 in this embodiment manages (stores) information (user information) about a user who uses the image forming device 20 and functions of the image forming device 20 that the user has the authority to use. The authentication server 30 also authenticates a user based on information (transmission information) transmitted from an external device such as the IdP server 40.

[0031] As shown in FIG. 3, the authentication server 30 in this embodiment includes a control unit 300, a storage unit 360, and a communication unit 390.

[0032] The control unit 300 controls the entire authentication server 30. The control unit 300 realizes various functions by reading and executing various programs stored in the storage unit 360, and is composed of one or more arithmetic units (e.g., CPUs).

[0033] The control unit 300 executes the programs stored in the storage unit 360 to function as an authentication unit 302 , an authorization unit 304 , and a history storage unit 306 .

[0034] The authentication unit 302 authenticates a user who uses the image forming apparatus 20. The process executed by the authentication unit 302 will be described later.

[0035] The authorization unit 304 grants, to a user who uses the image forming apparatus 20, authority to use functions and resources provided in the image forming apparatus 20. The process executed by the authorization unit 304 will be described later.

[0036] The history storage unit 306 stores information (history information) when the image forming apparatus 20 is used in the history information storage area 364. The history information includes, for example, a user ID for identifying a user who used the image forming apparatus 20, functions used by the user, settings at the time of image formation, the number of sheets of paper on which the image was formed (number of prints), the time when the image formation was performed, and other information.

[0037] The storage unit 360 stores various programs and various data necessary for the operation of the authentication server 30. The storage unit 360 is configured by a storage device such as an SSD, which is a semiconductor memory, or an HDD, for example.

[0038] The storage unit 360 secures, as storage areas, a user information storage area 362 and a history information storage area 364 for storing history information.

[0039] The user information storage area 362 stores information about a user who uses the image forming apparatus 20 (user information, account information of a user who uses the image forming apparatus 20). For example, as shown in Fig. 4, the user information stored in the user information storage area 362 stores a user ID (e.g., "xxx") for identifying a user who uses the image forming apparatus 20, a password (e.g., "yyy") used to authenticate the user, an identifier (e.g., "100") for identifying a user who uses the image forming apparatus 20 or history information of the user, an E-Mail address (e.g., "sb1@example.com") of the user, an authority (e.g., "scan, copy") authorized to the user, and a verification destination (e.g., "Company A, https: / / a-sha.com / verifytoken") which is information about a server device or service to which a request is made to verify whether an access token issued by the IdP server 40 is correct.

[0040] Here, the user ID, email address, and identifier included in the user information stored in the user information storage area 362 are identification information used to identify a user who uses the image forming apparatus 20. The identification information is used by the authentication server 30 and the image forming apparatus 20 to identify the user who uses the image forming apparatus 20.

[0041] The user ID (first identification information) in this embodiment is, for example, a character string that can be set by the user. The first identification information may be information that can identify the user in the image forming apparatus 20 or the authentication server 30, and may be information such as an account name or a user name.

[0042] 4, the user information managed by the authentication server 30 includes an e-mail address. In this embodiment, the e-mail address is information associated with one piece of user information stored in the user information storage area 362. That is, in this embodiment, the e-mail address is information (second identification information) that can be used to identify the user of the image forming apparatus 20.

[0043] Furthermore, the second identification information is information managed in the IdP server 40 as information related to the user, and is information transmitted from the IdP server 40 to another device. For example, an e-mail address is transmitted together with an access token when a user is authenticated by the IdP server 40 in a user authentication service provided by the IdP server 40. A device that receives an e-mail address and an access token from the IdP server 40 can determine that a user related to the e-mail address received from the IdP server 40 has been authenticated by the IdP server 40. Here, the e-mail address is information stored in the user information in the authentication server 30, and is also information transmitted from the IdP server 40. Therefore, the e-mail address is information that can be used by the authentication server 30 and the IdP server 40, and is information that is mutually compatible. Furthermore, since the email address is information capable of uniquely identifying the user of the image forming apparatus 20, the authentication unit 302 can associate the email address sent from the IdP server 40 with the user of the image forming apparatus 20.

[0044] On the other hand, the user ID (account name) and password are system-specific (service-specific) information that is stored in the authentication server 30 and the IdP server 40, respectively, and therefore are not compatible with each other. Also, in this embodiment, the authentication server 30 stores the identifier, but the IdP server 40 does not store it, and it is unclear whether the identifier exists in a system that manages users other than the authentication server 30, and even if it does exist, there is no compatibility. Also, since the access token is a random character string issued by the IdP server 40, the authentication server 30 cannot store the access token in advance, and there is no compatibility.

[0045] In addition, the second identification information (mutually compatible information) may be information other than an e-mail address as long as it is information that is managed and transmitted by the IdP server 40 and is stored as user information in the authentication server 30.

[0046] The identifier (third identification information) is, for example, information that is automatically assigned by the authentication server 30 when a user is registered in the authentication server 30. The identifier may be information such as a sequential number, a character string configured according to a predetermined rule, or a hash value corresponding to user information.

[0047] The authority is information indicating functions (available functions) of the image forming apparatus 20 that the user has the authority to use, among the functions of the image forming apparatus 20. In this embodiment, the following information is stored in the authority of the user information. "Scan" indicates that you have permission to use the scan function "Copy" indicates that you have permission to use the copy function - "Print" to show that you have permission to use the print function

[0048] Note that the user information may store information indicating authority other than the above-mentioned authority. For example, the user information may store information indicating that there is an area available in the storage unit 360 (the user has authority to use the resources of the storage unit 360).

[0049] The verification destination is a verification destination trusted by the authentication server 30, and is information indicating the verification destination of the access token. As the verification destination, attributes such as the address or name of a verification server device (e.g., the IdP server 40), the address of an end point of an API (Application Programming Interface) that verifies the access token, and the service name of a service that verifies the access token are stored. In this embodiment, a verification request for the access token (access token verification request) is sent to the verification destination, whereby the access token is verified by the verification destination, and the verification result of the access token is sent from the verification destination.

[0050] The user information stored in the user information storage area 362 may include information other than the information shown in FIG.

[0051] The communication unit 390 communicates with external devices such as the image forming apparatus 20 and the IdP server 40. The communication unit 390 is configured by, for example, a communication device or a communication module such as a NIC used in a wired / wireless LAN.

[0052] [1.2.3 Image forming device] The functional configuration of the image forming apparatus 20 will be described with reference to Fig. 5. As shown in Fig. 5, the image forming apparatus 20 includes a control unit 200, an image input unit 220, an image forming unit 230, a display unit 240, an operation unit 250, a storage unit 260, and a communication unit 290.

[0053] The control unit 200 controls the entire image forming apparatus 20. The control unit 200 realizes various functions by reading and executing various programs stored in the storage unit 260, and is configured with one or more arithmetic units (e.g., CPUs).

[0054] The control unit 200 executes a program stored in the storage unit 260 to function as an image processing unit 202. The image processing unit 202 performs various image-related processes. For example, the image processing unit 202 performs sharpening and tone conversion processes on an image read by the image input unit 220.

[0055] The image input unit 220 inputs image data to the image forming apparatus 20. For example, the image input unit 220 is configured with a scanning device capable of reading an image and generating image data. The scanning device converts an image into an electrical signal using an image sensor such as a CCD (Charge Coupled Device) or a CIS (Contact Image Sensor), and generates digital data by quantizing and encoding the electrical signal.

[0056] The image input unit 220 may be configured with an interface (terminal) for reading image data stored in a storage medium such as a USB (Universal Serial Bus) memory or an SD card. Image data may also be input from another device via a communication unit 290 that connects to the other device.

[0057] The image forming unit 230 forms (prints) an image on a recording medium such as a recording paper, etc. The image forming unit 230 is configured, for example, by a laser printer or the like that utilizes an electrophotographic method.

[0058] The display unit 240 displays various information. The display unit 240 is configured with a display device such as an LCD, an organic EL panel, or a micro LED display.

[0059] The operation unit 250 accepts operations by a user who uses the image forming apparatus 20. The operation unit 250 is configured with an input device such as a touch sensor. The touch sensor may detect an input using a general detection method such as a resistive film method, an infrared method, an electromagnetic induction method, or a capacitance method. The image forming apparatus 20 may be equipped with a touch panel in which the display unit 240 and the operation unit 250 are integrally formed.

[0060] The storage unit 260 stores various programs and various data necessary for the operation of the image forming apparatus 20. The storage unit 260 is configured by a storage device such as an SSD, which is a semiconductor memory, or an HDD, for example.

[0061] The storage unit 260 secures an image data storage area 262 and a session information storage area 264 as storage areas.

[0062] The image data storage area 262 stores image data. Note that the image data stored in the image data storage area 262 may be associated with setting information used when an image based on the image data is formed (printed).

[0063] The session information storage area 264 stores information (session information) used to manage sessions between the image forming apparatus 20 and the terminal apparatus 10. For example, as shown in Fig. 6, the session information stores a user ID (e.g., "xxx"), which is identification information, and a session ID (e.g., "session0001") for identifying communication (session) with the user.

[0064] The communication unit 290 communicates with external devices such as the terminal device 10 and the authentication server 30. The communication unit 290 is configured by, for example, a communication device or a communication module such as a NIC used in a wired / wireless LAN.

[0065] [1.2.4 IdP Server] Next, a description will be given of the functional configuration of the IdP server 40. The IdP server 40 in this embodiment is configured to include a control unit 400, a storage unit 460, and a communication unit 490, as shown in FIG.

[0066] The control unit 400 controls the entire IdP server 40. The control unit 400 realizes various functions by reading and executing various programs stored in the storage unit 460, and is configured with one or more arithmetic units (for example, CPUs).

[0067] The control unit 400 executes a program stored in the storage unit 460 to function as an authentication unit 402 and a verification unit 404 .

[0068] The authentication unit 402 receives information used to authenticate a user from an external device, and provides a service of authenticating the user based on the information. For example, the authentication unit 402 receives information used to authenticate a user via the communication unit 490, and determines whether or not the user who transmitted the information is a legitimate user based on the received information.

[0069] Here, when the authentication unit 402 determines that the user who transmitted the information used for user authentication is a valid user, it authenticates the user and issues an access token. The access token is, for example, a character string derived using a predetermined method or formula, or a character string configured according to a predetermined format. Furthermore, the authentication unit 402 transmits the issued access token and attribute information on the authenticated user (for example, the user's email address) as transmission information to the device that transmitted the information used for user authentication.

[0070] The verification unit 404 receives an access token from an external device via the communication unit 490, verifies (determines) whether or not the access token is a valid access token, and transmits the result of the verification to the external device.

[0071] For example, when an access token received from an external device is a character string that can be derived by a method or formula used by the authentication unit 402, the verification unit 404 determines that the access token is an access token issued by the authentication unit 402. Note that when an access token received from an external device is a character string configured according to a predetermined format, the verification unit 404 may determine that the access token is an access token issued by the authentication unit 402. When the verification unit 404 determines that the access token received from the external device is an access token issued by the authentication unit 402, it determines that the access token received from the external device is correct.

[0072] The storage unit 460 stores various programs and various data necessary for the operation of the IdP server 40. The storage unit 460 is configured by a storage device such as an SSD, which is a semiconductor memory, or an HDD, for example.

[0073] The storage unit 460 secures a user information storage area 462 as a storage area. The user information storage area 462 stores information (user information) about a user (a user to be authenticated) who uses a service provided by the IdP server 40. For example, as shown in FIG. 8, the user information stored in the user information storage area 462 stores an account name (e.g., “sb1”) for identifying a user who uses a service provided by the IdP server 40, a password (e.g., “aaaa1234”) used to authenticate the user, an E-mail address (e.g., “sb1@a-sha.com, sb1@example.com”) that is attribute information of the user, and an access token (e.g., “!d#)O()$#(Uj)DUIDJF+JDFS`”) issued to the user.

[0074] Among the user information stored in the IdP server 40, the account name and password are information used in the IdP server 40 to authenticate a user. Note that information for identifying a user who uses a service provided by the IdP server 40 may be information other than the account name, and may be information such as an identifier (for example, a sequential number or a character string configured according to a predetermined rule) or a user name. In addition, the user information stored in the user information storage area 462 may store a plurality of e-mail addresses. In addition, the user information stored in the user information storage area 462 may store information other than the information shown in FIG. 8.

[0075] The communication unit 490 communicates with external devices such as the authentication server 30. The communication unit 490 is configured by, for example, a communication device such as a NIC used in a wired / wireless LAN or a communication module.

[0076] [1.3 Processing flow] [1.3.1 Overall system flow] Next, a process flow in the system 1 in this embodiment will be described with reference to Fig. 9. Note that the description will be given on the assumption that the control unit 100 of the terminal device 10 has a predetermined function realized by the operation application 162. Also, the description will be given on the assumption that the information transmitted together with the access token when the user is authenticated by the IdP server 40 is an e-mail address.

[0077] First, the control unit 100 of the terminal device 10 acquires an account name and a password, which are information used for user authentication by the IdP server 40, and transmits them to the IdP server 40 (S1000). For example, the control unit 100 displays a screen on the display unit 140 for prompting the user to input the account name and password. Then, when the user instructs the completion of input, the control unit 100 acquires the account name and password input by the user, and transmits the acquired account name and password to the IdP server 40 via the communication unit 190.

[0078] Next, the control unit 400 (authentication unit 402) of the IdP server 40 authenticates the user using the received account name and password, and issues an access token if it is determined that the user is a valid user (S1002). For example, when the authentication unit 402 can acquire user information, in which the user ID and password received from the terminal device 10 are stored, from the user information storage area 462, it determines that the user corresponding to the acquired user information is a valid user, and authenticates the user.

[0079] Next, the control unit 400 (authentication unit 402) transmits transmission information including the E-mail address, which is attribute information of the user authenticated in S1002, and the access token issued in S1002, to the terminal device 10 (S1004). Note that the authentication unit 402 may obtain the E-mail address information of the authenticated user by reading out the user information obtained in S1002.

[0080] Next, the control unit 100 of the terminal device 10 transmits the e-mail address (user attribute information) and the access token received in S1004 to the image forming apparatus 20 via the communication unit 190 (S1006). In this manner, the control unit 100 requests the image forming apparatus 20 to authenticate based on the information received from the IdP server 40. The image forming apparatus 20 can obtain the transmission information transmitted from the IdP server 40.

[0081] Next, the control unit 200 of the image forming apparatus 20 transmits the e-mail address (user attribute information) and the access token received in S1006 to the authentication server 30 via the communication unit 290 (S1008). In this way, the image forming apparatus 20 to which the authentication request has been made from the terminal apparatus 10 transmits the transmission information transmitted from the IdP server 40 to the authentication server 30. The authentication server 30 acquires (receives) from the image forming apparatus 20 the transmission information transmitted from the IdP server 40 and acquired by the image forming apparatus 20.

[0082] Next, the control unit 300 (authentication unit 302) of the authentication server 30 acquires the user information in which the received e-mail address is stored from the user information storage area 362, and identifies the user ID and the verification destination (S1009).

[0083] Here, the e-mail address is associated with one piece of user information among the user information stored in the user information storage area 362. Therefore, if the authentication unit 302 can read out user information including the same information as the e-mail address received in S1008 from the user information storage area 362, it can determine that the user corresponding to the user information is a user (managed user) managed as a user who uses the image forming apparatus 20. In addition, by acquiring the user ID and information on the verification destination stored in the read out user information, it is possible to identify the user ID and the verification destination.

[0084] In this way, the authentication unit 302 checks whether user information containing the e-mail address received from the terminal device 10 that made the authentication request is stored, thereby determining whether the user is an administrative user managed by the authentication server 30. In other words, if the e-mail address exists in a user information database such as the user information storage area 362, the authentication unit 302 considers the user for whom the authentication request has been made to be an administrative user. On the other hand, if the e-mail address does not exist in the user information storage area 362, the authentication unit 302 does not consider the user for whom the authentication request has been made to be an administrative user.

[0085] Next, in order to determine whether the access token is correct, the control unit 300 (authentication unit 302) of the authentication server 30 makes a verification request by transmitting the access token to the verification destination acquired in S1009 via the communication unit 390. Here, when the verification destination is the IdP server 40, the authentication unit 302 transmits the access token to the IdP server 40 (S1010).

[0086] The control unit 400 (verification unit 404) of the IdP server 40 verifies whether the access token received in S1010 is correct (S1012). Then, the control unit 400 (verification unit 404) transmits the verification result via the communication unit 490 to the authentication server 30 that transmitted the access token in S1010 (S1014).

[0087] The control unit 300 (authentication unit 302) of the authentication server 30 receives the verification result from the verification destination (for example, the IdP server 40) and authenticates the user based on the verification result (S1016). For example, when the authentication unit 302 receives the verification result from the IdP server 40 indicating that the access token is correct, it authenticates the user corresponding to the user ID identified in S1009. In this way, the authentication unit 302 can authenticate the user when the access token (security information) transmitted from the IdP server 40 can be correctly verified. In other words, the authentication server 30 authenticates the user who uses the image forming apparatus 20 by using the authentication result by the IdP server 40, which is another apparatus.

[0088] Next, the control unit 300 (authentication unit 302) transmits the identification information of the user authenticated in S1016 to the image forming apparatus 20 that transmitted the e-mail address (user attribute information) and the access token via the communication unit 390 (S1018). Note that in this embodiment, the identification information of the authenticated user will be described as a user ID (first identification information). Furthermore, by receiving identification information such as the user ID from the authentication server 30, the image forming apparatus 20 can grasp that the user who uses the image forming apparatus 20 has been authenticated by the authentication server 30.

[0089] Next, the control unit 200 of the image forming apparatus 20 issues a session ID and stores session information including the issued session ID and the user ID, which is the identification information received in S1018, in the session information storage area 264. Then, the control unit 200 of the image forming apparatus 20 transmits the issued session ID to the terminal apparatus 10 that transmitted the E-mail address and the access token in S1006 via the communication unit 290 (S1020). The session ID is information (communication identification information) used by the image forming apparatus 20 to identify the terminal apparatus 10, which is the communication partner, in the communication between the terminal apparatus 10 and the image forming apparatus 20. In addition, by the communication between the terminal apparatus 10 and the image forming apparatus 20 using the session ID, the image forming apparatus 20 can know that the terminal apparatus 10, which is the communication partner, is a user (authenticated user) who has been permitted to use the image forming apparatus 20.

[0090] Next, the control unit 100 of the terminal device 10 transmits the image data and the session ID received in S1020 to the image forming apparatus 20 via the communication unit 190 (S1022). For example, when a user selects an image and issues an instruction to execute printing, the control unit 100 transmits the image data of the selected image together with the session ID to the image forming apparatus 20.

[0091] Next, the image forming apparatus 20 and the authentication server 30 execute an authority confirmation process to confirm the authority of the user who transmitted the image data (S1024). The flow of the authority confirmation process will be described with reference to FIG.

[0092] First, the control unit 200 of the image forming apparatus 20 transmits a user ID to the authentication server 30 (S1100). For example, the control unit 200 of the image forming apparatus 20 acquires session information in which the session ID received in S1022 is stored from the session information storage area 264. Furthermore, the control unit 200 transmits the user ID included in the acquired session information to the authentication server 30 via the communication unit 290.

[0093] The control unit 300 (authorization unit 304) of the authentication server 30 receives the user ID from the image forming apparatus 20 via the communication unit 390, and acquires the authority of the user identified by the user ID (S1102). For example, the authorization unit 304 acquires user information including the user ID received from the image forming apparatus 20 from the user information storage area 362, and acquires information on the authority included in the acquired user information.

[0094] Next, the control unit 300 (authorization unit 304) transmits authority information, which is information indicating the authority acquired in S1002, to the image forming apparatus 20 that transmitted the user ID in S1100 (S1104). The authority information includes information indicating authorities such as "scan", "copy", and "print".

[0095] The control unit 200 of the image forming apparatus 20 can refer to the authority information received from the authentication server 30 to determine whether or not the user who transmitted the image data in S1022 of FIG. 9 has authority to use the print function.

[0096] 9, next, if the user who transmitted the image data in S1022 has the authority to use the print function, control unit 200 executes image formation processing to form an image based on the image data via image forming unit 230 (S1026). Note that, if there is setting information associated with the image data, control unit 200 performs control to form an image based on the setting.

[0097] When the image forming process is completed, the control unit 200 transmits the user ID and the history information to the authentication server 30 via the communication unit 290 (S1028). The control unit 300 (history storage unit 306) of the authentication server 30 stores the history information received from the image forming device 20 in the history information storage area 364 (S1030).

[0098] [1.3.2 Terminal device processing flow] Next, the process executed by the terminal device 10 will be described with reference to Fig. 11. The control unit 100 of the terminal device 10 executes the operation application 162 to execute the process shown in Fig. 11.

[0099] First, the control unit 100 determines whether or not an account name and a password, which are information used for user authentication by the IdP server 40, have been acquired (step S100). For example, the control unit 100 performs control to display a field for inputting an account name and a field for inputting a password on the display unit 140. In this case, the control unit 100 acquires the account name and the password when the user inputs information into the fields and performs an operation to confirm the input information.

[0100] When the control unit 100 acquires the account name and password, the control unit 100 transmits the acquired user ID and password to the IdP server 40 via the communication unit 190 (Step S100; Yes→Step S102).

[0101] Next, when the control unit 100 receives the transmission information, that is, the e-mail address and the access token, from the IdP server 40 via the communication unit 190, it transmits the received e-mail address and the access token to the image forming apparatus 20 (step S106; Yes->step S108). As a result, the control unit 100 makes an authentication request to the image forming apparatus 20 based on the information received from the IdP server 40.

[0102] Furthermore, the control unit 100 determines whether or not a session ID has been received from the image forming apparatus 20 via the communication unit 190 (step S110). A session ID is received from the image forming apparatus 20 when the user is authenticated in response to the authentication request made to the image forming apparatus 20 in step S106 and use of the image forming apparatus 20 is permitted. In this case, the session ID and image data selected by the user are transmitted to the image forming apparatus 20 via the communication unit 190 (step S110; Yes→step S112).

[0103] If the control unit 100 fails to receive the e-mail address and the access token from the IdP server 40 in step S106, the control unit 100 executes error processing (step S106; No→step S114). If the control unit 100 fails to receive the session ID from the image forming apparatus 20 in step S110, the control unit 100 executes error processing (step S110; No→step S114).

[0104] The case where the e-mail address and the access token cannot be received from the IdP server 40 means, for example, a case where an error message or the like is received from the IdP server 40, a case where communication with the IdP server 40 has failed, etc. Furthermore, the case where the session ID cannot be received from the image forming apparatus 20 means, for example, a case where an error message or the like is received from the image forming apparatus 20, a case where communication with the image forming apparatus 20 has failed, etc.

[0105] The error processing is processing for notifying the user that an error has occurred, for encouraging the user to redo the operation, and for terminating the processing shown in Fig. 11. For example, as the error processing, the control unit 100 executes processing for displaying an error message on the display unit 140. In this case, since the image data is not transmitted from the terminal device 10 to the image forming apparatus 20, the user cannot cause the image forming apparatus 20 to print an image based on the image data.

[0106] If the control unit 100 does not acquire the account name and password in step S100, it judges whether or not the identification information (e.g., user ID) and password for identifying the user who uses the image forming apparatus 20 have been acquired (step S100; No→step S104). For example, the control unit 100 performs control to display a field for inputting a user ID and a field for inputting a password on the display unit 140. In this case, the control unit 100 acquires the user ID and password when the user inputs information in the field and performs an operation to confirm the input information. That is, the control unit 100 performs a conventional authentication request using the user ID and password. In this way, the control unit 100 allows the user to select either authentication by the authentication server 30 using the user ID and password or authentication by the IdP server 40 using the account name and password.

[0107] When the control unit 100 acquires the user ID and password, it executes a process using the user ID and password (step S104; Yes). For example, the control unit 100 requests authentication from the image forming apparatus 20 by transmitting the acquired user ID and password to the image forming apparatus 20 via the communication unit 190, and receives a session ID from the image forming apparatus 20. Furthermore, the control unit 100 transmits the session ID and image data received from the image forming apparatus 20 to the image forming apparatus 20 via the communication unit 190. Through such a process, the terminal apparatus 10 becomes able to transmit the image data to the image forming apparatus 20 after performing authentication using the user ID and password.

[0108] It should be noted that, in step S104, if the control unit 100 has not acquired the user ID and password, the process returns to step S100 (step S104; No→step S100).

[0109] [1.3.3 Processing flow of image forming device] Next, the process executed by the image forming apparatus 20 will be described with reference to Fig. 12. First, the control unit 200 determines whether or not an authentication request has been made from the terminal device 10 via the communication unit 290 and whether or not authentication information has been received (step S120). The authentication information is any of the following information. (a) Access token and email address (b) User ID and password

[0110] When the authentication information is received, the control unit 200 executes a process of authenticating the user using the information received in step S120 and issuing a session ID corresponding to the authenticated user (session ID issuing process) (step S120; Yes→step S122). The session ID issuing process will be described with reference to FIG. 13.

[0111] First, the control unit 200 determines whether or not an access token and an e-mail address, which are transmission information transmitted from the IdP server 40, have been received as authentication information (step S140).

[0112] When the control unit 200 receives the access token and the e-mail address, the control unit 200 transmits the access token and the e-mail address to the authentication server 30 via the communication unit 290 (Step S140; Yes→Step S142).

[0113] Next, the control unit 200 judges whether or not a user ID has been received from the authentication server 30 as the authentication result of the user authentication by the authentication server 30 based on the access token and the e-mail address transmitted in step S142 of Fig. 12 (step S144). Here, the case where a user ID is received from the authentication server 30 means that the user authentication using the access token and the e-mail address transmitted in step S142 has been correctly performed (the case where the authentication result by the authentication server 30 is correct).

[0114] When the control unit 200 receives the user ID, it authenticates the user and issues a session ID (step S144; Yes->step S146). That is, the control unit 200 authenticates the user who is the target of authentication in response to the authentication request from the terminal device 10, and grants permission to use the image forming device 20. At this time, the control unit 200 stores session information including the session ID issued in step S144 and the user ID, which is the identification information received in step S144, in the session information storage area 264. Furthermore, the control unit 200 transmits the session ID issued in step S146 to the terminal device 10 via the communication unit 290 (step S148).

[0115] If the control unit 200 does not receive the user ID in step S144, it determines that the user authentication by the authentication server 30 was not performed correctly (the authentication result by the authentication server 30 is incorrect), and executes error processing (step S144; No -> step S150). If the user ID was not received, it means, for example, that an error message or the like is received from the authentication server 30, or that communication with the authentication server 30 has failed. Moreover, the error processing is processing such as sending an error message to the terminal device 10 that sent the authentication information.

[0116] Also, when the control unit 200 does not receive the access token and the e-mail address in step S140, that is, when the control unit 200 receives the user ID and the password from the terminal device 10, the control unit 200 executes a process using the user ID and the password (step S140; No). For example, the control unit 200 transmits the user ID and the password to the authentication server 30 via the communication unit 290, and receives the authentication result from the authentication server 30. In this case, if the authentication result indicates that the user has been authenticated by the authentication server 30, the control unit 200 issues a session ID. Furthermore, the control unit 200 stores session information in which the issued session ID and the user ID received from the terminal device 10 are associated with each other in the session information storage area 264, and transmits the issued session ID to the terminal device 10 that transmitted the user ID and the password. On the other hand, if the authentication result indicates that the user has not been authenticated by the authentication server 30, the control unit 200 executes an error process.

[0117] Returning to FIG. 12, the control unit 200 then determines whether or not a session ID and image data have been received (step S124). Since the session ID is associated with the user ID of the user authenticated by the authentication server 30 or the IdP server 40, the control unit 200 can determine that the image data has been transmitted by the authenticated user by receiving the session ID. Therefore, if the control unit 200 receives image data that does not include a session ID in step S124, the control unit 200 may execute error processing. Furthermore, even if the control unit 200 receives a session ID, the control unit 200 may execute error processing if the session information in which the session ID is stored is not stored in the session information storage area 264.

[0118] Next, when the control unit 200 receives the session ID and image data, it acquires a user ID, which is identification information associated with the received session ID (step S124; Yes->step S125). For example, the control unit 200 reads the session information in which the received session ID is stored from the session information storage area 264, and acquires the user ID stored in the read session information. Next, the control unit 200 transmits the user ID acquired in step S125 to the authentication server 30 (step S126).

[0119] Next, the control unit 200 receives authority information from the authentication server 30, and determines whether or not the user associated with the session ID received in step S124 has authority to use the print function (step S128->step S130). For example, when the authority information received from the authentication server 30 includes information indicating that the user has authority to use the print function (for example, information such as "print"), the control unit 200 may determine that the user has authority to use the print function.

[0120] If the user has permission to use the print function, the control unit 200 executes printing (step S130; Yes→step S132). For example, the control unit 200 controls the image forming unit 230 to form an image on a recording medium based on the image data received in step S124. When the printing is completed, the control unit 200 transmits the history information to the authentication server 30 via the communication unit 290 (step S134). In this case, the history storage unit 306 of the authentication server 30 executes a process of storing the history information. If the control unit 200 determines in step S130 that the user does not have permission to use the print function, it omits (skips) the processes in steps S132 and S134 (step S130; No).

[0121] [1.3.4 Authentication server processing flow] Next, the process executed by the authentication server 30 will be described with reference to Fig. 14. First, the control unit 300 judges whether or not the access token and the e-mail address issued by the IdP server 40 have been acquired (step S160). For example, when the control unit 300 receives the access token and the e-mail address from the image forming apparatus 20 via the communication unit 390, the control unit 300 judges that the access token and the e-mail address have been acquired.

[0122] When the access token and the e-mail address are acquired, the control unit 300 (authentication unit 302) executes an authentication process to authenticate the user based on the received information (step S160; Yes→step S162). The authentication process will be described with reference to FIG. 15.

[0123] First, the authentication unit 302 identifies a user from the e-mail address and identifies the user ID of the user (step S180). Here, since the e-mail address is the second identification information, the authentication unit 302 can identify (identify) the user from the e-mail address. Therefore, for example, the authentication unit 302 acquires the user information in which the e-mail address received in step S160 of Fig. 14 is stored from the user information storage area 362, and reads out the user ID stored in the acquired user information, thereby acquiring (identifying) the user ID.

[0124] When the user ID is identified, the authentication unit 302 identifies the verification destination corresponding to the received e-mail address (step S182; Yes->step S183). For example, the authentication unit 302 identifies the verification destination by reading out the user information acquired in step S180. Furthermore, the authentication unit 302 transmits the access token to the verification destination identified in step S183, thereby making a request for verification of the access token to the verification destination (step S184). For example, the authentication unit 302 transmits the access token received in step S170 to the verification destination stored in the user information acquired in step S180. Furthermore, the authentication unit 302 receives the verification result of the access token from the verification destination via the communication unit 390 (step S186).

[0125] For example, if the verification destination is the IdP server 40, the authentication unit 302 transmits the access token to the IdP server 40. In this case, the access token is verified by the verification unit 404 of the IdP server 40. In addition, the authentication unit 302 receives a verification result of the access token from the IdP server 40.

[0126] Based on the verification result, the authentication unit 302 determines whether the access token received in step S170 is correct (step S188). If the access token is correct, the authentication unit 302 authenticates the user. Then, the authentication unit 302 transmits the user ID identified in step S180 as the authentication result to the image forming apparatus 20 that transmitted the access token and the e-mail address via the communication unit 390 (step S188; Yes -> step S190). Note that the authentication unit 302 may transmit information indicating that the user authentication has been performed correctly to the image forming apparatus 20 together with the user ID.

[0127] By executing the above-mentioned process, the authentication unit 302 authenticates the user based on the email address, which is the second identification information and is also attribute information included in the transmission information sent from the IdP server 40, and the access token issued by the IdP server 40. In other words, the authentication unit 302 authenticates the user when the following two conditions are met: (1) The user information of the user corresponding to the e-mail address is stored. (2) The access token is correct.

[0128] Here, the case where condition (1) is satisfied is when the user corresponding to the e-mail address is a user managed by the authentication server 30. Since the e-mail address is also information that is transmitted together with the access token when the user is authenticated by the IdP server 40, the authentication unit 302 can associate the information transmitted from the IdP server 40 with the user managed by the authentication server 30.

[0129] If the above conditions are not satisfied, the authentication unit 302 executes error processing. Specifically, if the authentication unit 302 cannot identify the user ID in step S182, it executes error processing (step S182; No→step S192). If the user ID cannot be identified, it means that the user information in which the E-mail address received in step S170 is stored cannot be acquired from the user information storage area 362 (if the user information is not stored). Also, if the authentication unit 302 determines in step S188 that the access token is incorrect, it executes error processing (step S188; No→step S192). The error processing is, for example, a process in which the authentication unit 302 transmits an error message as the authentication result of the user authentication to the image forming apparatus 20 to which the access token and the E-mail address have been transmitted via the communication unit 390.

[0130] 14, control unit 300 determines whether or not a user ID, which is user information, has been acquired from image forming apparatus 20 via communication unit 390 (step S166). For example, when control unit 300 receives a user ID from image forming apparatus 20 via communication unit 390, control unit 300 determines that the user ID has been acquired.

[0131] When the control unit 300 (authorization unit 304) acquires the user authority corresponding to the user ID (step S166; Yes->step S168). For example, the authorization unit 304 reads out the user information in which the user ID acquired in step S166 is stored from the user information storage area 362, and acquires the authority information stored in the read user information. Next, the control unit 300 (authorization unit 304) transmits authority information including information indicating the acquired authority to the image forming apparatus 20, which is the apparatus that transmitted the user ID, via the communication unit 390 (step S170).

[0132] In this way, when the authorization unit 304 acquires a user ID, which is information about a user, the authorization unit 304 can grant authority to the user by transmitting authority information indicating authority associated with the user identified by the user ID. In particular, in this embodiment, the authorization is to grant authority to use the functions of the image forming device 20 (print function, copy function, scan function, etc.). Note that, when the authorization unit 304 determines in step S166 that the user ID has not been acquired, it omits (skips) the processes in steps S168 and S170 (step S166; No).

[0133] If the control unit 300 (authentication unit 302) does not receive the access token and the e-mail address in step S160, it judges whether or not the user ID and the password have been received from the image forming apparatus 20 (step S160; No->step S164). If the control unit 300 (authentication unit 302) receives the user ID and the password, it executes the process of authenticating the user based on the user ID and the password.

[0134] For example, if the user information including the user ID and password received from the image forming apparatus 20 is stored in the user information storage area 362, the authentication unit 302 authenticates the user. On the other hand, if the user information including the user ID and password received from the image forming apparatus 20 is not stored in the user information storage area 362, the authentication unit 302 does not authenticate the user. Then, the authentication unit 302 transmits information indicating whether or not the user has been authenticated as an authentication result to the image forming apparatus 20 that transmitted the user ID and password.

[0135] [1.4 Working Example] Next, an operation example of this embodiment will be described with reference to Fig. 16. Fig. 16 is a diagram showing how a user managed by the IdP server 40 is associated with a user managed by the authentication server 30 by using user attribute information (email address) transmitted by the IdP server 40. Note that T100 in Fig. 16 indicates user information managed (stored) by the authentication server 30.

[0136] In this embodiment, the user information managed by the authentication server 30 includes an e-mail address E100 transmitted together with an access token by an IdP server 40 described later. In this case, the system 1 in this embodiment can use the e-mail address transmitted from the IdP server 40 for user authentication of the image forming apparatus 20.

[0137] In this embodiment, a user uses a user authentication service provided by the IdP server 40 via the terminal device 10. At this time, if the user is authenticated by the IdP server 40, the terminal device 10 receives an e-mail address and an access token as transmission information from the IdP server 40. Then, the terminal device 10 makes an authentication request by transmitting the e-mail address and the access token to the image forming device 20 ((1) in FIG. 16). The image forming device 20 transmits the e-mail address and the access token to the authentication server 30 ((2) in FIG. 16).

[0138] If the authentication server 30 stores user information including an e-mail address received from the image forming device 20, it can determine that the user corresponding to the e-mail address is a user managed by the authentication server 30. On the other hand, if the authentication server 30 does not store user information including an e-mail address received from the image forming device 20, it can determine that the user corresponding to the e-mail address is not a user managed by the authentication server 30.

[0139] For example, as shown in (3) of Fig. 16, there are cases where an e-mail address D100 included in the user information stored by the authentication server 30 matches an e-mail address D102 sent from the image forming apparatus 20. In this case, the authentication server 30 can determine that the user corresponding to the e-mail address is a user managed by the authentication server 30. In this way, the authentication server 30 can associate the user managed by the authentication server 30 with the information sent by the IdP server 40.

[0140] Furthermore, authority information indicating the authority associated with the user managed by the authentication server 30 is transmitted from the authentication server 30 to the image forming apparatus 20 ((4) in FIG. 16). This enables the authentication server 30 to grant authority to the user. Furthermore, the image forming apparatus 20 can determine the authority granted to the user by referring to the authority information. Note that information regarding the user (e.g., an identifier) ​​may be transmitted from the authentication server 30 to the image forming apparatus 20 together with the authority information.

[0141] Fig. 17 is a diagram showing the verification of the access token. As shown in Fig. 17, the authentication server 30 receives the e-mail address and the access token received by the terminal device 10 from the IdP server 40 via the image forming device 20 ((1) and (2) in Fig. 17).

[0142] Here, the authentication server 30 stores a verification destination for verifying the access token for each user. This allows the authentication server 30 to set and switch a verification destination for verifying the access token for each account of a user who uses the image forming apparatus 20. The authentication server 30 requests verification of the access token by sending the access token to the verification destination ((3) in FIG. 17). This allows the authentication server 30 to receive a verification result of the access token from the verification destination (for example, the IdP server 40).

[0143] 17, an authentication result indicating that the access token is valid is transmitted from the IdP server 40 to the authentication server 30. Furthermore, the user ID of the user corresponding to the e-mail address transmitted from the terminal device 10 via the image forming device 20 is transmitted from the authentication server 30 to the image forming device 20. Thus, by receiving the user ID from the authentication server 30, the image forming device 20 can determine that the user corresponding to the user ID is a user who has been authenticated by the IdP server 40 (cloud authentication).

[0144] On the other hand, if the access token is invalid, an authentication result indicating that the access token is invalid is transmitted from the IdP server 40 to the authentication server 30, as shown at D120 in Fig. 17. Also, information indicating an error, such as an error message, is transmitted from the authentication server 30 to the image forming apparatus 20. For this reason, the image forming apparatus 20 can determine that the user operating the terminal apparatus 10 is a user who has not been cloud-authenticated, and execute error processing.

[0145] In this embodiment, the user can use an access token issued by the IdP server 40 corresponding to the web service or cloud service being used, for authentication to use the image forming apparatus 20. Therefore, when using the image forming apparatus 20, the user can use the user authentication service by the IdP server 40 that the user normally uses.

[0146] In addition, even if the content of the process is different from the above description, it may be changed within a range that does not cause a contradiction. For example, in the above description, the process according to the presence or absence of the authority for the print function has been described, but the process may be applied to the process according to the presence or absence of the authority for the copy function, the scan function, and the setting of the image forming apparatus. In this case, the user can use the function authorized for use by the authorization unit. For example, the user transmits a session ID and information related to the process, such as the content of the process and the data to be processed, to the image forming apparatus 20 via the terminal apparatus 10. The image forming apparatus 20 acquires a user ID corresponding to the session ID, and executes a process of authority confirmation for executing a predetermined process for the user identified by the user ID. If the user has the authority to execute the process, the image forming apparatus 20 executes a predetermined process corresponding to the content of the process and the data to be processed transmitted from the terminal apparatus 10. On the other hand, if the user does not have the authority to execute the process, the image forming apparatus 20 does not execute the predetermined process.

[0147] In the above description, it has been described that whether or not the access token is correct is determined using only the access token. However, whether or not the access token is correct may be determined using information on the access token and the e-mail address. In this case, in S1010 of FIG. 9 and step S174 of FIG. 13, the authentication unit 302 of the authentication server 30 transmits the access token and the e-mail address to the IdP server 40. In addition, in S1012 of FIG. 9, if the user information including the access token and the e-mail address received from the authentication server 30 is stored in the user information storage area 462, the verification unit 404 of the IdP server 40 determines that the access token is correct.

[0148] In the above description, the transmission information transmitted by the IdP server 40 includes an access token and user attribute information. Here, the access token is security information indicating that the user has been authenticated by the IdP server 40, and is information used to verify that the user has been authenticated. However, the security information may be information other than the access token as long as it indicates that the user has been authenticated and can verify that the user has been authenticated.

[0149] In the above description, the identification information transmitted and received between the authentication server 30 and the image forming apparatus 20 (for example, S1018 in FIG. 9 and S1100 in FIG. 10) is the user ID, which is the first identification information, but identification information other than the user ID may be transmitted and received. In other words, the identification information transmitted and received between the authentication server 30 and the image forming apparatus 20 may be an e-mail address, which is the second identification information, or an identifier, which is the third identification information.

[0150] In addition, in the present embodiment, the IdP server verifies the access token, but a device other than the IdP server may verify the access token. In this case, attributes such as the address and name of the device that verifies the access token are stored as verification destination information in the user information managed by the authentication server 30.

[0151] In this way, the image forming apparatus in this embodiment authenticates a user who uses an image processing apparatus by using the user information transmitted from the IdP server and the access token issued by the IdP server. The image forming apparatus in this embodiment can determine functions of the image forming apparatus that the authenticated user has the authority to use. As a result, the image forming apparatus in this embodiment can authenticate a user and obtain the authority of the user based on the information transmitted from the IdP server. In addition, when the terminal apparatus operates the image forming apparatus from the terminal apparatus, it is not necessary to transmit (notify) password information to the image forming apparatus via a network. Since it is not necessary to transmit password information via a network, it is possible to prevent passwords from leaking via a network (reducing the risk of eavesdropping). In addition, the user can use an authentication method other than the authentication method using a user ID and a password. As a result, according to this embodiment, in addition to user authentication by a conventional authentication server and user authentication using a one-time password, multi-factor authentication using the authentication result of the IdP server is possible.

[0152] Furthermore, the user of the system in this embodiment can perform the authentication operation required to use the image forming apparatus simply by using the terminal device, and after being authenticated, can use the terminal device to directly transmit image data to the image forming apparatus, which saves the user the trouble of having to go to the location where the image forming apparatus is installed and operate the image forming apparatus directly.

[0153] [2. Second embodiment] Next, a second embodiment will be described. The second embodiment is an embodiment in which a terminal device and an image forming device cannot directly communicate with each other. In this embodiment, FIG. 1 of the first embodiment is replaced with FIG. 18, and FIG. 9 of the first embodiment is replaced with FIG. 20. Note that the same devices and processes are given the same reference numerals, and the description will be omitted.

[0154] [2.1 Overall structure] The overall configuration of a system 2 in this embodiment will be described with reference to Fig. 18. As shown in Fig. 18, the system 2 differs from the system 1 described in the first embodiment in that a relay device 50 is connected to a network NW1. Also, the image forming device 20 is not connected to the network NW1. On the other hand, the image forming device 22 is connected to the relay device 50.

[0155] 18, the image forming apparatus 22 is not connected to the network NW1 to which the terminal apparatus 10 is connected, and so the terminal apparatus 10 and the image forming apparatus 22 cannot directly communicate with each other. Even if the terminal apparatus 10 and the image forming apparatus 22 are connected to the network NW1, there are cases in which the terminal apparatus 10 and the image forming apparatus 22 cannot directly communicate with each other. Specifically, this is the case when a communication failure occurs between the terminal apparatus 10 and the image forming apparatus 22, or when direct communication between the terminal apparatus 10 and the image forming apparatus 22 is prohibited.

[0156] On the other hand, in this embodiment, it is assumed that the terminal device 10 and the relay device 50 are capable of communicating with each other. Also, in this embodiment, it is assumed that the relay device 50 and the image forming device 22 are capable of communicating with each other.

[0157] [2.2 Functional configuration] [2.2.1 Relay Device] Next, a functional configuration of the relay device 50 in this embodiment will be described. The relay device 50 is an information processing device configured by a computer such as a PC or a server. As shown in FIG. 19, the relay device 50 in this embodiment includes a control unit 500, a storage unit 560, and a communication unit 590.

[0158] The control unit 500 controls the entire relay device 50. The control unit 500 realizes various functions by reading and executing various programs stored in the storage unit 560, and is configured with one or more arithmetic units (e.g., CPUs).

[0159] The storage unit 560 stores various programs and various data necessary for the operation of the relay device 50. The storage unit 560 is configured with a storage device such as an SSD, which is a semiconductor memory, or an HDD. The storage unit 560 secures, as storage areas, an image data storage area 562, which is an area for storing image data, and a session information storage area 564, which stores session information. The session information stored in the session information storage area 564 is the same as the session information stored in the session information storage area 264 described in the first embodiment.

[0160] The communication unit 590 communicates with external devices such as the terminal device 10 and the authentication server 30. The communication unit 590 is configured by, for example, a communication device or a communication module such as a NIC used in a wired / wireless LAN.

[0161] [2.2.2 Image forming device] The image forming apparatus 22 in this embodiment differs from the image forming apparatus 20 described in the first embodiment in that the storage unit 260 does not reserve a session information storage area 264. Other than that, the configuration of the image forming apparatus 22 is the same as that of the image forming apparatus 20.

[0162] [2.3 System-wide processing flow] The flow of processing in the system 2 in this embodiment will be described with reference to Fig. 20. Note that the description will be given on the assumption that the control unit 100 of the terminal device 10 has a predetermined function realized by the operation application 162.

[0163] First, the terminal device 10 and the IdP server 40 execute a process of transmitting and receiving an e-mail address and an access token (S2000). The process executed in S2000 is similar to the process from S1000 to S1004 in FIG. 9 of the first embodiment.

[0164] Next, the control unit 100 of the terminal device 10 transmits, via the communication unit 190, to the relay device 50, the e-mail address (user attribute information) and the access token, which are transmission information transmitted from the IdP server 40 (S2002). In this manner, the relay device 50 can obtain the transmission information transmitted from the IdP server 40.

[0165] The control unit 500 of the relay device 50 transmits the access token to the authentication server 30 via the communication unit 590 (S2004). In this manner, the authentication server 30 acquires from the relay device 50 the e-mail address (user attribute information) and the access token, which are the transmission information transmitted from the IdP server 40.

[0166] Next, the authentication server 30 and the IdP server 40 execute the processes from S1010 to S1016 in Fig. 9 of the first embodiment. Furthermore, the authentication unit 302 of the authentication server 30 transmits the user ID, which is identification information, to the relay device 50 that transmitted the E-mail address (user attribute information) and the access token via the communication unit 390 (S2006).

[0167] Next, the control unit 500 of the relay device 50 issues a session ID, and stores session information including the issued session ID and the user ID received in S2006 in the session information storage area 564. Then, the control unit 500 transmits the session ID via the communication unit 590 to the terminal device 10 that transmitted the e-mail address and the access token in S2002 (S2008).

[0168] Next, the control unit 100 of the terminal device 10 transmits the session ID and the image data received in S2008 to the relay device 50 via the communication unit 190 (S2010).

[0169] Next, the relay device 50 and the authentication server 30 confirm the authority of the user who transmitted the image data (S2012). The process in S2012 is similar to the process shown in Fig. 10 of the first embodiment, but differs in that the device that communicates with the authentication server 30 is the relay device 50, not the image forming device 20. In other words, the authentication server 30 obtains identification information from the relay device 50, and transmits authority information indicating the authority associated with the user identified by the identification information to the relay device 50.

[0170] Next, if the control unit 500 of the relay device 50 determines in S2010 that the user who transmitted the image data has the authority to use the print function, the control unit 500 stores the image data received in S2010 in the image data storage area 562 (S2014). Note that if the control unit 500 determines in S2010 that the user who transmitted the image data does not have the authority to use the print function, the control unit 500 does not store the image data received in S2010 in the image data storage area 562.

[0171] Next, the control unit 200 of the image forming apparatus 20 transmits a request for image data to the relay apparatus 50 via the communication unit 290 (S2016). The process of transmitting the request for image data is a polling process that is periodically executed at a predetermined time interval.

[0172] When the control unit 500 of the relay device 50 receives a request for image data from the image forming device 20, it transmits the image data stored in the image data storage area 562 to the image forming device 20 (S2018). The image forming device 20 that has received the image data forms an image based on the received image data, and stores history information in the authentication server 30 (S2020). The process executed in S2020 is similar to the process from S1026 to S1030 in FIG. 9 of the first embodiment.

[0173] Through the above-described process, image data transmitted from the terminal device 10 is transmitted to the image forming device 20 via the relay device 50 if the user of the terminal device 10 has the authority to use the print function. On the other hand, if the user of the terminal device 10 does not have the authority to use the print function, the image data is not stored in the image data storage area 562 and is not transmitted to the image forming device 20. As a result, if the user does not have the authority to print, the image data transmitted to the relay device 50 is not output from the image forming device 20.

[0174] According to the system of this embodiment, even if the terminal device and the image forming device cannot communicate directly with each other, it is possible to realize the same processing as that of the system described in the first embodiment via a relay device.

[0175] [3. Third embodiment] Next, a third embodiment will be described. In the third embodiment, when the authentication server cannot identify the user ID corresponding to the e-mail address sent from the terminal device, instead of performing error processing, the user is treated as an anonymous user (guest user). In this embodiment, Fig. 4 of the first embodiment is replaced with Fig. 21, and Fig. 15 of the first embodiment is replaced with Fig. 22. Note that the same devices and processes are given the same reference numerals, and the description will be omitted.

[0176] With reference to Fig. 21, the user information stored in the user information storage area 362 in this embodiment will be described. The user information in this embodiment differs from the user information in the first embodiment in that information indicating whether it is user information for an anonymous user (for example, "Yes") is stored. An anonymous user is a user other than the users managed by the authentication server 30, and is a so-called guest user.

[0177] Here, as shown in D300 of Fig. 21, in the user information for anonymous users included in the user information, user information in which information such as "Yes" is stored is user information corresponding to an anonymous user. In the user information of an anonymous user, a user ID for identifying the anonymous user (e.g., "guest") and an authority corresponding to the anonymous user (e.g., "copy") are stored.

[0178] Next, the flow of authentication processing in this embodiment will be described with reference to Fig. 22. In this embodiment, if the authentication unit 302 is unable to authenticate a user, it treats the user as an anonymous user and transmits a user ID that is identification information corresponding to the anonymous user.

[0179] Specifically, authentication unit 302 transmits a user ID corresponding to an anonymous user in the following cases. (1) If the user information corresponding to the e-mail address is not stored The case where the user information of the user corresponding to the e-mail address is not stored means that the authentication unit 302 cannot identify the user ID in step S182 (step S182; No → step S300). That is, the case where the user operating the terminal device 10 is not a user managed by the authentication server 30. (2) The access token is invalid. The case where the access token is invalid refers to the case where, in step S188, the authentication unit 302 receives a verification result indicating that the access token is invalid from the IdP server 40 (step S188; No->step S300). The case where the access token is invalid refers to, for example, the case where the authentication of the user who uses the terminal device 10 is not performed in the IdP server 40, or the case where the logout process is performed in the IdP server 40 after the authentication of the user who uses the terminal device 10.

[0180] When acquiring a user ID corresponding to an anonymous user, authentication unit 302 reads out user information corresponding to the anonymous user from user information storage area 362, and acquires the user ID stored in the read out user information.

[0181] In this manner, in this embodiment, when user authentication is not possible, the authentication unit 302 of the authentication server 30 transmits a user ID corresponding to the anonymous user to the image forming apparatus 20. The control unit 200 of the image forming apparatus 20 executes the processes in steps S146 and S148 to determine that the user ID has been received in step S144 of FIG. 13 in the first embodiment. As a result, the control unit 200 can issue a session ID corresponding to the anonymous user and transmit the issued session ID to the terminal apparatus 10 that transmitted the authentication request. The control unit 200 may issue a session ID for each terminal apparatus 10 that transmitted the authentication request. As a result, the control unit 200 can make the session IDs different between anonymous users. On the other hand, the control unit 200 can identify the user ID corresponding to the anonymous user from the session ID issued to the anonymous user.

[0182] 14. In addition, when authorization unit 304 of authentication server 30 receives (acquires) a user ID corresponding to the anonymous user from image forming apparatus 20, authorization unit 304 executes steps S168 and S170 in FIG. 14. As a result, authorization unit 304 acquires authority corresponding to the anonymous user and transmits authority information to image forming apparatus 20.

[0183] By this process, even a user who has not been authenticated by the authentication server 30 (for example, a user who is not managed by the authentication server 30) is treated as an anonymous user and is given predetermined privileges.

[0184] The authentication server 30 may limit the authority of anonymous users. For example, the authentication server 30 stores information indicating that the available functions and the configurable contents are limited as the authority of the user information corresponding to the anonymous user, compared with the user information corresponding to a non-anonymous user. This limits the authority given to the anonymous user.

[0185] In this way, according to this embodiment, even a user who cannot be authenticated by the authentication server 30 can use a predetermined function of the image forming apparatus.

[0186] [4. Fourth embodiment] Next, a fourth embodiment will be described. In the fourth embodiment, an image forming apparatus has a function of an authentication server. This embodiment can be applied to any of the first to third embodiments.

[0187] For example, in the image forming apparatus 20 or the image forming apparatus 22, the control unit 200 may realize the function of the authentication unit 302. In this case, the image forming apparatus 20 secures a storage area in the storage unit 260 for storing user information including at least a user name, a password, an e-mail address of the user specified by the user name, and a verification destination to which a request for verification of whether the access token is correct is made. Then, the control unit 200 executes the authentication process shown in FIG. 15 of the first embodiment. In this case, since the authentication unit 302 is included in the image forming apparatus 20, the process (for example, S1018 in FIG. 9) in which the authentication unit 302 transmits identification information of the user who uses the image forming apparatus to the image forming apparatus 20 is omitted.

[0188] Furthermore, in the image forming apparatus 20 or the image forming apparatus 22, the control unit 200 may realize the function of the authorization unit 304. In this case, the image forming apparatus 20 stores information on the functions to be authorized for each user in the storage unit 260. Then, the control unit 200 executes the process of step S168 in Fig. 14. In this case, since the authorization unit 304 is included in the image forming apparatus 20, the process of communication between the authorization unit 304 and the image forming apparatus 20 (for example, S1100 and S1014 in Fig. 10) is omitted.

[0189] The function of the history storage unit 306 may be realized in the image forming apparatus 20 or the image forming apparatus 22. In this case, the image forming apparatus 20 reserves a storage area for the history information in the storage unit 260. In this case, since the history storage unit 306 is included in the image forming apparatus 20, the process in which the history storage unit 306 receives the user ID and the history information from the image forming apparatus 20 (S1028 in FIG. 9) is omitted.

[0190] In this way, the image forming apparatus 20 or the image forming apparatus 22 may have some or all of the functions of the authentication server 30. This reduces the amount of communication processing between the image forming apparatus 20 or the image forming apparatus 22 and the authentication server 30, and distributes the load of the authentication server 30. Furthermore, by having all the functions of the authentication server 30 in the image forming apparatus 20 or the image forming apparatus 22, it becomes possible to omit the authentication server 30 in the system 1 or the system 2.

[0191] Thus, according to this embodiment, even if an image forming device has some or all of the functions of an authentication server, it is possible to realize processing similar to that of the systems described in the first to third embodiments.

[0192] In addition, if it is possible to verify security information such as an access token using a device other than the IdP server 40, the function of the verification unit 404 of the IdP server 40 may be realized by any of the image forming device 20, the image forming device 22, and the authentication server 30.

[0193] [5. Modifications] The present invention is not limited to the above-described embodiments, and various modifications are possible. In other words, the technical scope of the present invention also includes embodiments obtained by combining technical means that are appropriately modified within the scope of the gist of the present invention.

[0194] For example, an acquisition unit that acquires a user's email address and security information may be realized by an acquisition device. A verification unit that verifies the security information at a verification destination specified by the email address may be realized by a verification device. An authentication unit that authenticates a user when the security information can be correctly verified may be realized by an authentication device. In the above-mentioned embodiment, for example, the acquisition device is the image forming device 20, the verification device is the IdP server 40, and the authentication device is the authentication server 30.

[0195] Furthermore, a transmitting unit that transmits communication identification information used for communication with the image forming apparatus to the terminal device when the user is authenticated may be realized by the transmitting device. Furthermore, when communication identification information and information related to a process are received, a processing execution unit that executes the process when the user corresponding to the communication identification information has authority to execute the process may be realized by the processing execution device. In the above-described embodiment, for example, the transmitting device and the processing execution device are the image forming apparatus 20.

[0196] Although the above-mentioned embodiments are described separately for convenience, they may be combined within a technically feasible range. For example, the second and third embodiments may be combined to enable the relay server to receive authority information corresponding to an anonymous user.

[0197] In addition, the programs that run on each device in the embodiments are programs that control the CPU and the like (programs that make a computer function) so as to realize the functions of the above-mentioned embodiments. Information handled by these devices is temporarily stored in a temporary storage device (e.g., RAM) during processing, and is then stored in various storage devices such as ROMs (Read Only Memories) and HDDs, and is read, modified, and written by the CPU as necessary.

[0198] Here, the recording medium for storing the program may be any of semiconductor media (e.g., ROM, non-volatile memory cards, etc.), optical recording media, magneto-optical recording media (e.g., DVD (Digital Versatile Disc), MO (Magneto Optical Disc), MD (Mini Disc), CD (Compact Disc), BD (Blu-ray (registered trademark) Disk), etc.), magnetic recording media (e.g., magnetic tape, flexible disk, etc.), etc. Furthermore, not only are the functions of the above-mentioned embodiments realized by executing the loaded program, but the functions of the present invention may also be realized by processing in cooperation with an operating system or other application programs, etc., based on instructions from the program.

[0199] In addition, when distributing the program on the market, the program can be stored in a portable recording medium and distributed, or transferred to a server computer connected via a network such as the Internet. In this case, the storage device of the server computer is of course included in the present invention. [Explanation of symbols]

[0200] 1, 2 System 10 Terminal Equipment 100 Control section 140 Display section 150 Operation section 160 Storage section 162 Operation App 190 Communications Department 20 Image forming device 200 Control section 202 Image processing section 220 Image input unit 230 Image forming section 240 Display section 250 Operation section 260 Storage section 262 Image data storage area 264 Session Information Storage Area 290 Communications Department 30 Authentication Server 300 Control section 302 Authentication section 304 Licensing Department 306 History memory unit 360 Storage 362 User information storage area 364 History information storage area 390 Communications Department 40 IdP Server 400 Control section 402 Authentication section 404 Verification Department 460 Storage section 462 User information storage area 490 Communications Department 50 Relay Device 500 Control section 560 Storage section 562 Image data storage area 564 Session information storage area 590 Communications Department

Claims

1. An authentication system for authenticating a user of an image forming apparatus, comprising: a storage unit that stores user information including an email address of the user who uses the image forming apparatus and information of a verification destination; a first authentication unit that authenticates the user using an account name and password from a terminal device, and transmits an email address of the user and approval information to the terminal device based on a result of the authentication; a second authentication unit that performs authentication based on whether the email address transmitted from the first authentication unit is stored in the user information of the storage unit; an acquisition unit that acquires information on a verification destination corresponding to the email address from the user information when the email address is stored as the user information in the second authentication unit; a verification information transmission unit that transmits the approval information as verification information to the verification destination acquired by the acquisition unit; a third authentication unit that authenticates the user as a user who uses the image forming apparatus when the verification information transmitted by the verification information transmission unit can be correctly verified as being based on the approval information transmitted from the first authentication unit; and An authentication system having the above configuration.

2. The authentication system according to claim 1 , wherein the approval information and the verification information are an access token.

3. The authentication system according to claim 2, characterized in that the third authentication unit verifies the access token by comparing the first access token sent to the terminal device by the first authentication unit with the second access token acquired from the terminal device by the acquisition unit.

4. a transmission unit that transmits, to the terminal device, communication identification information used for communication with the image forming apparatus when the user is authenticated by the third authentication unit; a process execution unit that executes the process when the communication identification information and information related to the process are received and the user corresponding to the communication identification information has authority to execute the process; 2. The authentication system of claim 1, further comprising:

5. 1. A method for controlling authentication of a user for an image forming apparatus, comprising: a storage step of storing user information including an email address of the user who uses the image forming apparatus and information of a verification destination; a first authentication step of authenticating the user from a terminal device using an account name and a password, and transmitting the user's email address and approval information to the terminal device based on a result of the authentication; a second authentication step of performing authentication based on whether the email address transmitted in the first authentication step is stored in the user information in the storage step; an acquisition step of acquiring information of a verification destination corresponding to the email address from the user information when the email address is stored as the user information in the second authentication step; a verification information transmitting step of transmitting the approval information as verification information to the verification destination acquired in the acquisition step; a third authentication step of authenticating the user as a user who uses the image forming apparatus when the verification information transmitted in the verification information transmission step can be correctly verified as being based on the approval information transmitted in the first authentication step; A control method comprising:

Citation Information

Patent Citations

  • Information processing device, information processing system and program

    JP2012198647A

  • Information processing program, information processing apparatus, and control method of the information processing apparatus

    JP2015139096A

  • Device and program

    JP2016014913A

  • Authentication system, control method thereof, program, authentication server, control method thereof, and program

    JP2016126462A

  • Information processor, information processing system, information processing method, and program

    JP2017091157A