The present invention relates to a server, a device, a system, and a method.
A technology of constructing on-premises equivalent network environments on a cloud called a secure access service edge (SASE) has begun to be used in addition to known on-premises corporate network environments. An environment in which no corporate network exists is sometimes called a local area network (LAN)-less environment. Some devices such as multi-function peripherals have a server function. Japanese Patent Laid-Open No. 2009-151479 proposes a technique for safely using a server function of a device from a PC while remaining in a state of opening a server port of the device in a LAN-less environment. When the server port of the device is left open, the server port may be attacked.
An aspect of the present invention provides a technology for enabling a server function of a device without using a server port of the device.
According to some embodiments, a system comprising a server and a device having a server function, wherein the device is configured to transmit, to the server, a connection request for establishing a connection between the device and the server, receive a service request to the server function from the server through the connection, acquire a response generated by the server function to the service request, and transmit the response to the server, and the server is configured to establish the connection in response to the connection request from the device, and transfer, to the device through the connection, the service request received from an information processing apparatus in a state in which the connection is established, and transfer, to the information processing apparatus, the response from the device to the service request is provided.
Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
Hereinafter, embodiments will be described in detail with reference to the attached drawings. Note, the following embodiments are not intended to limit the scope of the claimed invention. Multiple features are described in the embodiments, but limitation is not made to an invention that requires all such features, and multiple such features may be combined as appropriate. Furthermore, in the attached drawings, the same reference numerals are given to the same or similar configurations, and redundant description thereof is omitted.
A hardware configuration example of a multi-function peripheral 100, a server 120, and a personal computer (PC) 130 according to the first embodiment will be described with reference to
The multi-function peripheral 100 is a device having at least two of a scan function, a print function, and a copy function. In place of the multi-function peripheral 100, any device (e.g., a dedicated printing machine, a sensor, a home appliance, or the like) that can provide services to an external apparatus (e.g., the PC 130) may be used in the system 10. In this manner, the device that can provide services to external apparatuses may be called a device having a server function. The following example assumes a web server function as an example of a server function of the multi-function peripheral 100. Alternatively or additionally, the multi-function peripheral 100 may have other server functions (e.g., a file transfer server function, an authentication server function, and the like).
The multi-function peripheral 100 may have the hardware components illustrated in
A central processing unit (CPU) 101 is a processor for controlling the overall operation of the multi-function peripheral 100. A read only memory (ROM) 102 is a read-only nonvolatile memory. The ROM 102 may store a boot program. The boot program is read and executed by the CPU 101 in response to the power of the multi-function peripheral 100 being turned on. A random access memory (RAM) 103 is a readable/writable volatile memory. The RAM 103 temporarily stores programs, data, and the like for the CPU 101 to control the multi-function peripheral 100.
A hard disk drive (HDD) 104 is a storage device that semi-permanently stores programs, data, and the like for the CPU 101 to control the multi-function peripheral 100. In place of or in addition to the HDD, another storage device such as a solid state drive (SSD) may be used. The programs and data stored in the HDD 104 may be read into the RAM 103 by the CPU 101.
A network interface (I/F) 105 is a device for communicating with external apparatuses. Communication with the external apparatuses may be wired or wireless. The network I/F 105 that performs wired communication may include a connector for connecting a cable and a signal processing circuit for processing data to be transmitted and received. The network I/F 105 that performs wireless communication may include an antenna for transmitting and receiving data and a signal processing circuit for processing the transmitted and received data.
A printer control unit 107 controls the operation (e.g., printing) of a printer 108. A scanner control unit 109 controls the operation (e.g., reading of documents) of a scanner 110. A panel control unit 111 controls the operation of an operation panel 112. The operation panel 112 is a touch panel type operation unit. The operation panel 112 may include a display for displaying information for a user of the multi-function peripheral 100 and a touch sensor for acquiring instruction input from the user of the multi-function peripheral 100.
The above-described components of the multi-function peripheral 100 are connected to one another by a bus 106. Control signals from the CPU 101 and data signals between the components are transmitted and received through the bus 106.
The server 120 is an information processing apparatus for relaying, to the PC 130, services provided by the multi-function peripheral 100. Components 121 to 126 of the server 120 may be similar to the components 101 to 105 of the multi-function peripheral 100, and therefore redundant description will be omitted. An input I/F 127 is a device for connecting an input device (e.g., a mouse or a keyboard) for acquiring instruction input from the user of the server 120. An output I/F 128 is a device for connecting an output device (e.g., a display or a speaker) for outputting information for the user of the server 120.
The PC 130 is an information processing apparatus for using services provided by the system 10. In place of the PC 130, another information processing apparatus (e.g., a smartphone or a tablet) may be used. Since component 131 to 138 of the server 120 may be similar to the component 101 to 105 of the multi-function peripheral 100 and the component 127 and 128 of the server 120, redundant description will be omitted. An input device connected to the input I/F 137 and an output device connected to the output I/F 138 may be built in the PC 130.
The multi-function peripheral 100, the server 120, and the PC 130 are connected to a network 140. The multi-function peripheral 100 and the server 120 can communicate with each other through the network 140. The server 120 and the PC 130 can communicate with each other through the network 140. The multi-function peripheral 100 and the PC 130 may be or needs not be able to communicate directly. The network 140 may be a private network such as a local area network, or may be a public network such as the Internet.
A software configuration example of the multi-function peripheral 100, the server 120, and the PC 130 will be described with reference to
First, a software configuration of the multi-function peripheral 100 will be described. A setting management unit 201 manages the setting of the multi-function peripheral 100. For example, the setting of the multi-function peripheral 100 may be stored in the HDD 104. In response to a request from the user, an external apparatus, or another component of the multi-function peripheral 100, the setting management unit 201 may store a new setting in the HDD 104 or update or delete a setting stored in the HDD 104. In response to a request from the user, an external apparatus, or another component of the multi-function peripheral 100, the setting management unit 201 may respond to the setting stored in the HDD 104.
The setting management unit 201 may acquire a request related to the setting of the multi-function peripheral 100 from the user through the operation panel 112, or may display the setting of the multi-function peripheral 100 on the operation panel 112. In addition to this, the setting management unit 201 may have a web server function. Using the web server function, the setting management unit 201 may acquire a request related to the setting of the multi-function peripheral 100 from an external apparatus (e.g., the PC 130) via the network I/F 105, or may respond the setting of the multi-function peripheral 100 to an external apparatus. As described above, the setting management unit 201 may be an application having the web server function. For example, the setting management unit 201 may receive a connection request by Hyper Text Transfer Protocol (HTTP) from an external apparatus at a port No. 80. In place of or in addition to this, the setting management unit 201 may receive a connection request by HTTP Secure (HTTPS) from an external apparatus through a port 443. The setting management unit 201 may transmit and receive data (e.g., a request or a response) used for processing related to the setting of the multi-function peripheral 100 through the connection established by these protocols.
The web server function of the setting management unit 201 is settable to be enabled or disabled. When the web server function is enabled, the setting management unit 201 accepts a request from an external apparatus via the network 140. When the web server function is disabled, the setting management unit 201 rejects a request from an external apparatus via the network 140. For example, the setting management unit 201 may discard a packet transmitted to a port (e.g., the port No. 80 or the port No. 443) for providing the web server function.
A display control unit 202 displays information on the operation panel 112. For example, the display control unit 202 may generate a screen to be displayed on the operation panel 112. A registration request unit 203 requests the server 120 for registration of the multi-function peripheral 100. This request may include identification information and authentication information on the multi-function peripheral 100. A transfer unit 204 transfers data between the server functions (e.g., the web server function of the setting management unit 201) of the multi-function peripheral 100 and the server 120.
A communication control unit 205 is connected to the network 140 using the network I/F 105, and communicates with other apparatuses (e.g., the server 120) through the network 140. Communication between the above-described components of the multi-function peripheral 100 and the other apparatuses is performed through the communication control unit 205.
Next, a software configuration of the server 120 will be described. A multi-function peripheral management unit 221 manages the multi-function peripheral 100 included in the system 10. For example, in response to reception of a registration request from the multi-function peripheral 100, the multi-function peripheral management unit 221 manages this multi-function peripheral 100 by storing identification information on the multi-function peripheral 100 into the HDD 124. The information on the multi-function peripheral 100 managed by the multi-function peripheral management unit 221 may be acquired from the user of the server 120 through the input I/F 127 of the server 120.
A transfer unit 222 transfers data between the multi-function peripheral 100 and the PC 130. A communication control unit 223 may be similar to the communication control unit 205, and therefore redundant description will be omitted.
Next, a software configuration of the PC 130 will be described. A browser 231 is client software that uses services provided by a web server (e.g., the web server function of the multi-function peripheral 100). The browser 231 displays, onto a display of the PC 130, a screen generated based on the data received from the web server. The browser 231 transmits, to the web server, the user input performed on this screen. A communication control unit 232 may be similar to the communication control unit 205, and therefore redundant description will be omitted.
An example of the screen generated by the system 10 will be described with reference to
The screen 300 is a screen for acquiring the setting related to a remote setting function from the user. The remote setting function may be a web server function for setting the multi-function peripheral 100 from an external apparatus (e.g., the PC 130) through the network 140. When the remote setting function is enabled, the user can check and change the setting of the multi-function peripheral 100 from the external apparatus through the network 140. When the remote setting function is disabled, the user cannot check and change the setting of the multi-function peripheral 100 from the external apparatus through the network 140. Even in this case, the user can confirm and change the settings of the multi-function peripheral 100 using the operation panel 112 of the multi-function peripheral 100.
The screen 300 may be displayed on the operation panel 112 of the multi-function peripheral 100 in response to a request from the user. The input to the screen 300 may be acquired by the operation panel 112 of the multi-function peripheral 100.
When the remote setting function of the setting management unit 201 is enabled, data for generating the screen 300 may be transmitted from the multi-function peripheral 100 to the PC 130 in response to a request from the browser 231 of the PC 130, and the screen 300 may be displayed on the display of the PC 130. The input to the screen 300 may be acquired by the input device of the PC 130 and transmitted to the multi-function peripheral 100.
When the remote setting function is enabled, data for generating the screen 300 may be transmitted from the multi-function peripheral 100 directly to the PC 130 (i.e., not via the server 120), or may be transmitted from the multi-function peripheral 100 to the PC 130 via the server 120.
A button 301 is a graphics object for acquiring a user instruction for enabling the remote setting function. In response to a button 305 being pressed in a state where the button 301 is selected, the setting management unit 201 enables the remote setting function. Specifically, the setting management unit 201 may open the port No. 80 and the port No. 443. A button 302 is a graphics object for acquiring a user instruction for disabling the remote setting function. In response to a button 305 being pressed in a state where the button 302 is selected, the setting management unit 201 disables the remote setting function. Specifically, the setting management unit 201 may close the port No. 80 and the port No. 443. When a button 306 is pressed, the setting management unit 201 does not reflect the setting for the screen 300.
When the button 301 is selected, the setting management unit 201 may further display a window 303. The window 303 is an object for setting whether to limit the protocols accepted by the remote setting function to HTTPS that uses Transport Layer Security (TLS). When the protocols are set to be limited to HTTPS, the setting management unit 201 may accept the request by HTTPS or reject the request by HTTP. Specifically, the setting management unit 201 may close the port No. 80 and open the port No. 443. When the protocols are set not to limited to HTTPS, the setting management unit 201 may accept a request by HTTP and a request by HTTPS. Specifically, the setting management unit 201 may open the port No. 80 and the port No. 443.
A button 304 is a graphics object for acquiring a user instruction to set cloud connection. In response to the button 304 being pressed, the setting management unit 201 displays a screen 310 of
The overall operation of the system 10 will be described with reference to the sequence diagram of
The operation of the system 10 may include a registration operation 400, a connection operation 410, and a service provision operation 420. The registration operation 400 is an operation of registering the multi-function peripheral 100 into the server 120. The connection operation 410 is an operation of establishing a connection between the multi-function peripheral 100 and the server 120. The service provision operation 420 is an operation in which the system 10 provides the PC 130 with services provided by the web server function of the multi-function peripheral 100. Because the connection operation 410 is performed as a preparation for executing the service provision operation 420, it may be called a preparation operation. The request from the PC 130 is transferred from the server 120 to the multi-function peripheral 100 in the service provision operation 420, the service provision operation 420 may be called a transfer operation.
First, the registration operation 400 will be described with reference to
In S501, the registration request unit 203 of the multi-function peripheral 100 transmits, to the server 120, a request for registering the multi-function peripheral 100 into the server 120 (corresponding to S401 in
The registration request may include identification information on the multi-function peripheral 100. As described later, the identification information on the multi-function peripheral 100 is used by the user who uses the web server function of the multi-function peripheral 100 in order to identify the multi-function peripheral 100 in the service provision operation 420. The identification information on the multi-function peripheral 100 may be any information for the user to identify the multi-function peripheral 100. For example, the identification information on the multi-function peripheral 100 may be a combination of a domain name system (DNS) name of the domain to which the multi-function peripheral 100 belongs, a serial number of the multi-function peripheral 100, a model name of the multi-function peripheral 100, and an installation location of the multi-function peripheral 100. Alternatively or additionally, the identification information on the multi-function peripheral 100 may include at least one of an Internet protocol (IP) address of the multi-function peripheral 100, a media access control (MAC) address of the multi-function peripheral 100, and an apparatus name of the multi-function peripheral 100 set by the user. The identification information on the multi-function peripheral 100 may be set by the user before the method of
When the server 120 requires user authentication for registering the multi-function peripheral 100, the registration request may include a user credential instructing the multi-function peripheral 100 for transmission of the registration request. The credential may be, for example, a combination of a user name and a password. Alternatively, the credential may be other information that enables the user to be authenticated as authorized, for example, a client certificate. The user credential may be used as user identification information for identifying the user.
The screen 310 used for acquiring an instruction for transmission of the registration request from the user will be described with reference to
A field 311 is a graphics object for inputting a uniform resource locator (URL) of the server 120. A field 312 is a graphics object for inputting the user name. A field 313 is a graphics object for inputting the password. In response to the button 305 being pressed in a state where the fields 311 to 313 are input, the setting management unit 201 generates a registration request including the information input to the fields 312 and 313 and the identification information on the multi-function peripheral 100, and transmits this registration request to the URL input to the field 311. When a button 315 is pressed, the setting management unit 201 does not transmit the registration request. When the server 120 does not require user authentication for registering the multi-function peripheral 100, the screen 310 needs not include the fields 312 and 313, and the registration request needs not include the user credential. The information input in the fields 311 to 313 may be stored in the HDD 104 for subsequent processing.
In S511, the multi-function peripheral management unit 221 of the server 120 determines whether a registration request has been received from the multi-function peripheral 100. When determining that the registration request has been received from the multi-function peripheral 100 (“YES” in S511), the multi-function peripheral management unit 221 shifts the process to S512, and otherwise (“NO” in S511), repeats S511.
In S512, the multi-function peripheral management unit 221 of the server 120 authenticates the user who has instructed the transmission of the registration request. For example, before the method of
When determining that the user authentication is successful (“YES” in S512), the multi-function peripheral management unit 221 shifts the process to S513, and otherwise (“NO” in S512), shifts the process to S514. When the server 120 does not require user authentication for registering the multi-function peripheral 100, S512 may be omitted, and S513 may be executed after S511.
In S513, the multi-function peripheral management unit 221 of the server 120 registers the multi-function peripheral 100. Specifically, the multi-function peripheral management unit 221 generates an access token for the multi-function peripheral 100, and stores this access token into the HDD 124 in association with the identification information on the multi-function peripheral 100 included in the registration request. The multi-function peripheral in which the identification information and the access token are stored in association with each other is the multi-function peripheral registered in the server 120. When canceling the registration of the multi-function peripheral, the multi-function peripheral management unit 221 may delete this information from the HDD 124. Furthermore, the multi-function peripheral management unit 221 may register, in association with the multi-function peripheral 100, the user identification information related to the registration request. The user identification information related to the registration request may be the user credential received in S512, or may be other information.
The multi-function peripheral management unit 221 transmits the generated access token to the multi-function peripheral 100 (corresponding to S402 in
In S502, the registration request unit 203 of the multi-function peripheral 100 determines whether registration of the multi-function peripheral 100 is successful. When determining that the registration of the multi-function peripheral 100 is successful (“YES” in S502), the registration request unit 203 shifts the process to S503, and otherwise (“NO” in S502), shifts the process to S504. Based on reception of the access token from the server 120, the registration request unit 203 may determine that the registration of the multi-function peripheral 100 is successful. Based on reception of the error notification from the server 120, the registration request unit 203 may determine that the registration of the multi-function peripheral 100 has failed.
In S503, the multi-function peripheral 100 stores the access token received from the server 120 into the HDD 104. Specifically, the registration request unit 203 passes, to the transfer unit 204, the access token received from the server 120, and instructs the transfer unit 204 to store the access token in the RAM 103 (corresponding to S403 in
In S504, the registration request unit 203 of the multi-function peripheral 100 may display, on the operation panel 112, an error message indicating that the registration of the multi-function peripheral 100 has failed.
Next, the connection operation 410 will be described with reference to
In S601, the transfer unit 204 of the multi-function peripheral 100 transmits, to the server 120, a request for establishing a connection between the multi-function peripheral 100 and the server 120 (corresponding to S411 in
The connection request may include identification information on the multi-function peripheral 100 and an access token. The identification information on the multi-function peripheral 100 may be the same as the identification information included in the registration request transmitted in S501. The access token may be the access token received in S502 and stored in the HDD 104.
The connection established between the server 120 and the multi-function peripheral 100 is maintained semi-permanently. For example, this connection is maintained unless the multi-function peripheral 100 or the server 120 is powered off or explicitly disconnected from the user of the system 10. Therefore, in the following description, this connection is called a constant connection.
The connection request may explicitly or implicitly include an indication indicating that the server 120 is prohibited from disconnecting the connection between the multi-function peripheral 100 and the server 120. For example, this indication may be that the connection request includes the identification information on the multi-function peripheral 100 and the access token. Alternatively, the connection request may include a flag indicating that the server 120 is prohibited from disconnecting the connection between the multi-function peripheral 100 and the server 120.
In S611, the transfer unit 222 of the server 120 determines whether a connection request has been received from the multi-function peripheral 100. When determining that the connection request has been received from the multi-function peripheral 100 (“YES” in S611), the transfer unit 222 shifts the process to S612, and otherwise, repeats S611 (“NO” in S611).
In S612, the transfer unit 222 of the server 120 determines whether the multi-function peripheral 100 that has transmitted the connection request is registered in the server 120. When determining that the multi-function peripheral 100 that has transmitted the connection request is registered in the server 120 (“YES” in S612), the transfer unit 222 shifts the process to S613, and otherwise (“NO” in S612), shifts the process to S614. Specifically, the transfer unit 222 may inquire of the multi-function peripheral management unit 221 whether the multi-function peripheral 100 that has transmitted the connection request is registered in the server 120 (corresponding to S412 in
In S613, the transfer unit 222 of the server 120 establishes a constant connection between the multi-function peripheral 100 and the server 120 based on the multi-function peripheral 100 being registered in the server 120 (corresponding to S414 in
In S602, the transfer unit 204 of the multi-function peripheral 100 determines whether establishment of the constant connection is successful. When determining that the establishment of the constant connection is successful (“YES” in S602), the transfer unit 204 shifts the process to S603, and otherwise (“NO” in S602), shifts the process to S604. Based on notification of connection completion from the server 120, the transfer unit 204 may determine that the establishment of the constant connection is successful. Based on reception of the error notification from the server 120, the transfer unit 204 may determine that the establishment of the constant connection has failed.
In S603, the transfer unit 204 of the multi-function peripheral 100 maintains the constant connection. That is, the multi-function peripheral 100 does not disconnect the constant connection during operation. In S604, the transfer unit 204 of the multi-function peripheral 100 may display, on the operation panel 112, an error message indicating that the establishment of the constant connection has failed. When the method of
Next, the service provision operation 420 will be described with reference to
In S701, the browser 231 of the PC 130 transmits, to the server 120, a request for the list of multi-function peripherals registered in the server 120 (corresponding to S421 in
In step S711, the multi-function peripheral management unit 221 of the server 120 determines whether a list request has been received from the PC 130. When determining that the list request has been received from the PC 130 (“YES” in S711), the multi-function peripheral management unit 221 shifts the process to S712, and otherwise (“NO” in S711), shifts the process to S713.
In S712, the multi-function peripheral management unit 221 of the server 120 responds to the PC 130 with the list of multi-function peripheral registered in the server 120 (corresponding to S422 in
The multi-function peripheral management unit 221 may respond to the PC 130 with a list of all the multi-function peripherals registered in the server 120. Alternatively, the multi-function peripheral management unit 221 may respond with a list of, among the multi-function peripherals registered in the server 120, multi-function peripheral registered in association with the user identification information acquired in relation to the list request. In this case, the user of the PC 130 can acquire information on only the multi-function peripheral registered by the user. What list the server 120 to respond with may be set in advance and stored in the HDD 124.
In step S702, the browser 231 of the PC 130 displays, onto the display of the PC 130, a screen including the list received from the server 120. An example of such a screen 320 will be illustrated with reference to
Processing when a button 332 is pressed in a state where any one of the multi-function peripherals is selected with a radio button of the graphics object 321 will be described. In the following description, it is assumed that the multi-function peripheral 100 is selected. In S703, the browser 231 of the PC 130 transmits, to the server 120, a request for connecting to the web server function (e.g., the remote setting function) of the multi-function peripheral 100 (corresponding to S423 in
In step S713, the transfer unit 222 of the server 120 determines whether a service request has been received from the PC 130. When determining that the service request has been received from the PC 130 (“YES” in S713), the transfer unit 222 shifts the process to S714, and otherwise (“NO” in S713), shifts the process to S715. At the time of execution of S713, the constant connection is in a state of being established.
In S714, the transfer unit 222 of the server 120 transfers, to the multi-function peripheral 100 through the constant connection, the service request received from the PC 130 (corresponding to S424 in
In S721, the transfer unit 204 of the multi-function peripheral 100 determines whether a service request has been received from the server 120 through the constant connection. When determining that the service request has been received from the server (“YES” in S721), the transfer unit 204 shifts the process to S722, and otherwise, repeats S721 (“NO” in S721).
In S722, the multi-function peripheral 100 transmits a service response to the server 120 in response to the service request. The service response may be a response by HTTPS. The multi-function peripheral 100 may transmit this service response through the constant connection.
Specifically, the transfer unit 204 of the multi-function peripheral 100 transmits the service request to the web server function of the setting management unit 201 by local loopback connection in the multi-function peripheral 100 (corresponding to S425 in
In S715, the transfer unit 222 of the server 120 determines whether a service response has been received from the multi-function peripheral 100 through the constant connection. When determining that the service response has been received from the multi-function peripheral 100 (“YES” in S715), the transfer unit 222 shifts the process to S716, and otherwise (“NO” in S715), shifts the process to S711.
In S716, the transfer unit 222 of the server 120 transfers, to the PC 130, the service response received from the multi-function peripheral 100 (corresponding to S428 in
According to the above-described method, even when the port of the web server function of the multi-function peripheral 100 is closed, the web server function of the multi-function peripheral 100 can return a response to the request via the server 120. Therefore, even when the multi-function peripheral 100 is disposed in a LAN-less environment, the web server function of the multi-function peripheral 100 can be provided to the PC 130 with the port remaining closed (i.e., while security remaining improved). For example, even when the PC 130 is connected to a network different from that of the multi-function peripheral 100, if the PC 130 can access the server 120, the PC 130 can use the web server function of the multi-function peripheral 100, and convenience is improved.
Since the server 120 receives the service request from the PC 130 in the state where the constant connection is established, the service request can be quickly transferred to the multi-function peripheral 100. Furthermore, since the web server function of (e.g., the setting management unit 201) of the multi-function peripheral 100 can be used as it is, a process of providing the web server function by a client operation is no longer necessary, and it is possible to suppress an extra maintenance cost for a developer.
In the above-described embodiment, the multi-function peripheral 100 provides the web server function, and the PC 130 performs HTTPS communication with the multi-function peripheral 100 via the server 120. Alternatively, the multi-function peripheral 100 may provide a server function in accordance with another protocol, and the PC 130 may use the server function of the multi-function peripheral 100 with another protocol via the server 120. For example, a network apparatus management client operating on the PC 130 may acquire information from the multi-function peripheral 100 via the server 120 by a simple network management protocol (SNMP).
In the above-described method, S421 and S422 in
A system 80 according to the second embodiment will be described with reference to
The system 80 is different from the system 10 in including a multi-function peripheral 800 in place of the multi-function peripheral 100. Similarly to the first embodiment, the system 80 may include a plurality of multi-function peripherals or other devices, and among others, may include both the multi-function peripheral 100 and the multi-function peripheral 800.
The multi-function peripheral 800 is different from the multi-function peripheral 100 in including a plurality of network I/Fs. In the example of
The network I/F 801 may communicate with the access point 802 in a wired manner or in a wireless manner. The network I/F 105 may be treated as a main network I/F, and the network I/F 801 may be treated as a sub-network I/F. Alternatively, the network I/F 105 may be treated as a sub-network I/F, and the network I/F 801 may be treated as a main network I/F.
An example of a screen generated by the system 80 will be described with reference to
A screen 910 of
The graphics object 911 is used for acquiring, from the user, setting as to whether to enable a web server function (e.g., the remote setting function) to a service request transmitted to the multi-function peripheral 800 not via the constant connection. When ON is selected with the graphics object 911, the setting management unit 201 disables the web server function to the service request transmitted to the multi-function peripheral 800 not via the constant connection. When OFF is selected with the graphics object 911, the setting management unit 201 enables the web server function to the service request transmitted to the multi-function peripheral 800 not via the constant connection.
The settings made on the screens 900 and 910 may be stored in the HDD 104 and used in subsequent processing. For example, in response to the power of the multi-function peripheral 800 being turned on, the setting management unit 201 may read the setting related to the remote setting function stored in the HDD 104 and set the server port in accordance with this setting. The graphics object 911 may be used in the first embodiment. That is, a multi-function peripheral including one network I/F 105 such as the multi-function peripheral 100 may be settable as to whether to enable the web server function to a service request transmitted to the multi-function peripheral 800 not via the constant connection.
Whether the service request to the web server function can be made by the above setting is summarized in Table 1 below.
When the remote setting function is set to be disabled, the setting management unit 201 disables the server port for receiving a remote request to the remote setting function. As described above, the remote setting function is set to be disabled by the button 302 on the screen 900. In this case, it is not possible to perform both a service request via the constant connection and a service request not via the constant connection.
When the remote setting function is set to be enabled, the setting management unit 201 enables the server port for receiving a remote request to the remote setting function. As described above, the remote setting function is set to be enabled by the button 301 on the screen 900. In this case, a service request not via the constant connection is possible. When the remote setting function is enabled and the server 120 is not registered on the screen 910, the constant connection is not established. Therefore, it is not possible to perform a service request via the constant connection.
When the remote setting function is enabled and the server 120 is registered on the screen 910, the constant connection is established. Therefore, a service request via the constant connection is possible.
When it is set on the screen 910 to disable the web server function to the service request transmitted to the multi-function peripheral 800 not via the constant connection, it is not possible to perform a service request not via the constant connection. When it is set on the screen 910 to enable the web server function to the service request transmitted to the multi-function peripheral 800 not via the constant connection, a service request not via the constant connection is possible.
For example, when it is desired to use the remote setting function with priority given to performance in an on-premises environment, the remote setting function may be set to be enabled for the network I/F 105, and the multi-function peripheral 800 needs not be registered in the server 120. This can restrict the PC 130 connected to the network 140 so as to make a service request not via the constant connection. On the other hand, the remote setting function may be set to be enabled for the network I/F 801 connected to the Internet 803, the multi-function peripheral 800 may be registered in the server 120, and a service request not via the constant connection may be set to be disabled. This improves security.
Subsequently, the operation of the system 80 will be described with reference to
In S1101, the setting management unit 201 of the multi-function peripheral 800 determines whether the remote setting function is enabled. When determining that the remote setting function is enabled (“YES” in S1101), the setting management unit 201 shifts the process to S1102, and otherwise, ends the processing (“NO” in S1101). When the remote setting function is disabled, the setting management unit 201 may discard the received remote request.
In S1102, the setting management unit 201 of the multi-function peripheral 800 determines whether the remote setting function is enabled to a service request not via the constant connection. When determining that the remote setting function is enabled to the service request not via the constant connection (“YES” in S1102), the setting management unit 201 shifts the process to S1103, and otherwise (“NO” in S1102), shifts the process to S1104.
In S1103, the setting management unit 201 of the multi-function peripheral 800 responds to the remote request. For example, the setting management unit 201 responds to the PC 130 with a screen for setting the multi-function peripheral 800.
In S1104, the setting management unit 201 of the multi-function peripheral 800 returns, to the PC 130, a response for redirecting the PC 130 to the server 120 (corresponding to S1002 in
In the above-described embodiment, whether to enable the remote setting function to a service request not via the constant connection is set in response to a user instruction. When any network I/F is set to connect to a LAN-less environment (i.e., when the remote setting function is set to be disabled to a service request transmitted to the multi-function peripheral 800 not via the constant connection), the setting management unit 201 of the multi-function peripheral 800 may automatically enable the remote setting function to the service request transmitted to the multi-function peripheral 800 via the constant connection for this network I/F. For example, when all the server ports (well known ports) of the multi-function peripheral 800 are set to be closed, the setting management unit 201 of the multi-function peripheral 800 may automatically enable the remote setting function to the service request transmitted to the multi-function peripheral 800 via the constant connection.
Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2024-004117, filed Jan. 15, 2024, which is hereby incorporated by reference herein in its entirety.
| Number | Date | Country | Kind |
|---|---|---|---|
| 2024-004117 | Jan 2024 | JP | national |