This application claims priority to Japanese Patent Application No. 2023-081080 filed on May 16, 2023, the entire contents of which are incorporated by reference herein.
The present disclosure relates to a communication mediation device, a communication mediation program, and a communication mediation system for mediating communication between an image processing device for executing image processing and a cloud service for storing data.
An image processing device for executing communication with a cloud service is known.
As an aspect of the present disclosure, technology obtained by further improving the above-described technology is proposed.
A communication mediation device according to an aspect of the present disclosure is a communication mediation device for mediating communication between an image processing device for executing image processing and a cloud service for storing data. The communication mediation device associates cloud service login information for logging into the cloud service with a user and logs into the cloud service associated with the cloud service login information using the cloud service login information associated with the user when the user has logged into the communication mediation device via the image processing device.
According to an aspect of the present disclosure, a computer-readable non-transitory recording medium stores a communication mediation program. The communication mediation program causes a computer provided in a communication mediation device to operate as a communication mediator for mediating communication between an image processing device and a cloud service. The communication mediation program causes a computer to operate so that the communication mediator associates cloud service login information for logging into the cloud service with a user and logs into the cloud service associated with the cloud service login information using the cloud service login information associated with the user when the user has logged into the communication mediation device via the image processing device.
According to an aspect of the present disclosure, a communication mediation system includes an image processing device configured to execute image processing; and a communication mediation device configured to mediate communication between the cloud service for storing data and the image processing device. The communication mediation device associates cloud service login information for logging into the cloud service with a user and logs into the cloud service associated with the cloud service login information using the cloud service login information associated with the user when the user has logged into the communication mediation device via the image processing device.
Hereinafter, a communication mediation device, a communication mediation system, a communication mediation program, and an image processing system according to embodiments will be described as aspects of the present disclosure with reference to the drawings.
First, a configuration of the communication mediation system according to the embodiment of the present disclosure will be described.
As shown in
The system 10 may include a plurality of image processing devices 30. In the present embodiment, an example in which the system 10 includes one image processing device 30 will be described. The image processing device 30 is, for example, embedded equipment such as a multifunction peripheral (MFP), a printer-specific machine, or a scanner-specific machine. In the image processing device 30, an update process such as the replacement of the image processing device 30 with an image processing device of a touch panel or a change in an executable process is not facilitated due to the nature of the embedded equipment.
In addition to the image processing device 30, the system 10 includes a communication mediation device 40 configured to mediate communication with the cloud service 50. The communication mediation device 40 may include one computer such as a personal computer (PC) or may include a plurality of computers.
The communication mediation device 40 communicates with the cloud service 50 for storing data. The communication mediation device 40 can communicate with a plurality of cloud services 50. As the cloud service for storing data, for example, “Google Drive” of “Google LLC,” “Microsoft SharePoint (registered trademark) Online” of “Microsoft Corporation,” “Microsoft OneDrive (registered trademark)” of “Microsoft Corporation,” and “Evernote (registered trademark)” of “Evernote Corporation,” and the like are employed. As prescribed in Section 8.12 of RFC 8252 of OAuth 2.0, there are many cloud services that restrict access from embedded equipment such as an MFP in the latest security defaults.
In addition, an image processing system 20 includes one or more image processing devices 30, one or more communication mediation devices 40, and one or more cloud services 50.
The image processing device 30 and the communication mediation device 40, for example, can communicate with each other via a network 11 such as a local area network (LAN) or the Internet. The communication mediation device 40 and the cloud service 50 can communicate with each other via a network 12 such as the Internet.
As shown in
The storage device 36 stores a cloud service usage program 36a for using the cloud service. The cloud service usage program 36a, for example, may be installed on the image processing device 30 at a manufacturing stage of the image processing device 30, may be additionally installed on the image processing device 30 from an external storage medium such as a Universal Serial Bus (USB) memory, or may be additionally installed on the image processing device 30 from the network.
The controller 37 includes, for example, a central processing unit (CPU), a read-only memory (ROM) storing programs and various types of data, and a random-access memory (RAM) serving as a memory used as a work area of the CPU of the controller 37. The CPU of the controller 37 executes a program stored in the ROM of the storage device 36 or the controller 37.
The controller 37 operates as a cloud service usage device 37a using the cloud service by executing the cloud service usage program 36a.
As shown in
The storage device 44 stores a communication mediation program 44a for mediating communication between the image processing device and the cloud service. The communication mediation program 44a, for example, may be installed on the communication mediation device 40 at the manufacturing stage of the communication mediation device 40, may be additionally installed on the communication mediation device 40 from an external storage medium such as a USB memory, or may be additionally installed on the communication mediation device 40 from the network. The communication mediation program 44a may be a resident utility application program. The communication mediation program 44a is stored in a computer-readable non-transitory recording medium, such as a compact disc (CD), a USB memory, or the storage device 44.
The storage device 44 stores user management information 44b for managing users.
As shown in
As shown in
As shown in
Moreover, as shown in
The controller 45 includes, for example, a CPU, a ROM storing programs and various types of data, and a RAM serving as a volatile storage device used as a working area of the CPU of the controller 45. The CPU of the controller 45 executes a program stored in the storage device 44 or the ROM of the controller 45.
The controller 45 operates as the communication mediator 45a that performs a communication mediation process of mediating communication between the image processing device and the cloud service by executing the communication mediation program 44a.
Next, an operation of the system 10 will be described. Hereinafter, the image processing device 30 will be described as a representative image processing device.
First, an operation of the communication mediation device 40 when an access token for logging into the cloud service is registered in the access token management information 44c will be described.
The user is notified in advance of a user ID for the communication mediation program 44a and an initial password for the communication mediation program 44a. The user inputs the user ID for the communication mediation program 44a and the initial password for the communication mediation program 44a from the operation device 41 of the communication mediation device 40.
When a user ID and password are input (hereinafter, the “user ID that has been input” and the “password that has been input” are referred to as an “input user ID” and an “input password,” respectively), the communication mediator 45a of the communication mediation device 40 determines whether or not the input user ID is registered in the user management information 44b (S101).
When it is determined that the input user ID is not registered in the user management information 44b in S101, the communication mediator 45a displays that the user ID is incorrect on the display device 42 (S102). Thereafter, the process shown in
When it is determined that the input user ID is registered in the user management information 44b in S101, the communication mediator 45a determines whether or not a non-initial password associated with the input user ID is registered in the user management information 44b (S103).
When it is determined that the non-initial password associated with the input user ID is not registered in the user management information 44b (NO in S103), the communication mediator 45a determines whether or not the input password is the same as the initial password associated with the input user ID in the user management information 44b (S104).
When it is determined that the input password is different from the initial password associated with the input user ID in the user management information 44b (NO in S104), the communication mediator 45a displays that the password is incorrect on the display device 42 (S105). Thereafter, the process shown in
On the other hand, when it is determined that the input password is the same as the initial password associated with the input user ID in the user management information 44b, i.e., the user's login to the communication mediator 45a has succeeded (YES in S104), the communication mediator 45a displays a screen for changing a password (hereinafter referred to as a “password change screen”) on the display device 42 (S106).
After the processing of S106, the communication mediator 45a determines whether or not a new password has been designated via the operation device 41 on the password change screen (S107).
When it is determined that a new password has been designated on the password change screen in S107, the communication mediator 45a registers the designated new password in the user management information 44b as a non-initial password associated with the input user ID (S108). Thereafter, the process shown in
Moreover, when it is determined that the non-initial password associated with the input user ID is registered in the user management information 44b in S103 (YES in S103), the communication mediator 45a determines whether or not the input password is the same as the non-initial password associated with the input user ID in the user management information 44b (S109).
Here, when it is determined that the input password is different from the non-initial password associated with the input user ID in the user management information 44b in S109 (NO in S109), the communication mediator 45a displays that the password is incorrect on the display device 42 (S105). Thereafter, the process shown in
On the other hand, when the communication mediator 45a determines that the input password is the same as the non-initial password associated with the input user ID in the user management information 44b, i.e., the user has successfully logged into the communication mediator 45a, in S109 (YES in S109), the communication mediator 45a displays a screen for logging into the cloud service (hereinafter referred to as a “cloud service login screen”) on the display device 42 (S110). That is, the user can perform a process of logging into the cloud service from the image processing device 30 by inputting the user ID for the communication mediation program 44a and the non-initial password for the communication mediation program 44a from the operation device 41 of the communication mediation device 40.
As shown in
After the display of the cloud service login screen 60 in S110, the communication mediator 45a determines whether or not the cloud service login button has been operated via the operation device 41 (S111).
When the communication mediator 45a determines that the cloud service login button has been operated in S111 (YES in S111), a login process of the user for a cloud service associated with the pressed cloud service login button (hereinafter referred to as a “target cloud service”) is executed (S112). Specifically, the communication mediator 45a allows the user to input the user ID and password for the target cloud service from the operation device 41 of the communication mediation device 40 and executes authentication as a login process for logging into the target cloud service using the user ID and password input by the user. When the user's login has been authenticated, the target cloud service transmits an access token for logging into the target cloud service from the communication mediator 45a to the communication mediation device 40 to provide a notification thereof.
After the processing of S112, the communication mediator 45a of the communication mediation device 40 determines whether or not the notification of the access token has been provided from the target cloud service until it is determined that the notification of the access token has been provided from the target cloud service (NO in S113).
When the communication mediator 45a determines that the notification of the access token has been provided from the target cloud service in S113 (YES in S113), the access token whose notification has been provided from the target cloud service is registered as the access token management information 44c in association with the input user ID and the target cloud service (S114).
When the processing of S114 ends, the communication mediator 45a determines whether or not the PIN code associated with the input user ID is registered in the user management information 44b (S115).
When the communication mediator 45a determines that the PIN code associated with the input user ID is not registered in the user management information 44b (NO in S115), a new PIN code that is not registered in the user management information 44b is issued (S116).
When the processing of S116 ends, the communication mediator 45a registers the PIN code issued in S116 in association with the input user ID in the user management information 44b (S117).
When the communication mediator 45a determines that the PIN code associated with the input user ID is registered in the user management information 44b in S115 or when the processing of S117 ends, the PIN code associated with the input user ID and registered in the user management information 44b is displayed on the display device 42 (S118). After S118, the process returns to S110.
In addition, when the communication mediator 45a determines that the cloud service login button has not been pressed in S111 (NO in S111), it is determined whether or not the cancel button 62 has been pressed via the operation device 41 (S119).
When the communication mediator 45a determines that the cancel button 62 has not been pressed (NO in S119), the processing of S111 is subsequently performed.
When the communication mediator 45a determines that the cancel button 62 has been pressed in S119 (YES in S119), the process shown in
Next, an operation of the system 10 when a process of logging into the cloud service from the image processing device 30 is performed will be described.
The user inputs the PIN code displayed in S118 from the operation device 31 of the image processing device 30.
When the PIN code is input, the cloud service usage device 37a of the image processing device 30 transmits the input PIN code from the communication device 35 to the communication mediation device 40 (S131).
When the PIN code transmitted in S131 is received by the communication device 43, the communication mediator 45a of the communication mediation device 40 determines whether or not the received PIN code is registered in the user management information 44b (S132).
When the communication mediator 45a determines that the received PIN code is not registered in the user management information 44b in S132, i.e., when the user's login to the communication mediator 45a has failed, the image processing device 30 is notified that the PIN code is incorrect (S133).
When the cloud service usage device 37a of the image processing device 30 receives the notification in S133 via the communication device 35, the display device 42 displays that the PIN code is incorrect (S134). Thereafter, the process shown in
On the other hand, when the communication mediator 45a determines that the received PIN code is registered in the user management information 44b, i.e., the user has successfully logged into the communication mediator 45a, in S132, the user ID associated with the received PIN code in the user management information 44b is identified (S135).
When the processing of S135 ends, the communication mediator 45a identifies a cloud service and an access token associated with the user ID identified in S135 in the access token management information 44c (S136).
The communication mediator 45a logs into the cloud service identified in S136 via the communication device 43 using the access token identified in S136 (S137). Although an example in which the communication mediator 45a logs into one cloud service 50 in S137 is shown, the communication mediator 45a logs into all identified cloud services when a plurality of cloud services and a plurality of access tokens associated with the user ID identified in S135 are identified in S136.
When the processing of S137 ends, the communication mediator 45a provides a notification of all the cloud services logged in in S137 from the communication device 43 to the image processing device 30 (S138).
When the cloud service usage device 37a of the image processing device 30 receives a notification in S138 via the communication device 35, a screen indicating all the cloud services indicated in the notification (hereinafter referred to as a “cloud service list screen”) is displayed on the display device 32 (S139). In a cloud service list screen 70 (to be described later), all cloud services authenticated for a user using the image processing device 30 are indicated.
As shown in
Next, an operation of the system 10 when the scan data generated by the image processing device 30 is uploaded to the cloud service will be described.
When the cloud service list screen 70 is displayed on the display device 32 of the image processing device 30, the user selects the cloud service according to an operation on the radio buttons 71a to 71d, selects a folder according to an operation on the processing target selector 72, sets a manuscript on the scanner 34, and operates the “Scan to Cloud” button 73. Each instruction corresponding to an operation on each of these buttons is received by the operation device 31 via the touch panel provided in the display device 32.
When a transmission instruction is received by the operation device 31 according to an operation on the “Scan to Cloud” button 73, the cloud service usage device 37a of the image processing device 30 displays a scan setting screen for setting the scan on the display device 32 (S161).
By operating each operation button displayed on the scan setting screen by the user, the designation of scan setting content and a scan execution instruction are received by the operation device 31 via the touch panel.
When the scan execution instruction is received by the operation device 31, the cloud service usage device 37a of the image processing device 30 reads an image from the manuscript with the scanner 34 in the setting content received when the scan setting screen is displayed and generates scan data including the image read from the manuscript (S162).
Subsequently, the cloud service usage device 37a transmits the scan data generated in S162 to the communication mediation device 40 via the communication device 35 (S163). At a point in time when the above-described transmission instruction has been received by the operation device 31, the cloud service usage device 37a transmits a cloud service whose selection has been received on the basis of an operation on the radio buttons 71a to 71d on the cloud service list screen 70 and a path of a folder received on the basis of an operation on the processing target selector 72 (information for identifying the folder) to the communication mediation device 40 together with the scan data.
The cloud service usage device 37a uses, for example, an interface called “SendData (ScanData, Destination Cloud, Cloud Directory)” as a communication method in S163. In this interface, “SendData” is a name of a unified interface that does not depend on a cloud service. In this interface, the argument in parentheses is a variable part. The scan data generated in S162 is input to “ScanData” in the argument. A cloud service received at a point in time when an instruction based on the operation on the “Scan to Cloud” button 73 of the cloud service list screen 70 has been received by the operation device 31 is input to “Destination Cloud” in the argument. The path of the folder received at a point in time when an instruction based on the operation on the “Scan to Cloud” button 73 of the cloud service list screen 70 has been received by the operation device 31 is input to “Cloud Directory” in the argument.
When the communication mediator 45a of the communication mediation device 40 receives the data transmission in S163 via the communication device 43, the received scan data is uploaded to the folder indicated by the above-described path included in the data transmission in the cloud service received together with the received scan data according to a communication method independently prescribed by the vendor of the cloud service, i.e., using a communication method API corresponding to the cloud service included in the data transmission (S164). For example, when the interface called “SendData (ScanData, Destination Cloud, Cloud Directory)” is used as the communication method in S163, the communication mediator 45a of the communication mediation device 40 uploads scan data designated in “ScanData” to the folder designated in “Cloud Directory” of the cloud service designated in “Destination Cloud” using the communication method API for the cloud service designated in “Destination Cloud.”
Next, an operation of the system 10 when a file downloaded from the cloud service is printed by the image processing device 30 will be described.
When the cloud service list screen 70 is displayed on the display device 32 of the image processing device 30, the user selects a cloud service according to an operation on the radio buttons 71a to 71d, selects a file according to an operation on the processing target selector 72, and operates the “Print from Cloud” button 74. Each instruction corresponding to the operation on each of these buttons is received by the operation device 31 via the touch panel provided in the display device 32.
When a printing instruction is received by the operation device 31 on the basis of the operation on the “Print from Cloud” button 74, the cloud service usage device 37a of the image processing device 30 displays a printing setting screen for printing settings on the display device 32 (S191).
According to the operation on each operation button displayed on the print setting screen by the user, the designation of printing setting content and the printing execution instruction are received by the operation device 31 via the touch panel.
When the printing execution instruction has been received by the operation device 31, the cloud service usage device 37a of the image processing device 30 transmits a transmission request for the file selected according to the operation on the processing target selector 72 of the cloud service list screen 70 from the communication device 35 to the communication mediation device 40 at a point in time when the printing execution instruction has been received (S192). At the point in time when the above-described printing execution instruction has been received, the cloud service usage device 37a transmits a cloud service whose selection has been received on the basis of an operation on the radio buttons 71a to 71d on the cloud service list screen 70 and a path of a file whose selection has been received on the basis of the operation on the processing target selector 72 on the cloud service list screen 70 from the communication device 35 to the communication mediation device 40 together with the above-described transmission request.
The cloud service usage device 37a uses, for example, an interface called “GetData (Destination Cloud, Cloud File),” as the communication method in S192. In this interface, “GetData” is a name of a unified interface that does not depend on the cloud service. In this interface, the argument in parentheses is a variable part. At a point in time when the printing instruction has been received by the operation device 31 on the basis of the operation on the “Print from Cloud” button 74 on the cloud service list screen 70, a cloud service whose selection has been received by the operation device 31 is input to “Destination Cloud” in the argument. At a point in time when the printing instruction has been received by the operation device 31 on the basis of the operation on the “Print from Cloud” button 74 of the cloud service list screen 70, a path of a file whose selection has been received by the operation device 31 is input to “Cloud File” in the argument.
When the communication mediator 45a of the communication mediation device 40 receives the transmission request in S192 via the communication device 43, the file indicated by the path received together with the transmission request in the cloud service received together with the transmission request is downloaded from the cloud service according to a communication method independently prescribed by the vendor of the cloud service included in the transmission request, i.e., using a communication method API corresponding to the cloud service included in the above-described transmission request (S193). For example, when the interface called “GetData (Destination Cloud, Cloud File)” is used as the communication method in S192, the communication mediator 45a of the communication mediation device 40 downloads a file designated in “Cloud File” in the cloud service designated in “Destination Cloud” using the communication method API for the cloud service designated in “Destination Cloud.”
The communication mediator 45a transmits the file downloaded in S193 to the image processing device 30 via the communication device 43 (S194).
When the cloud service usage device 37a of the image processing device 30 receives the file transmitted in S194 via the communication device 35, the received file is printed by the printer 33 with the setting content received by the operation device 31 when the print setting screen is displayed (S195).
As described above, because the communication mediation device 40 causes the image processing device to log into the cloud service via the communication mediation device 40 itself, which is easier to update than the image processing device, without causing the image processing device to directly log into the cloud service (S137), it is possible to easily respond to vulnerabilities.
Because the communication mediation device 40 causes the image processing device to communicate with the cloud service via the communication mediation device 40 itself, which is easier to update than the image processing device, without causing the image processing device to directly communicate with the cloud service (S164 and S193), it is possible to easily respond to vulnerabilities.
When an access token of each of a plurality of cloud services is associated with the user (S114) and the user logs into the communication mediator 45a via the image processing device with a PIN code that is information for linking the image processing device with the cloud service (S131) and when a plurality of cloud services and access tokens corresponding thereto are identified by the user who has logged into the communication mediator 45a via the image processing device, the communication mediation device 40 logs into all the cloud services associated with the access tokens at once (S137), it is possible to facilitate the work for inputting information for linking the image processing device with the cloud service to the image processing device.
Because the communication mediation device 40 executes communication between the communication mediator 45a and the image processing device in a unified method that does not depend on a type of cloud service, i.e., “SendData (ScanData, Destination Cloud, Cloud Directory)” and “GetData (Destination Cloud, Cloud File)” (S163 and S192), it is not necessary to change the image processing device for a change such as the addition of a corresponding cloud service or a change in a communication method of a corresponding cloud service and it is possible to cope with the change only by changing the communication mediation device 40.
The image processing system 20 employs a PIN code as information for a user to log into the communication mediator 45a of the communication mediation device 40 via the image processing device. However, it is also possible to employ information other than a PIN code as information for a user to log into the communication mediator 45a of the communication mediation device 40 via the image processing device. For example, the information for the user logging into the communication mediator 45a of the communication mediation device 40 via the image processing device may be a combination of a user ID and a password.
The communication between the image processing device and the communication mediation device 40 may be in an on-premises environment or may not be in an on-premises environment. The communication between the image processing device and the communication mediation device 40 is more secure when it is in an on-premises environment than when it is not in an on-premises environment.
Thus, in the present embodiment, the problem of insufficient response to vulnerabilities at the time of logging into the cloud service from the image processing device is solved. That is, according to the present embodiment, a security vulnerability can be easily avoided at the time of logging into the cloud service from the image processing device.
While the present disclosure has been described in detail with reference to the embodiments thereof, it would be apparent to those skilled in the art that the various changes and modifications may be made therein within the scope defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
2023-081080 | May 2023 | JP | national |