Abstract:
A non-transitory computer readable medium stores a program causing a computer to execute a process, the process including: receiving input of a distribution destination for a document; retaining an image in a retention unit in correspondence with information on the distribution destination received by the receiving and information on a retention start time point, the image representing the document; acquiring information on an image retention period corresponding to the distribution destination; and deleting the image retained in the retention unit from the retention unit after the image retention period acquired by the acquiring for the corresponding distribution destination has elapsed since the corresponding retention start time point.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2015-124049 filed Jun. 19, 2015. 
       BACKGROUND 
     (i) Technical Field 
       [0002]    The present invention relates to an information processing apparatus and a non-transitory computer readable medium. 
       (ii) Related Art 
       [0003]    Image processing devices, such as a printer, a scanner, a facsimile device, a copier, and a multi-function device (a device that has functions of a printer, a scanner, a copier, etc. in combination), that process images and output the processed images in various formats, such as data and printed matter, are indispensable in modern business scenes. 
         [0004]    The image processing devices are drawing attention as one of passages of information leakage from organizations such as companies. In the related art, as countermeasures against information leakage from the image processing devices, the images processed by the image processing devices are retained together with information on a user who issued an instruction on the process and log information such as the processing date and time. 
         [0005]    It is impractical to retain log images permanently because the amount of image data is enormous, even if the image data are compressed, and there are a huge number of images processed by the image processing device. Thus, in the related art, a retention period is determined for the log images, and log images whose retention period has expired are deleted from a storage device. In general, the length of the retention period is determined to be constant by the system. 
       SUMMARY 
       [0006]    According to an aspect of the present invention, there is provided a non-transitory computer readable medium storing a program causing a computer to execute a process, the process including: receiving input of a distribution destination for a document; retaining an image in a retention unit in correspondence with information on the distribution destination received by the receiving and information on a retention start time point, the image representing the document; acquiring information on an image retention period corresponding to the distribution destination; and deleting the image retained in the retention unit from the retention unit after the image retention period acquired by the acquiring for the corresponding distribution destination has elapsed since the corresponding retention start time point. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0007]    An exemplary embodiment of the present invention will be described in detail based on the following figures, wherein: 
           [0008]      FIG. 1  illustrates an example of a system to which control according to an exemplary embodiment is applied; 
           [0009]      FIG. 2  illustrates an example of the content of information in distribution instructions; 
           [0010]      FIG. 3  illustrates an example of the configuration of a log recording device; 
           [0011]      FIG. 4  illustrates an example of information to be stored in a log information storage section; 
           [0012]      FIG. 5  illustrates an example of a retention period table; 
           [0013]      FIG. 6  illustrates an example of a process procedure performed by a print server; 
           [0014]      FIG. 7  illustrates an example of a process procedure performed by a deletion processing section of the log recording device; 
           [0015]      FIG. 8  illustrates an example of map information that indicates the group classification of distribution destinations; 
           [0016]      FIG. 9  illustrates another example of the process procedure performed by the deletion processing section; and 
           [0017]      FIG. 10  illustrates still another example of the process procedure performed by the deletion processing section. 
       
    
    
     DETAILED DESCRIPTION 
       [0018]    An example of a system configuration according to an exemplary embodiment will be described with reference to  FIG. 1 . In the following description, a system that prints a document to be distributed is taken as an example. In the following description, in addition, an occasion where documents such as design drawings and technical documents to be distributed to relevant in-house departments and external entities (e.g. cooperative companies and subcontractor companies) are printed is assumed as a specific example of scenes in which the system according to the exemplary embodiment is utilized. It should be noted, however, that this is merely an example for description, and the range of application of the present invention is not limited thereto. 
         [0019]    The system includes a client device  10 , a print server  20 , an image processing device  30 , and a log recording device  40 . The devices  10  to  40  are connected to a network  50  such as a local area network. 
         [0020]    The client device  10  is a device that issues a document distribution (print) instruction to the print server  20  in response to an instruction from a user. The client device  10  is constituted of a personal computer, for example. 
         [0021]    An example of the document distribution instruction sent from the client device  10  to the print server  20  is illustrated in  FIG. 2 . Each row of  FIG. 2  indicates information on one distribution instruction (i.e. four distribution instructions are illustrated in  FIG. 2 ). Each of the distribution instructions include information on an identification name (e.g. a file name) that specifies a document to be distributed (data for distribution) corresponding to the instruction, a print setting pattern, and the number of copies of the document to be output to each of distribution destinations. The print setting pattern is information on the print setting for each of the distribution destinations, and includes information such as the paper size and the content of post-processing (such as whether or not to be stapled and how to be bound) for each of the distribution destinations, for example. For example, in the example of  FIG. 2 , the number of copies of a “technical document C” to be output to a “distribution destination B” is “0”. This means that the “technical document C” is not distributed to (and thus not printed at) the “distribution destination B” (but printed at a “distribution destination A” and a “distribution destination C”, one copy each). 
         [0022]    The user who issues a distribution instruction designates a document to be distributed, designates distribution destinations of the document to be distributed, and designates the number of copies to be distributed to each of the distribution destinations on a setting screen displayed by the client device  10 . This causes the client device  10  to generate a distribution instruction for the document, and send the distribution instruction to the print server  20 . Designation of distribution destinations may be performed by selecting distribution destinations from candidates for distribution destinations registered in advance in the system (e.g. the print server  20 ), for example. 
         [0023]    The print server  20  executes a process for printing the document to be distributed in accordance with the distribution instruction from the client device  10 . For example, the print server  20  converts data on the document to be distributed received from the client device  10  into print data, and sends the print data to the image processing device  30  to cause the image processing device  30  to print the print data. 
         [0024]    The image processing device  30  (e.g. a printer) prints the document to be distributed in accordance with an instruction from the print server  20 . 
         [0025]    The log recording device  40  records log (process history) information on the process performed by the print server  20 . For log recording, the print server  20  prepares log information on the processes executed by the print server  20  itself, and transmits the log information to the log recording device  40 . 
         [0026]    In the system described herein in which the client device  10  issues an instruction to print a drawing or the like, a processing instruction from the user is inevitably sent to the print server  20  to be processed, and thus log information on the processes performed by the print server  20  is recorded. It should be noted, however, that for a system in which the user is assumed to directly issue a processing instruction to the image processing device  30  (e.g. the user is assumed to instruct a multi-function device as the image processing device  30  to copy or fax a document), log information on the processes executed by the image processing device  30  is also recorded in the log recording device  40 . In this case, the image processing device  30  prepares log information on the processes executed by the image processing device  30  itself, and transmits the log information to the log recording device  40 . 
         [0027]    The log information recorded in the log recording device  40  includes information such as the date and time when the process was performed, the user ID (identification information) of the user who issued an instruction on the process, the type of the process (such as print, scan, and facsimile transmission), process parameter information (e.g. the facsimile number or the mail address of the transmission destination), and an image (called “log image”) of the processed document. In the exemplary embodiment, information on the distribution destinations for the printed document is recorded as an item of the log information. 
         [0028]    The log information (including the log image) recorded in the log recording device  40  is utilized, in the case where a leak of a document printed by the system is revealed, for example, to locate the source of the leak (it should be noted, however, that such usage is merely exemplary). 
         [0029]    Next, the log recording device  40  will be described in further detail with reference to  FIG. 3 . The log recording device  40  illustrated in  FIG. 3  includes a record processing section  402 , a log information storage section  404 , a log image storage section  406 , a deletion processing section  408 , and a retention period table  410 . 
         [0030]    The record processing section  402  performs a process for storing the log information sent from the print server  20  (and also the log information sent from the image processing device  30  in the case where log recording is performed for the image processing device  30 ) in the log information storage section  404  and the log image storage section  406 . For example, the record processing section  402  provides unique identification information (called “log ID”) to the received log information, and registers the log image included in the log information in the log image storage section  406 , and registers items other than the log image in the log information storage section  404 , each in correspondence with the log ID. 
         [0031]    An example of the information to be stored in the log information storage section  404  is illustrated in  FIG. 4 . In the example, the log information storage section  404  stores, for each log information corresponding to one process, information on items such as the log ID, the retention start date, the distribution destination, and the user ID. The “retention start date” indicates the date when retention of the log image for the process related to the log information was started, which is equivalent to the date (e.g. month, day, and year) of the processing date and time included in the log information received from the print server  20  or the like. In the case where the processing date and time is stored in the log information storage section  404 , it is not necessary to separately store the retention start date. The “distribution destination” is information that indicates the distribution destinations for the document related to the log image, that is, information on the distribution destinations included in the log information. The “user ID” indicates the ID of the user who issued an instruction to distribute (print) the document, which is the user ID of the person who issued an instruction for the process included in the log information. Besides, the log information storage section  404  may store information on various items included in the log information from the print server  20 . The log image storage section  406  retains the log image included in the log information received from the print server  20  or the like in correspondence with the log ID. 
         [0032]    The deletion processing section  408  performs a process for deleting log images which are stored in the log image storage section  406  and whose retention expiration time has expired. In the related art, the length of the retention period of the log image is constant. In the exemplary embodiment, however, the length of the retention period is variable in accordance with the distribution destination for the document related to the log image. For example, the retention period is set to be longer for a distribution destination with a higher risk of leakage, or a distribution destination, for which it takes (or is assumed to take) a longer time before leakage is revealed. For example, as illustrated in  FIG. 5  to be discussed later, the retention period may be set to be longer for “external” distribution destinations than for “in-house” distribution destinations, considering that there is a higher risk of leakage for “external” distribution destinations, in which case (computers at) the distribution destinations and (computers at) the distribution source belong to different organizations, than for “in-house” distribution destinations, in which case (computers at) the distribution destinations and (computers at) the distribution source belong to the same organization. 
         [0033]    Information on the length of the retention period for each of the distribution destinations is held in the retention period table  410 .  FIG. 5  illustrates an example of the information held in the retention period table  410 . In the example of  FIG. 5 , the distribution destination and the length of the retention period corresponding to the distribution destination are set in the retention period table  410  in correspondence with a setting ID which is identification information on each record in the table. For example, the retention period of the log image is set to one year for a distribution destination named “in-house_QA Dept.” 
         [0034]    In determining whether or not the retention expiration time of the log image stored in the log image storage section  406  has expired, the deletion processing section  408  obtains, from the retention period table  410 , the retention period corresponding to the distribution destination for the document related to the log image. Then, the deletion processing section  408  calculates the retention expiration time by adding the retention period to the retention start date of the log image, determines whether or not the retention expiration time has expired, and deletes the log image from the log image storage section  406  if the retention expiration time has expired. 
         [0035]    Although the log recording device  40  is described as being constituted of a single device in the example, this is not necessary. Constituent elements that compose the log recording device  40  such as the record processing section  402  and the retention period table  410  may be disposed dispersedly on the network in two or more devices, and may implement the processing functions discussed above while communicating with each other by way of the network. In a possible system configuration, for example, plural log recording devices  40  (that do not include the retention period table  410 ) are provided on the network, and reference a common retention period table  410  on the network. 
         [0036]    Next, the flow of a process performed by the system according to the exemplary embodiment will be described. First, the flow of a process executed by the print server  20  will be described with reference to  FIG. 6 . 
         [0037]    When the print server  20  receives a distribution instruction from the client device  10  (S 10 ), the process in  FIG. 6  is started. In the example, the distribution instruction from the client device  10  includes information such as document data on the document to be distributed, the print setting pattern, and the number of copies to be output to each of the distribution destinations (see  FIG. 2 ). 
         [0038]    Next, the print server  20  determines whether or not there are any distribution destinations, for which the process in  FIG. 6  is yet to be performed, among the distribution destinations indicated in the received distribution instruction (S 12 ). If there are any distribution destinations for which the process in  FIG. 6  is yet to be performed, the print server  20  first generates print data on the distribution destination from the document data on the document to be distributed (S 14 ). For example, the print server  20  generates print data by processing the document data in accordance with the distribution destination. Examples of the processing include writing the name of the distribution destination at a predetermined location on each page of the document data (e.g. in a title field on each page of the design drawing). In the case where the image processing device  30  does not support the data format of the document data, a process for converting the document data into a data format supported by the image processing device  30  (e.g. the format of any page description language) may be executed in S 14 . Next, the print server  20  transfers the print data for the distribution destination generated in S 14  to the image processing device  30  as the output destination together with the number of copies to be output and the other print attributes (prescribed by the print setting pattern) corresponding to the distribution destination (S 16 ). The image processing device  30  performs printing on the basis of the transferred print data in accordance with the print attributes, and responds to the print server  20  with the result of the print process (such as whether successful or unsuccessful). The print server  20  acknowledges the result of the print process sent from the image processing device  30  (S 18 ). In an example, in the case where the result of the print process is successful, the print server  20  transfers log information on the process to the log recording device  40  (S 19 ). The transferred log information includes a log image that indicates the content of an image of the processed document data, information on the distribution destination, and so forth. The data format of the log image is determined in accordance with the requirements for the system. For example, the print data generated in S 14  themselves may be recorded as the log image, or image data on the image indicated by the print data or compressed image data obtained by compressing the image data to an image quality level determined in advance may be recorded as the log image. In the example, in the case where the print process performed by the image processing device  30  is unsuccessful, meanwhile, the log image is not recorded, and only the other items of the log information are recorded. In another example, the log image may be recorded (i.e. transferred to the log recording device  40 ) even in the case where the print process is unsuccessful. 
         [0039]    The print server  20  repeatedly performs the processes in S 14  to S 19  described above for all the distribution destinations with a number of copies to be output being more than zero as designated in the distribution instruction from the client device  10  (S 12 ). 
         [0040]    The record processing section  402  of the log recording device  40  receives the log information transmitted from the print server  20  in S 19  of  FIG. 6 , and provides a log ID to the received log information. Then, the log image and the other items included in the log information are retained in the log image storage section  406  and the log information storage section  404 , respectively, in correspondence with the log ID. 
         [0041]    Next, an example of a process procedure performed by the deletion processing section  408  of the log recording device  40  will be described with reference to  FIG. 7 . The process procedure is executed regularly (e.g. every month), for example. 
         [0042]    In the procedure, the deletion processing section  408  determines whether or not there are any log images that have not been subjected to the process in  FIG. 7  in the log image storage section  406  (S 20 ). If there are such unprocessed log images, one of the log images is selected as the target to be processed, and information such as the distribution destination and the retention start date corresponding to the log ID of the log image to be processed is acquired from the log information storage section  404  (S 22 ). Next, the deletion processing section  408  obtains, from the retention period table  410 , the retention period corresponding to the acquired distribution destination. Further, the retention expiration time of the log image is calculated by adding the retention period to the retention start date, and it is determined whether or not the present date and time is past the retention expiration time (S 26 ). In the case where the present date and time is past the retention expiration time, the log image is deleted from the log image storage section  406  (S 28 ). In this event, log information corresponding to the same log ID as that of the log image may be deleted from the log information storage section  404 . After that, the process returns to S 20 . 
         [0043]    In the case where it is determined in S 26  that the present date and time is not past the retention expiration time, meanwhile, the process returns to S 20  without deleting the log image. 
         [0044]    The processes in S 22  to S 28  described above are repeated for all the log images in the log image storage section  406  (S 20 ). 
         [0045]    In the example described above, the retention period is set for each of the distribution destinations (see  FIGS. 4 and 5 ). Alternatively, the distribution destinations may be classified into several groups, and the retention period may be set for each of the groups. For example, map information that indicates to which of the groups each of the distribution destinations belongs (see  FIG. 8 ) is stored in the log recording device  40 . In this case, the retention period is set for each of the groups in the retention period table  410 . The deletion processing section  408  may obtain, from the map information in  FIG. 8 , a group to which the distribution destination corresponding to the log image belongs, and retrieve the retention period for the obtained group from the retention period table  410 . 
         [0046]    In the example described above, the deletion processing section  408  regularly executes the deletion process (see  FIG. 7 ). However, the intervals of execution of the deletion process may be variable in accordance with the situation. 
         [0047]    For example, the interval before the next deletion process may be set to be shorter as the remaining capacity of the log image storage section  406  is smaller. 
         [0048]    An example of such a process is illustrated in  FIG. 9 . In  FIG. 9 , steps that are similar to the steps in the procedure of  FIG. 7  are denoted by the same symbols. In the example of  FIG. 9 , the next date of execution of the deletion process is decided when the deletion processing section  408  performs the deletion process. In the example, after the processes are performed for all the log images in the log image storage section  406  (the result of determination in S 20  is No), the deletion processing section  408  determines whether or not the remaining capacity of the log image storage section  406  has fallen below a threshold determined in advance (S 30 ). If the remaining capacity is equal to or more than the threshold (the result of determination in S 30  is No), the date that is a reference interval determined in advance (A days) from the present time is set as the next date of execution of the deletion process (S 32 ). In the case where it is determined in S 30  that the remaining capacity is less than the threshold, on the other hand, the date that is an interval determined in advance (B days) from the present time is set as the next date of execution of the deletion process, B being less than the reference interval (A days) (S 34 ). After S 32  or S 34 , the sequence of processes is ended. 
         [0049]    In the procedure of  FIG. 9 , there are two stages (A days and B days) in the interval of execution of the deletion process. As a matter of course, however, a larger number of stages may be provided. 
         [0050]    In addition, a processing section that is separate from the deletion processing section  408  may monitor the remaining capacity of the log image storage section  406 , and the next date of execution of the deletion process may be adjusted in accordance with the obtained remaining capacity (e.g. if the obtained remaining capacity is less than a threshold, the next scheduled date of execution of the deletion process may be brought forward by a predetermined number of days). 
         [0051]    In still another example, the interval before the next deletion process may be set to be shorter as the log image storage section  406  contains a larger number of log images whose retention expiration time is about to expire. An example of such a process is illustrated in  FIG. 10 . In  FIG. 10 , steps that are similar to the steps in the procedure of  FIG. 7  are denoted by the same symbols. 
         [0052]    In the procedure of  FIG. 10 , in the case where it is determined in S 26  that the retention expiration time of the log image selected in S 22  has not expired, the deletion processing section  408  determines whether or not the remaining period before the retention expiration time (i.e. the difference between the retention expiration time and the present time) is equal to or less than a threshold determined in advance (N days) (S 36 ). If the remaining period is equal to or less than N days, the value of a counter that indicates the number of log images whose “retention expiration time is about to expire” is incremented by one (S 38 ). Then, the process returns to S 20  without deleting the log image. In the case where the result of determination in S 36  is No, the process returns to S 20  without making any change. Then, after the processes are performed for all the log images in the log image storage section  406  (the result of determination in S 20  is No), the deletion processing section  408  determines whether or not the value indicated by the counter is equal to or more than a threshold determined in advance (S 40 ). If the counter value is less than the threshold (the result of determination in S 40  is No), the date that is a reference interval determined in advance (A days) from the present time is set as the next date of execution of the deletion process (S 42 ). In the case where it is determined in S 40  that the counter value is equal to or more than the threshold, on the other hand, the date that is an interval determined in advance (B days) from the present time is set as the next scheduled date of execution of the deletion process, B being less than the reference interval (A days) (S 44 ). The number of stages in the interval of execution of the deletion process is not limited to two as in the example, and it is a matter of course that a larger number of stages may be provided. 
         [0053]    In the example described above, a search is made for the retention period corresponding to the distribution destination for the document to calculate the retention expiration time of the log image using the retention period at the time when the deletion process is executed. In another example, a search may be made for the retention period corresponding to the distribution destination to calculate the retention expiration time at the time when the log image is stored in the log recording device  40 , and the retention expiration time may be recorded in correspondence with the log image. In this case, the deletion processing section  408  may delete the log image from the log image storage section  406  simply in the case where the retention expiration time recorded in correspondence with the log image has expired. 
         [0054]    In the example described above, the present invention is applied to the log recording device  40  which records a log image together with log information such as the ID of the user who issued an instruction on the process and the type of the process. However, the scheme according to the exemplary embodiment may be applied to any device that records a log image in correspondence with the distribution destination and the retention start date and time, and it is not necessary to record other information items such as the user ID and the process type. 
         [0055]    In the example described above, the present invention is applied to a log image for the print process performed by the print server  20 . However, the scheme of the exemplary embodiment may also be applied to a deletion process for a log image for other types of processes that involve designation of a distribution destination. For example, control according to the exemplary embodiment may also be applied to a case where a log image for a process in which a scanned image or an image of a document transferred from the client device  10  is transmitted by facsimile or electronic mail, or for a process in which such an image is transferred to a remote folder via a local area network, the Internet, or the like (such processes may be executed by any of the image processing device  30  and the print server  20 ), is deleted from the log recording device  40 . 
         [0056]    In the example described above, the present invention is applied to the log recording device  40  which retains a log image. However, control according to the exemplary embodiment discussed above may be applied to any system that retains an image of a document for a designated distribution destination for any purpose, besides the log image. 
         [0057]    The print server  20 , an information processing apparatus in the image processing device  30 , and the log recording device  40  described above are implemented by causing a general-purpose computer to execute a program that represents processes of various functional modules of the devices. Here, the computer has a circuit configuration in which, for example, pieces of hardware such as a microprocessor such as a CPU, a memory (primary storage) such as a random-access memory (RAM) and a read-only memory (ROM), a hard disk drive (HDD) controller that controls an HDD, various input/output (I/O) interfaces, and network interfaces that control connection with a network such as a local area network are connected via a bus, for example. A disk drive that reads data from and/or writes data into a portable disc recording medium such as a CD and a DVD, a memory reader/writer that reads data from and/or writes data into a portable non-volatile recording medium according to various standards such as a flash memory, etc. may be connected to the bus by way of the I/O interfaces, for example. A program that describes the content of processes performed by the functional modules described above is stored in a stationary storage device such as the hard disk drive to be installed on the computer by way of a recording medium such as a CD and a DVD or by way of a communication unit such as a network. The program stored in the stationary storage device is read by the RAM and executed by the microprocessor such as the CPU to implement the group of functional modules described above. 
         [0058]    The foregoing description of the exemplary embodiment of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations will be apparent to practitioners skilled in the art. The embodiment was chosen and described in order to best explain the principles of the invention and its practical applications, thereby enabling others skilled in the art to understand the invention for various embodiments and with the various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalents.