This application is based on Japanese Patent Application No. 2007-154356 filed with the Japan Patent Office on Jun. 11, 2007, the entire content of which is hereby incorporated by reference.
1. Field of the Invention
The present invention relates to an image forming apparatus, a method of managing usage and a usage amount in the image forming apparatuses, and a computer readable recording medium recording a management program. The present invention particularly relates to an image forming apparatus having a medium attachable thereto and removable therefrom, a method of managing usage and a usage amount in each of the image forming apparatuses, and a computer readable recording medium recording a management program for managing usage and a usage amount in each of the image forming apparatuses.
2. Description of the Related Art
In the case where an image forming apparatus such as a Multi Function Peripheral (MFP) placed in an office environment is shared for use by a plurality of users, there is often adopted a method of registering in advance with the image forming apparatus and managing users permitted to use the image forming apparatus, as well as functions, a number of sheets to be printed (a number of sheets to be used) and others each of the users is permitted to use. By doing so, it is possible to permit only a user successfully authenticated to use the image forming apparatus, or to manage a count such as a number of sheets used by the relevant user.
As a method of managing usage and a usage amount in such an image forming apparatus in a usage state where a medium such as Universal Serial Bus (USB) memory is mounted thereon to output information in the medium or write scanned image data to the medium, Japanese Laid-Open Patent Publication No. 2006-092115 (hereinafter referred to as Patent Document 1) discloses a method of transmitting data to be printed to an MFP, and at the same time, automatically generating confidential printing control data including a password and storing the same in the USB memory, and specifying the transmitted data based on the stored data when the USB is mounted on the MFP.
However, assume the case where the above-described management is adopted in an image forming apparatus, and that a user intends to use an image forming apparatus such as an MFP in another place, with which the user is not registered. Even if a medium to be used stores the above-described control data, there is required an operation such as registering the user with the relevant image forming apparatus and setting limiting information appropriate to the relevant user, if desired. Accordingly, there arises a problem of poor usability.
Furthermore, if a user registered himself/herself with an image forming apparatus as described above to use the relevant image forming apparatus, information relating to management of the relevant user, such as a counter indicative of a number of used sheets, is not associated with information relating to management in an image forming apparatus usually used by the relevant user. Accordingly, in the case where a user's usage of an image forming apparatus is under collective management by a server or the like, for example, and if an image forming apparatus not under the management is used, there also arises a problem of failure in appropriate management thereof.
The present invention has been made in view of these problems. An object of the present invention is to provide an image forming apparatus allowing easy management relating to a user's usage without requiring any complicated operation, a method of managing usage and a usage amount in each of the image forming apparatuses, and a computer readable recording medium recording a management program for managing usage and a usage amount in each of the image forming apparatuses.
To achieve the above-described object, according to an aspect of the present invention, an image forming apparatus includes: a user information obtaining unit obtaining user information of a user logging into the image forming apparatus; a retaining unit retaining information specific to a mounted medium in association with the user information; a creation unit creating a first authentication key by encrypting the user information; a write unit writing to the medium the first authentication key and information for specifying the image forming apparatus; an authentication information obtaining unit obtaining authentication information from another image forming apparatus; a decode unit decoding a second authentication key included in the authentication information; a comparison unit making comparison, based on user information obtained by decoding the second authentication key, between the information specific to the medium and retained by the retaining unit in association with the user information obtained by decoding the second authentication key, and information specific to a medium and included in the authentication information; and an output unit outputting a result of the comparison to the other image forming apparatus.
According to another aspect of the present invention, an image forming apparatus includes: a read unit reading information for specifying another image forming apparatus and an authentication key from a mounted medium; a request unit requesting authentication from the other specified image forming apparatus by transmitting thereto information specific to the medium and the authentication key, as authentication information; an authentication result obtaining unit obtaining a result of the authentication from the other image forming apparatus; and a presentation unit presenting a specific function in a selectable manner, based on information included in the result of the authentication.
According to still another aspect of the present invention, a method of managing usage and a usage amount in each of image forming apparatuses is a method of managing usage and a usage amount by a user in each of a first image forming apparatus and a second image forming apparatus, and includes the steps of: obtaining user information of the user logging into the first image forming apparatus, in the first image forming apparatus; retaining information specific to a medium mounted on the first image forming apparatus, in the first image forming apparatus in association with the user information; creating an authentication key by encrypting the user information in the first image forming apparatus; writing the authentication key and information for specifying the first image forming apparatus to the medium in the first image forming apparatus; reading the authentication key and the information for specifying the first image forming apparatus from the medium mounted on the second image forming apparatus, in the second image forming apparatus; requesting authentication from the first image forming apparatus by transmitting thereto the information specific to the medium mounted on the second image forming apparatus and the authentication key, as authentication information, in the second image forming apparatus; decoding the authentication key transmitted from the second image forming apparatus, in the first image forming apparatus; making a comparison in the first image forming apparatus, based on user information obtained by decoding the authentication key, between the information specific to the medium and retained in association with the user information obtained by decoding the authentication key, and information specific to the medium and included in the authentication information; outputting a result of the comparison as a result of the authentication from the first image forming apparatus to the second image forming apparatus; and presenting a specific function in a selectable manner in the second image forming apparatus, based on information included in the result of the authentication from the first image forming apparatus.
According to a further aspect of the present invention, a computer readable recording medium recording a management program records a management program for allowing a computer to manage usage and a usage amount by a user in each of a first image forming apparatus and a second image forming apparatus, and the management program allows the computer to execute the steps of: obtaining user information of the user logging into the first image forming apparatus, in the first image forming apparatus; retaining information specific to a medium mounted on the first image forming apparatus, in the first image forming apparatus in association with the user information; creating an authentication key by encrypting the user information in the first image forming apparatus; writing the authentication key and information for specifying the first image forming apparatus to the medium in the first image forming apparatus; reading the authentication key and the information for specifying the first image forming apparatus from the medium mounted on the second image forming apparatus, in the second image forming apparatus; requesting authentication from the first image forming apparatus by transmitting thereto the information specific to the medium mounted on the second image forming apparatus and the authentication key, as authentication information, in the second image forming apparatus; decoding the authentication key transmitted from the second image forming apparatus, in the first image forming apparatus; making a comparison in the first image forming apparatus, based on user information obtained by decoding the authentication key, between the information specific to the medium and retained in association with the user information obtained by decoding the authentication key, and information specific to the medium and included in the authentication information; outputting a result of the comparison as a result of the authentication from the first image forming apparatus to the second image forming apparatus; and presenting a specific function in a selectable manner in the second image forming apparatus, based on information included in the result of the authentication from the first image forming apparatus.
The foregoing and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.
An embodiment of the present invention will hereinafter be described with reference to the drawings. In the following description, the same parts and components have the same reference characters attached thereto, and have the same names and functions as well.
An image forming apparatus according to the present invention corresponds to a copy machine, a printer, a Multi Function Peripheral (MFP) identified as a complex device thereof, or the like, on which an attachable and removable recording medium (hereinafter referred to as “medium”) such as Universal Serial Bus (USB) memory can be mounted. In the present embodiment, an image forming apparatus is an MFP. In the following description, an MFP 1 is an MFP with which a user is registered, while an MFP 2 is an MFP with which the user is not registered, and MFP 1 and MFP 2 are connected to each other in a wired or wireless manner. MFPs 1, 2 have the same hardware configuration.
With reference to
With reference to
User information storage unit 105 corresponds to a prescribed region in storage unit 13, and stores user information for each user. The user information includes information for identifying the relevant user, login information identified as authentication information for login, information for managing the relevant user's usage of MFP 1, and the like. In the present embodiment, the information for identifying a user is specifically a user name. However, other information may be used as long as it is information with which the user can be identified. In the present embodiment, the login information is specifically a password. However, other information may be used as long as it is information that can be used for an authentication process. Furthermore, the login information may include the information for identifying the user. The information for managing the relevant user's usage of MFP 1 specifically corresponds to information indicating to the relevant user permission/non-permission to use a function of MFP 1, information for limiting usage such as limited number of sheets or usage authorization, and the like. In the following description, information corresponding to a user and relating to a function the relevant user is permitted to use, information corresponding to a user for limiting usage of the function, and the like are referred to as “permitted function information” of the relevant user.
Cryptographic key storage unit 111 corresponds to a prescribed region in storage unit 13, and stores a public key identified as a cryptographic key specific to MFP 1 and made public on a network, and a private key not made public on the network. The public key is stored in the prescribed region described above in a region accessible by a user operation, and can be obtained by a user operation. The private key is stored in the prescribed region described above in a region, access to which is not permitted by a user operation, and can be obtained not by a user operation, but by a decoding process in MFP 1, which will be described below. Practical forms of the public key and the private key are not limited in the present invention, and any key may be used as long as it is used in a known encryption and decoding technique.
Login information obtaining unit 101 obtains login information from an operation signal based on a user's login operation, by displaying a login screen on operating panel 17, or the like. The obtained login information is passed to user information obtaining unit 103. User information obtaining unit 103 searches user information storage unit 105 based on the login information, and obtains user information of the relevant user.
When instruction input unit 107 receives a user operation for creating an authentication key described below with the use of operating panel 17, it inputs to creation unit 109 an operation signal indicating the user operation for creating an authentication key. Creation unit 109 creates an authentication key in accordance with the operation signal. At that time, creation unit 109 obtains user information of the relevant user from user information obtaining unit 103 and obtains a public key from cryptographic key storage unit 111, to use them to create the authentication key. The created authentication key is written to medium 3 mounted on MFP 1, by write unit 113.
Authentication information obtaining unit 115 obtains authentication information, which will be described below, transmitted from MFP 2 serving as an authenticated side that requests authentication, and passes it to authentication unit 117. Authentication unit 117 executes an authentication process, which will be described below, based on the authentication information. At that time, authentication unit 117 obtains user information of the relevant user from user information obtaining unit 103, obtains a private key from cryptographic key storage unit 111, and obtains a hash value, which will be described below, retained in creation unit 109, for using them in the authentication process. If a result of the authentication and the authentication are successful, necessary information is output from output unit 119 to MFP 2. Details of authentication unit 117 will be described below.
With reference to
When an authentication key is to be made, read unit 121 reads prescribed information from medium 3 mounted on MFP 1 and inputs it to calculation unit 123. Calculation unit 123 calculates information specific to medium 3 from the prescribed information of medium 3. Retaining unit 125 retains the calculated specific information in association with the user information obtained by user information obtaining unit 103. In the present practical example, the prescribed information read from medium 3 is file information identified as information of a file, such as a file name stored in medium 3, and directory information identified as information indicating a directory name, a directory configuration, or the like created in medium 3. Calculation unit 123 calculates a hash value identified as the information specific to medium 3 from these pieces of information. The prescribed information read from medium 3 is not limited to the file information and the directory information, and may be at least one of them. Furthermore, the information specific to medium 3 is not limited to the hash value calculated from the file information and the directory information. A serial number, an identifier, or the like may directly be used therefor without calculation by calculation unit 123. Alternatively, there may be used a value uniquely calculated by calculation unit 123 from other information stored in medium 3.
Public key obtaining unit 127 obtains a public key from cryptographic key storage unit 111 and inputs it to encrypting unit 129. Function-to-be-used obtaining unit 131 obtains a function selected as a function to be used by a user in MFP 2, from the operation signal received from operating panel 17, and inputs to encrypting unit 129 a signal indicative of obtainment of the function. In the following description, information indicating a function selected as a function to be used by a user in MFP 2 is referred to as function-to-be-used information. Encrypting unit 129 encrypts a user name included in the user information obtained by user information obtaining unit 103 and the input function-to-be-used information by using the public key, to thereby create an authentication key. The user name included in the authentication key may be any information as long as it is information with which the relevant user can be specified in MFP 1. Instead of the user name, there may also be used a password, an identification number, or the like with which the relevant user can be specified. Alternatively, the user information itself may be used.
Write unit 113 writes to medium 3 the created authentication key, along with the information for specifying MFP 1 stored in the prescribed region in storage unit 13. The information for specifying MFP 1 may be any information that enables access to MFP 1. In the following description, the information for specifying MFP 1 is network information (e.g. an IP address or the like) identified as access information. As another practical example, the information for specifying MFP 1 may be a machine name with which MFP 1 can uniquely be specified on the network.
A process of creating an authentication key in MFP 1 as shown in a flowchart in
With reference to
If an option “CREATE AUTHENTICATION KEY” is selected on the screen in
If CPU 11 detects that medium 3 is mounted on MFP 1 (YES in step S109), calculation unit 123 calculates a hash value from the file information and the directory information read from medium 3 by read unit 121 (step S111). If CPU 11 does not detect that that medium 3 is mounted (NO in step S109), CPU 11 draws a screen representing a warning to mount medium 3 on MFP 1 for display, and allows operating panel 17 to display the screen (step S113). The calculated hash value is retained in retaining unit 125 in association with the user information.
Furthermore, encrypting unit 129 encrypts a user name of the relevant user and function-to-be-used information obtained by accepting selection of a function to be used in step S105, with the use of the public key, to create an authentication key (step S115). At that time, CPU 11 monitors at prescribed intervals a degree of completion of the encryption performed by encrypting unit 129, calculates the rate thereof, draws a screen representing a degree of creation of the authentication key as shown in
The created authentication key is written by write unit 113 to medium 3, along with the network information of MFP 1, such as an IP address or the like of MFP 1, stored in the prescribed region in storage unit 13 (step S117). When the creation of the authentication key as such is completed, CPU 11 draws a screen indicating that the creation of the authentication key is completed and that medium 3 can be removed as shown in
With reference to
Medium detection unit 201 detects that medium 3 is mounted on MFP 2, and outputs a detection signal to read unit 203. In accordance with the detection signal, read unit 203 reads from medium 3 the network information of MFP 1 and the authentication key stored in medium 3 through the above-described processes in MFP 1, and the file information and the directory information of medium 3. The file information and the directory information of medium 3 are input to calculation unit 205, and calculation unit 205 in turn calculates a hash value from these pieces of information. The network information of MFP 1 and the authentication key are input to authentication request unit 207. The hash value calculated by calculation unit 205 is also input to authentication request unit 207.
Authentication request unit 207 gains access to MFP 1 based on the input network information of MFP 1, transmits to MFP 1 the input authentication key and hash value as authentication information, and requests authentication from MFP 1.
Authentication result obtaining unit 209 obtains an authentication result from MFP 1. Function information obtaining unit 211 obtains, from the authentication result, permitted function information of the relevant user and the function-to-be-used information indicating a function selected in step S105, and inputs these pieces of information to function presentation unit 213. Based on the permitted function information and the function-to-be-used information, which have been input, function presentation unit 213 generates a signal for executing a process for allowing operating panel 17 to display available functions, and displaying the functions. Function selection unit 215 receives an operation signal from operating panel 17 based on a user operation in accordance with the screen, and accepts selection of a function to be used. Counter unit 217 counts a usage amount of the function, and counter processing unit 219 executes a process based on the count in counter unit 217, as described below. The usage amount counted by counter unit 217 corresponds to, for example, a number of printed sheets in the case where the selected function is a print function or a copy function, and corresponds to a number of transmission destinations in the case where the selected function is a data transmission function.
Each of
With reference to
As a result of the process in step S207, if authentication is successfully completed in MFP 1 (YES in step S209), an authentication result including permitted function information of a user who has been registered with MFP 1 and intends to use medium 3 in MFP 2, and the function-to-be-used information indicating the function selected in step S1105, is obtained from MFP 1 identified as the authenticating side in the authentication process, which will be described below. Accordingly, as shown in
When function selection unit 215 accepts selection out of the available functions, a process corresponding to the function is executed (step S213). For example, if the USB print function is selected on the screen in
When use of the function is completed, counter processing unit 219 executes a process for transmitting a usage counter identified as the usage amount counted by counter unit 217 to MFP 1 serving as an authenticating side (step S215). If the transmission is not successfully completed (NO in step S217), counter processing unit 219 saves the usage counter in medium 3 (step S219).
The processes in steps S213-S219 are repeated until log out of the relevant user is detected. When the log out is detected (YES in step S221), a series of processes is terminated and returns to a login screen display. If mounting of medium 3 is not detected in step S201 (NO in step S201), if mounted medium 3 fails to store network information of MFP 1 and an authentication key in step S203 (NO in step S203), or if a response indicating authentication failure is received from MFP 1 serving as an authenticating side in response to the authentication request in the authentication process in step S207 (NO in step S209), a series of processes is also terminated without executing subsequent processes.
With reference to
Subsequently, if an authentication result received in step S305 from MFP 1 serving as an authenticating side is a result indicating successful authentication (YES in step S307), function information obtaining unit 211 obtains the relevant user's permitted function information and function-to-be-used information in MFP 1 included in the authentication result, and retains the same (step S309). Then “successful authentication” is returned to a main routine as an authentication result (step S311). In contrast, if the authentication result received in step S305 from MFP 1 serving as an authenticating side is a result not indicating successful authentication (NO in step S307), “authentication failure” is returned to the main routine as an authentication result (step S313).
With reference to
Private key obtaining unit 301 obtains a private key from cryptographic key storage unit 111 and passes it to decoding unit 305. Decoding unit 305 uses the private key to decode the authentication key included in the authentication information from MFP 2, which has been obtained by authentication information obtaining unit 115. A user name obtained by decoding the authentication key is input to hash value obtaining unit 303.
Hash value obtaining unit 303 obtains from retaining unit 125 a hash value retained in association with the input user name, and inputs it to comparison unit 307. Comparison unit 307 compares the input hash value and the hash value included in the authentication information transmitted from MFP 2, which has been obtained by authentication information obtaining unit 115.
If both of the hash values match with each other as a result of the comparison by comparison unit 307, permitted function information obtaining unit 309 obtains permitted function information of the relevant user from the user information of the relevant user obtained by user information obtaining unit 103 from user information storage unit 105, as “successful authentication”. If the authentication is successfully completed, output unit 119 transmits permitted function information of the relevant user and function-to-be-used information obtained by decoding the authentication key, along with the authentication result indicating “successful authentication”, to MFP 2, which has requested the authentication.
If both of the hash values fail to match with each other as a result of the comparison by comparison unit 307, output unit 119 transmits an authentication result indicating “authentication failure” to MFP 2.
With reference to
If both of the hash values match with each other as a result of the comparison in step S405 (YES in step S407), permitted function information obtaining unit 309 obtains permitted function information from the user information of the relevant user obtained by user information obtaining unit 103. Output unit 119 notifies MFP 2, which serves as an authenticated side requesting authentication, of the permitted function information obtained, along with the function-to-be-used information obtained by decoding the authentication key in step S405 (step S409). Furthermore, output unit 119 also notifies MFP 2 of an authentication result indicating “successful authentication” (step S411).
If these hash values fail to match with each other as a result of the comparison in step S405 (NO in step S407), output unit 119 notifies MFP 2 of an authentication result indicating “authentication failure” (step S413).
By executing the above-described processes in MFP 1 and MFP 2 according to the present embodiment, a user's usage of an MFP on which medium 3 is mounted is managed in MFP 1 and MFP 2, as shown in
If a user intends to use MFP 2 with which the user is not registered, medium 3 is mounted on MFP 1 with which the user is registered, to instruct MFP 1 to create an authentication key.
With reference to an upper drawing in
The user removes medium 3 from MFP 1 and mounted the same on MFP 2 with which the user is not registered, so that the authentication process is executed.
With reference to a lower drawing in
In the present embodiment, the authentication key identified as data encrypted as authentication information and read from medium 3, is transmitted from MFP 2 to MFP 1 without being decoded in MFP 2. In other words, the user name, the function-to-be-used information, and the like are not transmitted on the network without being encrypted. Accordingly, it is possible to more effectively prevent leakage of information such as a user name or function-to-be-used information, when compared with a process of decoding the authentication key in MFP 2 and transmitting the user name or the like to MFP 1 for requesting authentication.
In MFP 1, from which authentication is requested, the processes in steps S401 and S403 are executed, so that the authentication key is decoded and a user name is obtained, and there is made a comparison between the hash value retained in MFP 1 in association with the user name obtained in step S405 and the hash value transmitted from MFP 2 (step S6). Consequently, an authentication result indicating “successful authentication” is transmitted to MFP 2 in step S411 if both of the hash values match with each other, or an authentication result indicating “authentication failure” is transmitted to MFP 2 in step S413 if both of the hash values fail to match with each other (step S7). Furthermore, in the case of “successful authentication”, permitted function information of the relevant user is obtained from the user name obtained by decoding the authentication key, and transmitted to MFP 2 along with the authentication result.
If the authentication result in MFP 1 is “successful authentication”, the process in step S211 is executed in MFP 2. Based on the function-to-be-used information and the permitted function information of the relevant user transmitted along with the authentication result, an available function is presented and the user is permitted to use the function (step S8). Accordingly, if the user intends to use MFP 2 with which the user is not registered, he/she is only required to perform an operation of mounting on MFP 2 medium 3 storing an authentication key created in advance, and is not required to perform a complicated operation for registering himself/herself with MFP 2.
In MFP 2, the process in step S215 is further executed, so that when a selected function is used, a usage amount thereof is counted and MFP 1 is notified of a usage counter (step S8). At that time, if transmission to MFP 1 is not successfully completed, the step in step S219 is executed so that the usage counter is written to medium 3 mounted on MFP 2. By allowing MFP 1, with which the relevant user is registered, to be notified of a usage counter, the relevant user's usage of an MFP can be managed in MFP 1, while usage in MFP 2 is also considered. Specifically, it is possible in MFP 1 to store the received usage counter in MFP 2, in addition to the usage counter in MFP 1, which has already been stored as user information. Furthermore, if the transmission above is not successfully completed, medium 3 stores the usage counter. Accordingly, if the relevant user uses medium 3 in MFP 1, MFP 1 obtains the usage counter in MFP 2 from medium 3 so that it is possible to manage the relevant user's usage of an MFP as in the case where the usage counter is transmitted from MFP 2.
Furthermore, it is also possible to provide a program allowing a computer to execute the processes for implementing a method of creating an authentication key in MFP 1, a method of managing usage and a usage amount in MFP 2, and an authentication method in MFP 1, as described above. Such a program may also be provided as a program product in which the program is recorded in a computer readable recording medium such as a flexible disk, Compact Disk-Read Only Memory (CD-ROM), Read Only Memory (ROM), RAM, or a memory card attached to the computer. Alternatively, the program may also be provided by being recorded in a recording medium such as a hard disk embedded in the computer. Alternatively, the program may also be provided by being downloaded through a network.
The program according to the present invention may be the one invoking a necessary module in a prescribed order and at prescribed timing, out of program modules provided as a part of an operation system (OS) of the computer, and allowing the necessary module to execute a process. In that case, the program itself does not include the above-described module, and the program cooperates with the OS to execute a process. Such a program that does not include a module can also be included in the program according to the present invention.
Alternatively, the program according to the present invention may be provided by being incorporated in a part of another program. In that case, the program itself does not include a module included in other program above, and the program cooperates with other program to execute a process. Such a program incorporated in another program can also be included in the program according to the present invention.
The program product to be provided is installed in a program storage unit such as a hard disk for execution. The program product includes a program itself and a recording medium that records the program.
Although the present invention has been described and illustrated in detail, it is clearly understood that the same is by way of illustration and example only and is not to be taken by way of limitation, the scope of the present invention being interpreted by the terms of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
2007-154356 | Jun 2007 | JP | national |