WO2013125222A1 - 仮想計算機システム、秘匿情報保護方法及び秘匿情報保護プログラム - Google Patents
仮想計算機システム、秘匿情報保護方法及び秘匿情報保護プログラム Download PDFInfo
- Publication number
- WO2013125222A1 WO2013125222A1 PCT/JP2013/000962 JP2013000962W WO2013125222A1 WO 2013125222 A1 WO2013125222 A1 WO 2013125222A1 JP 2013000962 W JP2013000962 W JP 2013000962W WO 2013125222 A1 WO2013125222 A1 WO 2013125222A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- authentication
- virtual
- information
- virtual machine
- hypervisor
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
Definitions
- the present invention relates to a virtual machine system that handles confidential information, and more particularly to a technique for restricting the use of confidential information.
- Confidential information refers to information that can be used under certain conditions, and examples include user images and emails.
- functions such as image display and mail transmission / reception are realized by operating user applications that handle confidential information such as image viewers and mailers in one virtual machine.
- the user application performs user authentication and uses the confidential information only when the user authentication is successful, thereby restricting the use of the confidential information to the user himself / herself.
- the present invention has been made in view of such a problem, and an object of the present invention is to provide a virtual computer system that can restrict the use of confidential information in a virtual computer when authentication is successful.
- a virtual computer system includes a computer, and the computer executes a program so that the computer has a first virtual computer, a second virtual computer, and the first virtual computer.
- a virtual machine system that functions as a hypervisor for executing and controlling the second virtual machine, wherein the first virtual machine performs authentication processing with holding means for holding confidential information, and sends an authentication result to the hypervisor.
- the second virtual machine uses a virtual device that is a virtualized storage device, and the hypervisor obtains an authentication result indicating successful authentication from the authentication means.
- the second virtual machine is allocated to the storage area in which the confidential information is stored as the entity of the virtual device. Seth was enabled, the when the authentication means authentication result indicating that the authentication success from has not been obtained, the confidential information by the second virtual machine to disable the access to the storage area stored.
- the second virtual machine does not have an authentication mechanism, and it is not possible to perform fraud that makes it possible to access confidential information by falsifying the success or failure of authentication. Can not.
- the second virtual machine simply uses the virtual device without recognizing any authentication, and whether to use the confidential information depends on the success or failure of the authentication by the authentication means of the first virtual machine. Become. Therefore, the virtual machine system according to the present invention can limit the use of confidential information by the second virtual machine when authentication is successful.
- FIG. 1 is a block diagram showing a main hardware configuration of a virtual machine system according to Embodiment 1 of the present invention.
- the flowchart which shows an example of the read-out process of the virtual device which concerns on Embodiment 1 of this invention The flowchart which shows an example of the write-in process of the data to the virtual device which concerns on Embodiment 1 of this invention
- the figure which shows an example of the screen display which concerns on Embodiment 1 of this invention The figure which shows typically the function structure of the virtual machine system which concerns on Embodiment 2 of this invention.
- the flowchart which shows an example of the authentication service process which concerns on Embodiment 2 of this invention The flowchart which shows an example of the mapping process which concerns on Embodiment 2 of this invention.
- the flowchart which shows an example of the reading process of the virtual mail folder which concerns on Embodiment 2 of this invention The flowchart which shows an example of the write-in process of the data to the virtual mail folder which concerns on Embodiment 2 of this invention
- the figure which shows an example of the screen display which concerns on Embodiment 2 of this invention The figure which shows typically the function structure of the virtual computer system which concerns on the modification of this invention.
- the virtual computer system 100 is an information terminal that handles confidential information such as user information as an example.
- privilege information is used as an example of confidential information.
- the privilege information can be used in the first virtual machine and cannot be used in principle in the second virtual machine. However, as a certain condition, the privilege information can be used only when there is a privilege that the user authentication by the authentication code is successful. Information.
- the virtual machine system 100 includes a first virtual machine on which a secure OS (operating system) or the like operates, a second virtual machine on which a general OS or the like operates, a first virtual machine, and a second virtual machine. And a hypervisor that performs execution control.
- An application program that requests the use of privilege information runs on the second virtual machine, but the privilege information is held by the first virtual machine.
- whether or not the privilege information can be used is not controlled by the second virtual machine that actually uses the privilege information, but based on the result of authentication performed by the first virtual machine. Controlled by.
- FIG. 1 is a block diagram showing a main hardware configuration of a virtual machine system 100 according to an embodiment of the present invention.
- the virtual machine system 100 is a computer device as hardware, and includes an integrated circuit 101, an input device 102, a display device 103, and a storage device 104.
- the integrated circuit 101 includes a processor 120, a cache storage device 121, a memory 122, an external I / F (interface) 123, and a bus 124.
- the memory 122 is configured by a RAM (Random Access Memory), is connected to the bus 124, and stores a program that defines the operation of the processor 120, data used by the processor 120, and the like.
- RAM Random Access Memory
- the cache storage device 121 is a cache memory composed of a memory that operates at a higher speed than the memory 122, and is connected to the processor 120 and the bus 124.
- the cache storage device 121 has a cache function for temporarily storing frequently used data among the data stored in the memory 122.
- the bus 124 is connected to the processor 120, the cache storage device 121, the memory 122, and the external I / F 123, and has a function of transmitting signals between connected circuits.
- the external I / F 123 is connected to the bus 124, the input device 102, the display device 103, and the storage device 104.
- the external I / F 123 has a function of mediating exchange of signals between connected circuits.
- the input device 102 includes a keyboard, a mouse, and the like, and is connected to the external I / F 123.
- the input device 102 is controlled by a processor 120 that executes a program, and has a function of receiving input information that is input by a user of the virtual computer system 100 operating a keyboard, a mouse, and the like.
- the display device 103 includes a display or the like and is connected to the external I / F 123.
- the display device 103 is controlled by a processor 120 that executes a program, and has a function of displaying an image, a character string, and the like based on a signal transmitted from the processor 120.
- the storage device 104 is configured by a nonvolatile storage medium such as a flash memory, and is connected to the external I / F 123.
- the storage device 104 is controlled by the processor 120 and has a function of storing data.
- the processor 120 is connected to the cache storage device 121 and the bus 124.
- the processor 120 reads out and executes a program stored in the memory 122 via the cache storage device 121, thereby executing a first virtual machine 201, a second virtual machine 202, and first and second virtual machines, which will be described later. It functions as a hypervisor 203 that controls the execution of.
- the processor 120 controls the input device 102, the display device 103, and the storage device 104 by transmitting and receiving various control signals to and from the external I / F 123 using the bus 124. ⁇ 1.2.2. Functional configuration> Next, a configuration viewed from the functional aspect of the virtual machine system 100 including the hardware configuration described with reference to FIG. 1 will be described with reference to the drawings.
- FIG. 2 is a diagram schematically showing a functional configuration of the virtual machine system 100. As shown in FIG.
- the virtual machine system 100 includes a first virtual machine 201, a second virtual machine 202, a hypervisor 203, an input unit 204, a storage unit 205, and a display unit 206.
- the input unit 204 includes an input device 102, and has a function of appropriately distributing and notifying input information input by a user operating the input device 102 to either the first virtual computer 201 or the second virtual computer 202. Have.
- the storage unit 205 includes the storage device 104 and has a function of storing data.
- the storage unit 205 stores an authentication information DB 231, privilege information 232, and normal information 233.
- the privilege information 232 is privilege information that is permitted to be used when the user authentication by the authentication code is successful, and is image data including 10 images as an example.
- the normal information 233 is information for which no special condition is imposed for use, and is image data including five images as an example.
- the display unit 206 includes the display device 103, and has a function of displaying images, character strings, and the like requested to be displayed from the first virtual computer 201 and the second virtual computer 202.
- the first virtual computer 201 is a virtual computer that specifically implements information processing by the first OS 211 and a task group that is controlled by the first OS 211 using hardware resources allocated by the hypervisor 203.
- the first OS 211 is a secure OS, and security functions such as detection and prevention of intrusion from the outside and protection of files are strengthened compared to a general OS.
- the first OS 211 has a function of performing execution control on tasks such as the authentication service 212, the privilege information management service 213, and the normal information management service 214.
- tasks whose execution is controlled by the first OS 211 are collectively referred to as “management tasks”.
- the authentication service 212 has an authentication function (see FIG. 4) for authenticating the user of the virtual machine system 100.
- the authentication service 212 reads the authentication information DB (database) 231 used for authentication from the storage unit 205 and uses it.
- the authentication information DB 231 is a database in which an authentication code is recorded.
- the authentication code is a password as an example.
- the authentication service 212 realizes the authentication function as follows. First, the authentication service 212 waits for notification of an authentication code input by the user from the input unit 204. When the authentication code is notified, the authentication service 212 verifies whether or not the authentication code is recorded in the authentication information DB 231. If the authentication code is recorded, the authentication service 212 determines that the authentication is successful. Judge as failure.
- the authentication service 212 determines that the authentication is successful, the authentication service 212 transmits a signal indicating the authentication success to the hypervisor 203 as an information selection signal. If the authentication service 212 determines that the authentication has failed, the authentication service 212 transmits a signal indicating the authentication failure to the hypervisor 203 as an information selection signal.
- the authentication service 212 accepts an authentication cancellation instruction input by the user from the input unit 204.
- the authentication service 212 transmits a signal indicating authentication failure to the hypervisor 203 as an information selection signal.
- the privilege information management service 213 has a function of managing the privilege information 232.
- the privilege information management service 213 reads the privilege information 232 from the storage unit 205 and holds it.
- the privilege information management service 213 uses the logical address of the storage area that holds the privilege information 232 (the address in the logical address space managed by the first OS 211, hereinafter referred to as “privilege information logical address”).
- the physical address of the storage area storing the privilege information 232 is referred to as “privilege information physical address”.
- the normal information management service 214 has a function of managing the normal information 233. As the management of the normal information 233, the normal information management service 214 reads the normal information 233 from the storage unit 205 and holds it. Then, the normal information management service 214 uses the logical address of the storage area that holds the normal information 233 (the address in the logical address space managed by the first OS 211, hereinafter referred to as “normal information logical address”). Notify the hypervisor 203.
- the physical address of the storage area storing the normal information 233 is referred to as “normal information physical address”.
- the second virtual computer 202 is a virtual computer that specifically realizes information processing by the second OS 251 and a task group that is controlled by the second OS 251 using hardware resources allocated by the hypervisor 203.
- the task group whose execution is controlled by the second OS 251 includes task 1 (252), task 2 (253),... Task N (N is an arbitrary natural number) (254).
- tasks whose execution is controlled by the second OS 251 are collectively referred to as “general tasks”.
- the second OS 251 is a general OS that is not a secure OS, and has a function of performing execution control of task 1 (252) to task N (254).
- the second OS 251 has an interface (hereinafter, referred to as “virtual device I / F”) for a general task to request access to the virtual device 261.
- the virtual device 261 is a virtual device that is handled as a device that stores information such as a data string, a file (group), and a folder (group), and is realized by the virtual device providing function of the hypervisor 203.
- Task 1 (252) to task N (254) are processing execution units, and are implemented as programs created by a user or an application vendor.
- task 1 (252) is an application program that displays an image.
- Task 1 (252) recognizes in advance that image data to be displayed is recorded in the virtual device 261, but does not recognize what kind of image data is stored. Shall.
- task 1 (252) requests reading of image data from the virtual device 261 using the virtual device I / F when displaying an image.
- the task 1 (252) displays the read image data on the display unit 206.
- the hypervisor 203 is a control program that includes a plurality of virtual computer environments in which hardware is virtualized by software, and operates a virtual computer including an OS or the like using each virtual computer environment.
- the hypervisor 203 has a scheduling function, a mapping function, and a virtual device providing function as main functions.
- the hypervisor 203 includes a selection service 271 that mainly implements a virtual device providing function.
- Scheduling function The scheduling function is a function for allocating hardware resources of the virtual machine system 100 to the first virtual machine 201 and the second virtual machine 202.
- the hypervisor 203 allocates each hardware resource to each virtual computer based on a scheduling method (time division, fixed allocation, etc.) determined in advance according to the hardware resource to be allocated.
- (2) Mapping function The mapping function is a function for allocating a physical memory area, which is a storage area of the memory 122, to the first virtual machine 201 and the second virtual machine 202 and managing the association between logical addresses and physical addresses.
- the first virtual machine 201 and the second virtual machine 202 manage the allocated physical memory area as a logical memory area. In other words, the first virtual computer 201 and the second virtual computer 202 specify each storage area in the allocated memory area using the logical address.
- FIG. 3 is a diagram schematically showing association (hereinafter simply referred to as “mapping”) between a physical memory area and a logical memory area.
- the physical memory area 301 in FIG. 3 schematically shows the entire storage area of the memory 122. It is assumed that the physical memory area 301 has addresses 0 to C as physical addresses. Here, in this embodiment, it is assumed that the physical address and the logical address are represented by a 32-bit length as an example.
- the hypervisor 203 allocates the first physical memory area 302 from the physical address A to the B address in the physical memory area 301 to the first virtual machine 201.
- the first virtual machine 201 recognizes the first physical memory area 302 as the first logical memory area 311.
- the first logical memory area 311 is obtained by converting the physical address of the first physical memory area 302 into a logical address. That is, the entity of the first logical memory area 311 and the entity of the first physical memory area 302 are the same.
- the hypervisor 203 allocates the second physical memory area 303 from the physical addresses B to C to the second virtual machine 202 in the physical memory area 301.
- the second virtual computer 202 recognizes the second physical memory area 303 as the second logical memory area 312.
- the second logical memory area 312 is obtained by converting the physical address of the second physical memory area 303 into a logical address. That is, the entity of the second logical memory area 312 and the entity of the second physical memory area 303 are the same.
- the hypervisor 203 performs conversion between the logical address and the physical address.
- the hypervisor 203 generates and holds a table for converting between a logical address and a physical address used by the first virtual machine 201 (hereinafter referred to as “first conversion table” in the present embodiment). ing. Specifically, in the first conversion table, the logical address of the first logical memory area 311 and the physical address of the first physical memory area 302 are described in association with each other.
- the hypervisor 203 receives an access request specifying a logical address from the first virtual machine 201, the hypervisor 203 converts the specified logical address into a physical address using the first conversion table, and is indicated by this physical address. Access the storage area.
- the hypervisor 203 generates a table (hereinafter referred to as “second conversion table” in the present embodiment) for mutually converting a logical address and a physical address used by the second virtual computer 202. keeping. Specifically, in the second conversion table, the logical address of the second logical memory area 312 and the physical address of the second physical memory area 303 are described in association with each other.
- the hypervisor 203 receives an access request specifying a logical address from the second virtual machine 202, the hypervisor 203 converts the specified logical address into a physical address using the second conversion table, and is indicated by this physical address. Access the storage area.
- the E address of the first logical memory area 311 is associated with the F address of the first physical memory area 302 in the first conversion table.
- the hypervisor 203 receives a data read request designating a logical address (for example, address E of the first logical memory area 311 in FIG. 3) from the first virtual machine 201, the hypervisor 203 receives the designated logical address.
- the first virtual machine is converted into a physical address (for example, address F in the first physical memory area 302 of FIG. 3) using the first conversion table, and data is read from the storage area (321) indicated by the physical address. Deliver to 201.
- the G address of the first logical memory area 311 is associated with the H address of the first physical memory area 302.
- the hypervisor 203 receives a data write request specifying a logical address (for example, address G of the first logical memory area 311 in FIG. 3) from the first virtual machine 201, the hypervisor 203 changes the specified logical address.
- the address is converted into a physical address (for example, address H of the first physical memory area 302 in FIG. 3), and the data is stored in the storage area (322) indicated by the physical address.
- Virtual device provision function uses the virtual device 261 from the general task in the second virtual computer 202 only when the authentication by the authentication service 212 of the first virtual computer 201 is successful. This function controls access to privilege information 232 held in the computer 201 (see FIGS. 6 and 7).
- a logical address hereinafter referred to as “virtual device address” for specifying a virtual storage area in the virtual device 261 is defined as the virtual device I / F.
- the virtual device provision function is realized as follows. That is, the selection service 271 of the hypervisor 203 describes the virtual device address (address D in FIG. 3 as an example) and the physical address in the second conversion table in association with each other. Upon receiving the information selection signal from the authentication service 212, the selection service 271 changes the physical address associated with the virtual device address according to the content of the received information selection signal.
- the selection service 271 associates the physical address of the storage area in which the privilege information 232 is stored with the virtual device address in the second conversion table when the received information selection signal indicates successful authentication. If the received information selection signal indicates an authentication failure, the selection service 271 associates the physical address of the storage area in which the normal information 233 is stored with the virtual device address in the second conversion table.
- the selection service 271 uses an invalid value defined as a value indicating an invalid address in advance in the virtual machine system 100 as an initial value as a physical address associated with the virtual device address. (For example, 0xFFFFFFFF) is associated.
- the hypervisor 203 When the hypervisor 203 receives a read request designating the virtual device address from the second virtual computer 202, the hypervisor 203 refers to the second conversion table and converts the virtual device address into the associated physical address. Data is read from the storage area indicated by the physical address and transferred to the second virtual computer 202. In addition, when a data write request specifying a virtual device address is made from the second virtual machine 202, the hypervisor 203 refers to the second conversion table and assigns the virtual device address to the associated physical address. Convert to Then, data is written into the storage area indicated by the physical address.
- the hypervisor 203 refers to the second conversion table when a read request or data write request specifying a virtual device address is made from the second virtual computer 202, and the virtual device address is associated with an invalid value. If it is, an access error is notified to the second virtual machine 202.
- privilege information 232 is stored in the storage area 321 whose physical address is F address. That is, the privilege information physical address is address F.
- the privilege information logical address is assumed to be address E. It is assumed that the selection service 271 has received a privilege information logical address notification from the privilege information management service 213.
- the normal information 233 is stored in the storage area 322 whose physical address is address H. That is, the normal information physical address is address H.
- the normal information logical address is assumed to be address G. It is assumed that the selection service 271 has received a notification of a normal information logical address from the normal information management service 214.
- the selection service 271 receives an information selection signal from the authentication service 212 in the first virtual machine 201.
- the information selection signal indicates that authentication is successful
- the selection service 271 changes the value of the physical address associated with the virtual device address in the second conversion table to the value of the privilege information physical address.
- the selection service 271 When the selection service 271 receives a request for reading the virtual device 261 specifying the virtual device address from the task 1 (252) of the second virtual computer 202, the selection service 271 associates the virtual device address in the second conversion table. It is converted into a privilege information physical address which is a physical address. Then, the virtual device 261 reads the privilege information 232 from the storage area (321) indicated by the privilege information physical address and transfers it to the task 1 (252).
- the selection service 271 Upon receiving a request for writing data from the task 1 (252) to the virtual device 261 for which the virtual device address is specified, the selection service 271 assigns the virtual device address to the physical associated with the second conversion table. It is converted into a privilege information physical address that is an address. Then, the virtual device 261 writes data to the storage area (321) indicated by the privilege information physical address.
- the selection service 271 changes the value of the physical address associated with the virtual device address in the second conversion table to the value of the normal information physical address. change.
- the selection service 271 When the selection service 271 receives from the task 1 (252) a request to read the virtual device 261 specifying the virtual device address, the selection service 271 converts the virtual device address to the normal information that is the physical address associated in the second conversion table. Convert to physical address. Then, the virtual device 261 reads the normal information 233 from the storage area (322) indicated by the normal information physical address, and transfers it to the task 1 (252).
- the selection service 271 When the selection service 271 receives a request for writing data from the task 1 (252) to the virtual device 261 for which the virtual device address is specified, the selection service 271 corresponds to the physical device associated with the virtual device address in the second conversion table. It is converted into a normal information physical address that is an address. Then, the virtual device 261 writes data in the storage area (322) indicated by the normal information physical address.
- FIG. 4 is a flowchart showing a procedure of authentication service processing.
- the authentication service 212 waits for an authentication code to be input (no in step S401).
- the authentication service 212 verifies whether or not the same authentication code as the input authentication code is recorded in the authentication information DB 231 (step S402). If it is determined that the information has been recorded (Yes in step S402), the user has input the correct authentication code, so a signal indicating successful authentication is sent to the selection service 271 of the hypervisor 203 as an information selection signal. (Step S403).
- step S404 the authentication service 212 waits for an authentication cancellation instruction to be input by the user (no in step S404).
- an authentication cancellation instruction is input (yes in step S404)
- a signal indicating authentication failure is notified to the selection service 271 of the hypervisor 203 as an information selection signal (step S405), and the process proceeds to step S401.
- step S402 If it is determined in step S402 that the same authentication code as the input authentication code is not recorded in the authentication information DB 231 (no in step S402), the process proceeds to step S405.
- step S402 ⁇ 1.3.2. Mapping process by selection service 271>
- the mapping process by the selection service 271 of the hypervisor 203 will be described.
- FIG. 5 is a flowchart showing the procedure of the mapping process.
- the selection service 271 generates a first conversion table and a second conversion table (step S501).
- the selection service 271 associates the normal information physical address as an initial value with the virtual device address in the second conversion table (step S502).
- the selection service 271 waits to acquire an information selection signal from the authentication service 212 (no in step S503).
- the selection service 271 acquires an information selection signal from the authentication service 212 (yes in step S503), the selection service 271 verifies whether the information selection signal indicates successful authentication (step S504).
- step S504 If the information selection signal indicates successful authentication (yes in step S504), the privilege information physical address is associated with the virtual device address in the second conversion table (step S505). On the other hand, when the information selection signal indicates an authentication failure (No in step S504), the normal information physical address is associated with the virtual device address in the second conversion table (step S506).
- step S506 ⁇ 1.3.3. Read process of virtual device 261> Hereinafter, as an example of the reading process of the virtual device 261, a reading process by the task 1 (252) which is a general task of the second virtual computer 202 will be described.
- FIG. 6 is a flowchart showing the procedure of the reading process of the virtual device 261.
- the task 1 (252) makes a read request for the virtual device 261 using the device driver I / F of the second OS 251 (step S601).
- the second OS 251 issues a read request to the virtual device 261 by designating the virtual device address.
- the selection service 271 of the hypervisor 203 receives a read request for the virtual device 261
- the selection service 271 refers to the second conversion table, and when the virtual device address is associated with the privilege information physical address in the second conversion table ( In step S602, the virtual device address is converted into a privilege information physical address (step S603).
- the second conversion table when the virtual device address is not associated with the privilege information physical address in the second conversion table, that is, when the virtual device address is associated with the normal information physical address (No in step S602).
- the selection service 271 converts the virtual device address into a normal information physical address (step S604).
- the virtual device 261 reads data from the storage area indicated by the physical address after the conversion in Step S603 or Step S604 (Step S605).
- the data read in step S605 becomes privilege information when the logical address is converted into the physical address in step S603. If the conversion from the logical address to the physical address is performed in step S604, the data read in step S605 is normal information.
- the virtual device 261 notifies the task 1 (252) of the read data.
- data writing processing to the virtual device 261 data writing processing to the virtual device 261 by the task 1 (252) which is the general task of the second virtual computer 202 will be described.
- FIG. 7 is a flowchart showing a procedure for writing data to the virtual device 261.
- the task 1 uses the device driver I / F of the second OS 251 to make a data write request to the virtual device 261 (step S701).
- the second OS 251 makes a data write request to the virtual device 261 by designating the virtual device address.
- the selection service 271 of the hypervisor 203 receives a data write request to the virtual device 261
- the selection service 271 refers to the second conversion table, and the virtual device address is associated with the privilege information physical address in the second conversion table.
- the virtual device address is converted into a privilege information physical address (step S703).
- the second conversion table when the virtual device address is not associated with the privilege information physical address in the second conversion table, that is, when the virtual device address is associated with the normal information physical address (No in step S702).
- the selection service 271 converts the virtual device address into a normal information physical address (step S704).
- FIG. 8 shows an image display example in the image display process, which is an example of a process performed by the task 1 (252) using the privilege information 232 and the normal information 233.
- a screen 800 represents a display screen on the display unit 206 when authentication in the authentication service 212 has failed.
- a screen 802 represents a display screen of the display in the display unit 206 when the authentication in the authentication service 212 is successful.
- Task 1 (252) is an image viewer and displays a thumbnail image on the display unit 206 when activated.
- Task 1 (252) cannot read the privilege information 232 from the virtual device 261 when the authentication in the authentication service 212 has failed, and reads the normal information 233.
- the task 1 (252) displays thumbnails 1 (811) to 5 (815), which are thumbnail images of the five images included in the normal information 233, as shown as the image display area 801 of the screen 800. indicate.
- task 1 (252) reads the privilege information 232 from the virtual device 261 when the authentication in the authentication service 212 is successful.
- the task 1 (252) displays thumbnails 11 (821) to 20 (830), which are thumbnail images of 10 images included in the privilege information 232, as shown as the image display area 803 of the screen 802. indicate.
- the user is shown to have been successfully authenticated.
- an image 804 indicating that the authentication is successful is displayed on the screen 802.
- the display image by the task 1 is different depending on the success or failure of the authentication.
- Second Embodiment> ⁇ 2.1. Overview>
- the second virtual machine 202 accesses the virtual device 261
- either privilege information or normal information held by the first virtual machine 201 is determined according to the authentication result in the first virtual machine 201.
- the example in which the hypervisor 203 controls to access the above has been described.
- a virtual mail folder that is a virtual mail folder is used as a virtual device.
- the mail folder is a folder in which information related to mail such as a mail text and an address book for one account related to mail is stored.
- the hypervisor (903) controls which of the first mail folder related to the first user and the second mail folder related to the second user held by the first virtual machine (901) can be accessed.
- the present embodiment will be described focusing on differences from the first embodiment. ⁇ 2.2. Configuration>
- the hardware configuration of the virtual machine system according to the present embodiment is the same as that described with reference to FIG. 1 in the first embodiment.
- FIG. 9 is a diagram schematically illustrating a functional configuration of the virtual machine system 900.
- the virtual computer system 900 includes a first virtual computer 901, a second virtual computer 902, a hypervisor 903, an input unit 204, a storage unit 205, and a display unit 206.
- the first virtual machine 901 is different from the first virtual machine 201 according to the first embodiment in that an authentication service 911 and a mail management service 912 are operating as management tasks.
- (1) Authentication service 911 The authentication service 911 is different from the first embodiment in that authentication processing is performed using a user name in addition to an authentication code.
- the authentication service 911 uses an authentication information DB 931 in which the user name of each user and the authentication code unique to each user are recorded in association with each other as a database.
- the authentication service 911 acquires a user name and an authentication code input by the user from the input unit 204. Then, it is verified whether or not the acquired user name and authentication code are associated with each other and recorded in the authentication information DB 931. If they are recorded, authentication success / failure information indicating successful authentication and authentication succeed as an information selection signal.
- the hypervisor 903 is notified of a signal indicating the user name of the user who has performed.
- the authentication service 911 outputs a signal indicating authentication success / failure information indicating authentication failure as an information selection signal.
- the mail management service 912 has a function of managing a mail folder in which mail-related data such as a mail text and an address book is recorded. As the mail folder management, the mail management service 912 performs the following processing. First, the mail management service 912 reads and holds the first mail folder 981 and the second mail folder 991 from the storage unit 205.
- the first mail folder 981 is a folder in which data related to the mail of the first user is recorded.
- the first mail folder 981 includes a first mail 982 which is data representing the mail text, a first address book 983 in which one or more mail addresses used by the first user are described.
- the first mail 982 includes eight mails as an example.
- the second mail folder 991 is a folder in which data related to the second user's mail is recorded.
- the second mail folder 991 includes a second mail 992 that is data representing the mail text, a second address book 993 in which one or more mail addresses used by the second user are described, and the like.
- the second mail 982 includes eight mails as an example.
- the mail management service 912 is a logical address of a storage area that holds the first mail folder 981 (an address in a logical address space managed by the first OS 211. Hereinafter, it is referred to as “first mail folder logical address”. )) And the logical address of the storage area that holds the second mail folder 991 (the address in the logical address space managed by the first OS 211. Hereinafter, referred to as “second mail folder logical address”). Notify the hypervisor 903.
- first mail folder physical address the physical address of the storage area storing the first mail folder 981
- second mail folder physical address the physical address of the storage area storing the second mail folder 991
- the second virtual computer 902 is different from the second virtual computer 202 of the first embodiment in that the mailer 951 operates as a general task instead of the task 1 (252).
- a virtual mail folder address that is a specific logical address for accessing the virtual mail folder is used as the virtual device I / F.
- the mailer 951 is an application program that executes mail processing (hereinafter referred to as “mail processing”) such as mail creation, display, and transmission / reception. In order to perform mail processing, the mailer 951 accesses a mail folder in which mail data including a mail text and an address book in which a mail address used by the user is recorded.
- mail processing such as mail creation, display, and transmission / reception.
- the mailer 951 accesses a mail folder in which mail data including a mail text and an address book in which a mail address used by the user is recorded.
- the mailer 951 recognizes in advance that it is only necessary to access the virtual mail folder in order to access the mail folder, and accesses the virtual mail folder when performing mail processing. Then, the mailer 951 uses the virtual mail folder to access the mail data, the address book, and the like, and performs mail processing such as displaying the mail text and the address book contents included in the mail data on the display unit 206.
- the mail folder has a data structure according to a specific format. Then, by referring to data at a specific position in the data structure (hereinafter referred to as “folder management information”), it is possible to know the mail data included in the mail folder, the data size of the address book, the number, etc. Shall.
- the mail data included in the mail folder also has a data structure according to a specific format. The number of mails included in the mail data and the mail data of each mail are in a specific position of the data structure.
- Information for extracting each mail from the mail data (hereinafter referred to as “mail management information”) such as the recording position in FIG.
- the hypervisor 903 differs from the hypervisor 203 of the first embodiment in that it has a virtual mail folder providing function instead of the virtual device providing function.
- the hypervisor 903 includes a selection service 971 that realizes a virtual mail folder providing function. (Virtual mail folder provision function)
- the virtual mail folder providing function uses the virtual mail folder from the mailer 951, which is a general task in the second virtual computer 902, only when the authentication by the authentication service 911 of the first virtual computer 901 is successful. This is a function for controlling to access the first mail folder 981 or the second mail folder 991 held in 901 (see FIGS. 13 and 14).
- the virtual mail folder provision function is realized as follows. That is, the selection service 971 describes the virtual mail folder address and the physical address in association with each other in the second conversion table. Upon receiving the information selection signal from the authentication service 911, the selection service 971 changes the physical address associated with the virtual mail folder address in the second conversion table according to the content of the received information selection signal.
- the selection service 971 indicates the virtual mail folder address in the second conversion table.
- the first mail folder physical address is associated with the address.
- the second mail folder physical address is associated with the virtual mail folder address address in the second conversion table.
- the selection service 971 is defined in advance as a value indicating an invalid address in the virtual computer system 900 in the virtual mail folder address in the second conversion table. Are associated with invalid values (eg, 0xFFFFFF). Note that the selection service 971 describes an invalid value as an initial value in association with the virtual mail folder address when the second conversion table is generated.
- the hypervisor 903 When the hypervisor 903 requests the mailer 951 to read out the virtual mail folder in which the virtual mail folder address is specified, the hypervisor 903 changes the specified virtual mail folder address to the physical address associated in the second conversion table. Convert. Then, the hypervisor 903 reads data from the storage area indicated by the converted physical address and passes it to the mailer 951.
- the hypervisor 903 When the hypervisor 903 receives a data write request from the mailer 951 to the virtual mail folder for which the virtual mail folder address is specified, the hypervisor 903 associates the specified virtual mail folder address in the second conversion table. To a physical address. Then, the hypervisor 903 writes data in the storage area indicated by the converted physical address.
- the hypervisor 903 An access error is notified to 951.
- the mapping in this Embodiment is demonstrated using FIG.
- the first mail folder 981 is stored in the storage area 321 whose physical address is F address
- the second mail folder 991 is stored in the storage area 322 whose physical address is H address.
- the first mail folder physical address is F address
- the first mail folder logical address is E address
- the second mail folder physical address is H address
- the second mail folder logical address is G address.
- the virtual mail folder address is address D.
- the selection service 971 receives the information selection signal, if the authentication success / failure information included in the information selection signal indicates successful authentication and the user name indicates the user name of the first user, the selection service 971 Associates the virtual mail folder address with address F which is the first mail folder physical address in the second conversion table.
- the selection service 971 uses the virtual mail folder address in the second conversion table.
- the second mail folder physical address is associated with address H. ⁇ 2.3. Operation> ⁇ 2.3.1. Operation of authentication service processing> Hereinafter, authentication service processing by the authentication service 911 will be described.
- FIG. 11 is a flowchart showing a procedure of authentication service processing.
- the authentication service 911 waits for a user name and an authentication code to be input (no in step S1101).
- the user name and the authentication code are input (yes in step S1101)
- the selection service 971 of the visor 903 is notified (step S1103).
- the authentication service 911 waits for an authentication cancellation instruction to be input by the user (no in step S1104).
- an authentication cancellation instruction is input (yes in step S1104)
- an information selection signal indicating authentication success / failure information indicating authentication failure is notified to the selection service 971 (step S1105), and the process proceeds to step S1101. If it is determined in step S1102 that the combination of the input user name and authentication code is not recorded in the authentication information DB 931 (no in step S1102), the process proceeds to step S1105. ⁇ 2.3.2. Mapping process by selection service 971>
- mapping processing by the selection service 971 of the hypervisor 903 will be described.
- FIG. 12 is a flowchart showing the procedure of the mapping process.
- the selection service 971 generates a first conversion table and a second conversion table (step S1201).
- the selection service 971 associates an invalid value as an initial value with the virtual mail folder address in the second conversion table (step S1202).
- the selection service 971 waits to acquire an information selection signal from the authentication service 911 (no in step S1203).
- the selection service 971 acquires an information selection signal from the authentication service 911 (yes in step S1203)
- the selection service 971 verifies whether the authentication success / failure information included in the information selection signal indicates authentication success (step S1204).
- step S1204 If it is determined that the authentication success / failure information indicates that the authentication has succeeded (Yes in step S1204), it is verified whether the user name included in the information selection signal indicates the user name of the first user (step S1205). .
- the selection service 971 writes the first mail folder physical address in correspondence with the virtual mail folder address in the second conversion table (step S1206). The process proceeds to step S1203.
- the selection service 971 sets the second mail folder physical address to the virtual mail folder address in the second conversion table. Corresponding description is made (step S1207), and the process proceeds to step S1203.
- step S1204 If it is determined in step S1204 that the authentication success / failure information included in the information selection signal indicates an authentication failure (no in step S1204), the selection service 971 sets the virtual mail folder address in the second conversion table. The invalid value is associated (step S1208), and the process proceeds to step S1203. ⁇ 2.3.3. Reading virtual mail folder>
- the virtual mail folder read process a read process by the mailer 951, which is a general task of the second virtual computer 902, will be described.
- FIG. 13 is a flowchart showing the procedure of the virtual mail folder reading process.
- the mailer 951 makes a virtual mail folder read request using the file system I / F of the second OS 251 (step S1301).
- the second OS 251 makes a read request to the virtual mail folder 961 by designating the virtual mail folder address.
- the selection service 971 of the hypervisor 903 receives the virtual mail folder read request, and verifies whether or not a value that is not an invalid value is associated with the virtual mail folder address in the second conversion table (step S1302).
- the first mail folder physical address corresponds to the virtual mail folder address in the second conversion table.
- the hypervisor 903 converts the designated virtual mail folder address into the first mail folder physical address (step S1304), and proceeds to step S1306.
- the hypervisor 903 converts the designated virtual mail folder address into the second mail folder physical address (step S1305), and proceeds to step S1306.
- step S1306 the virtual mail folder 961 reads data from the storage area indicated by the physical address after the conversion in step S1304 or step S1305 (step S1306). Then, the read data is notified to the mailer 951 (step S1307). Note that the data read in step S1306 is data representing the contents of the first mail folder 981 when the address is converted in S1304. If the address has been converted in step S1305, the data read in step S1306 is data representing the contents of the second mail folder 991.
- step S1302 If it is determined in step S1302 that an invalid value is associated with the virtual mail folder address in the second conversion table (no in step S1302), a read error is notified to the mailer 951 (step S1311). ⁇ 2.3.4. Writing data to the virtual mail folder>
- data writing processing to the virtual mail folder data writing processing to the virtual mail folder by the mailer 951, which is a general task of the second virtual computer 902, will be described.
- FIG. 14 is a flowchart showing a procedure for writing data to the virtual mail folder.
- the mailer 951 makes a data write request to the virtual mail folder using the file system I / F of the second OS 251 (step S1401).
- the second OS 251 makes a data write request to the virtual mail folder 961 by designating the virtual mail folder address.
- the selection service 971 of the hypervisor 903 receives a request to write data to the virtual mail folder, the selection service 971 verifies whether or not a value that is not an invalid value is associated with the virtual mail folder address in the second conversion table (step S100).
- step S100 the selection service 971 of the hypervisor 903
- step S1402 When it is determined in the second conversion table that a non-invalid value is associated with the virtual mail folder address (yes in step S1402), the first mail folder physical address is associated with the virtual mail folder address. Sometimes (yes in step S1403), the hypervisor 903 converts the designated virtual mail folder address to the first mail folder physical address (step S1404), and proceeds to step S1406. On the other hand, when it is determined in the second conversion table that the first mail folder physical address is not associated with the virtual mail folder address, that is, when the second mail folder physical address is associated with the virtual mail folder address ( In step S1403, no), the hypervisor 903 converts the virtual mail folder address designated by the mailer 951 into the second mail folder physical address (step S1405), and proceeds to step S1406.
- step S1406 the virtual mail folder 961 writes the data designated by the mailer 951 in the storage area indicated by the physical address after the conversion in steps S1404 and S1405 (step S1406).
- step S1406 the storage area in which data is written in step S1406 is the storage area in which the first mail folder 981 is stored when the address is converted in step S1404. Therefore, in step S1406, the contents of the first mail folder 981 are changed.
- step S1406 the storage area to which data is written in step S1406 is the storage area in which the second mail folder 991 is stored. Therefore, in step S1406, the contents of the second mail folder 991 are changed.
- step S1402 If it is determined in step S1402 that an invalid value is associated with the virtual mail folder address in the second conversion table (no in step S1402), a write error is notified to the mailer 951 (step S1411).
- FIG. 15 shows a screen display example in mail display processing, which is an example of processing performed by the mailer 951 using the first mail folder and the second mail folder.
- a screen 1500 represents a display screen on the display unit 206 when authentication in the authentication service 911 fails.
- a screen 1502 represents a display screen on the display unit 206 when authentication by the authentication service 911 is successful.
- the mailer 951 when the mailer 951 is started, it analyzes the mail header of the mail included in the first mail 982 or the second mail 992 in the first mail folder 981 or the second mail folder 991, and displays a list of subject lines. Shall be displayed.
- the mailer 951 accesses the virtual mail folder to access the contents of the first mail folder 981. Cannot be read out, and the contents of the second mail folder 991 are read out.
- the mailer 951 displays subject 1 (1511) to subject 8 (1518) of each of the eight mails included in the second mail 992, as shown as a mail display area 1501 on the screen 1500.
- the mailer 951 reads the contents of the first mail folder 981 by accessing the virtual mail folder 961. . In this case, the mailer 951 displays the subject lines 11 (1521) to 18 (1528) of each of the eight mails included in the first mail 982, as shown as a mail display area 1503 on the screen 1502.
- the user when the authentication is successful, the user is shown to have been successfully authenticated. Specifically, an image 1504 indicating that the authentication has been successful, such as an icon or a pict that means unlocking, is displayed on the screen 1502. ⁇ 3.
- an image 1504 indicating that the authentication has been successful such as an icon or a pict that means unlocking, is displayed on the screen 1502. ⁇ 3.
- the physical address of the storage area in which the privilege information 232 is stored in the virtual device 261 is mapped.
- the physical address of the storage area in which the normal information 233 is stored is mapped to the virtual device 261.
- mapping it is not always necessary to perform mapping so that one of the two pieces of information can be selectively accessed according to the success or failure of authentication, and access to information (eg, privilege information 232) that is desired to be concealed according to the success or failure of authentication. It is sufficient if the availability can be controlled.
- the selection service 271 associates the privilege information physical address with the virtual device address in the second conversion table when the information selection signal indicates authentication success, and sets the virtual device address when the information selection signal indicates authentication failure.
- the invalid values described above may be associated.
- the second virtual machine 202 can access the privilege information 232 when authentication is successful, and cannot access the privilege information 232 when authentication fails.
- the normal information 233 is not managed on the first virtual machine 201 side, is managed on the second virtual machine 202 side, and can always be referred to from task 1 (252) operating on the second virtual machine 202. It is good to do.
- only one account for example, an account related to the first user
- the selection service 971 associates the first mail folder physical address with the virtual mail folder address in the second conversion table.
- an invalid value is associated with the virtual mail folder address in the second conversion table.
- the hypervisor 903 refers to the second conversion table and sets the virtual mail folder address to the first mail folder physical address. Convert. Then, the hypervisor 903 accesses the storage area indicated by the first mail folder physical address.
- the hypervisor 903 refers to the second conversion table and recognizes that the physical address associated with the virtual mail folder address is an invalid value. In this case, the hypervisor 903 cannot access the storage area indicated by the first mail folder physical address, and notifies the mailer 951 of an access error.
- the first mail is sent from the mailer 951 via the virtual mail folder by associating an invalid value with the virtual mail folder address in the second conversion table. Control is performed so that neither the folder 981 nor the second mail folder 991 can be accessed.
- the authentication service 911 when authentication fails in the authentication service 911, there is no need to control so that no mail folder can be accessed via the virtual mail folder.
- a default user mail folder hereinafter referred to as “third mail folder” is prepared, and when the authentication service 911 fails in authentication, the third mail folder can be accessed via the virtual mail folder. Also good.
- the selection service 971 acquires the authentication success / failure information indicating the authentication failure from the authentication service 911, the selection service 971 describes the logical address in which the third mail folder is stored in association with the virtual mail folder address in the second conversion table. To do.
- authentication is performed using an authentication code (such as a password) or a user name and an authentication code, but it is sufficient if the user can be authenticated.
- an authentication code such as a password
- an ID (IDenty) card which is a well-known technique, or authentication using biometric information (fingerprint, voiceprint, etc.) may be performed.
- all the functions of the authentication service 212 and the authentication service 911 are arranged on the first virtual machine 201 and the first virtual machine 901 side, but this affects the level of security. Some functions that are not present may be arranged on the second virtual computer 202 and the second virtual computer 902 side.
- an input user interface for the user to input a password, an ID card, a fingerprint, a voiceprint, etc. as an authentication code is arranged on the second virtual computer 202 and the second virtual computer 902 and input by the user It is also possible to notify the first virtual machine 201 and the first virtual machine 901 of the data that has been set. In this case, if the second virtual machine 202 and the second virtual machine 902 are allowed to be changed by the user and the program vendor, the user and the program vendor can change the user interface to a desired one. In addition, user convenience can be improved.
- the first OS 211 and the second OS 251 are different types of OS, but may be the same type of OS. Further, the number of virtual machines, the number of OSs, the number of tasks, and the like described in the first and second embodiments are examples, and the present invention is not limited to these.
- Embodiments 1 and 2 virtual devices are emulated by software, but these may be realized using hardware such as MMU (Memory Management Unit).
- MMU Memory Management Unit
- the authentication cancellation instruction in the authentication service 212 and the authentication service 911 is input by the user.
- the authentication service 212 may detect that the execution of the task 1 (252) is finished and transmit an authentication cancellation instruction to the selection service 271.
- the authentication service 911 may detect that the execution of the mailer 951 is completed and transmit an authentication cancellation instruction to the selection service 271.
- the information selection signal notified to the selection service 271 by the authentication service 212 notifies which of the two states of authentication success or authentication failure. You may extend to notify.
- the information selection signal may notify the three states obtained by adding the power saving state to the two states of authentication success or authentication failure in the first embodiment.
- the selection service 271 determines whether the information selection signal indicates authentication success, authentication failure, or a power saving state. Then, depending on which information selection information indicates, in the second conversion table, the physical address of the storage area in which the privilege information 232 is recorded and the storage area in which the normal information 233 is recorded in the virtual device address Or a physical address of a storage area in which information to be used in the power saving state is recorded.
- the hypervisor 203 has the selection service 271 and provides the virtual device providing function.
- a part or all of the functions may be realized by the first virtual machine 201.
- the first virtual computer 202 may create the second conversion table as a partial function.
- the hypervisor 203 and the first virtual machine 201 may be integrated and implemented with a single program.
- the hypervisor (203, 903) allocates memory to the first virtual machine (201, 901) and the second virtual machine (202, 902) in the physical memory area. A fixed area of a specific size was allocated. However, the hypervisor may perform memory allocation using a well-known virtual storage method.
- Embodiments 1 and 2 in the virtual device providing function and the virtual mail folder providing function, when there is an access request to the virtual device (virtual mail folder) from the second virtual computer (202, 902),
- the hypervisor (203, 903) is operated by the second virtual computer (202, 902) in units of a specific byte data string or folder such as privilege information 232, normal information 233, first mail folder 981, second mail folder 991, and the like.
- a data string having a specific number of bytes may be used as a unit, or a file, a partition, or the like may be used as a unit.
- the hypervisor 203 when there is an access request to the virtual device from the second virtual machine 202 (task 1 (252)), the hypervisor 203 sends the second virtual machine 202 to the second virtual machine 202.
- the privilege information 232 managed by the first virtual machine 201 is accessed.
- the second virtual computer 202 accesses the data string of the predetermined data length called the privilege information 232 as a unit.
- the hypervisor 203 selects the virtual device address with the privilege information 232, as described with reference to FIG. 3 in the first embodiment, the hypervisor 203 (selection service 271) assigns the address D, which is the virtual device address, to the privilege information physical address. Corresponding to a certain F address. At this time, as an example, the hypervisor 203 may describe all the physical addresses assigned to the storage area in which the privilege information 232 is stored in the second conversion table so that it can be accessed using the virtual device address. .
- address (D + 1) that is a logical address is associated with address (F + 1) that is a physical address
- address (D + 10) is associated with address (F + 10).
- the hypervisor 203 converts the address (D + 10) to the address (F + 10) using the second conversion table. To do.
- the data stored at the physical address (F + 10) in the memory 122 is read and transferred to the task 1 (252).
- conversion from a logical address to a physical address is performed by the hypervisor 203 as in the case of reading.
- the authentication information DB 231 in which the authentication code is exposed if read illegally, and the encryption of the privilege information 232 that is an example of the confidential information are not mentioned at all. Encryption techniques may be combined to protect.
- FIG. 16 is a diagram showing a functional configuration of the virtual machine system 1601 according to this modification.
- the virtual machine system 1601 is obtained by adding an encryption processing unit 1610 to the virtual machine system 100 shown in FIG.
- the cryptographic processing unit 1610 is configured with an LSI for encryption and decryption as a hardware configuration.
- the authentication information DB 231 and the privilege information 232 are stored in the storage unit 205, they are stored after being encrypted by the encryption processing unit 1610.
- the authentication information DB 231 and the privilege information 232 are managed by the authentication service 212 and the privilege information management service 213 after being decrypted by the encryption processing unit 1610 when read from the storage unit 205. Is done.
- the encryption process may be performed for the entire first virtual machine 201, not for each piece of information such as the authentication information DB 231 and the privilege information 232.
- the virtual machine system 1701 stores the first OS 211, the authentication service 212, the privilege information management service 213, the normal information management service 214, the files used by the first OS 211, and the like that constitute the first virtual machine 201 in the storage device 104.
- the encryption processing unit 1710 performs encryption processing and stores the result.
- the program when a program such as the first OS 211 constituting the first virtual machine 201 is read from the storage unit 205 and expanded in the memory 122, the program is decrypted by the encryption processing unit 1710 and expanded.
- the cryptographic processing unit 1710 and the cryptographic processing unit 1610 are combined to protect the entire first virtual machine by encrypting it with the cryptographic processing unit 1710, and the authentication information DB 231 and privilege information 232 are further protected by the cryptographic processing unit 1610. You may protect by encrypting. Further, the authentication information DB 231 and the privilege information 232 are protected by encryption using the encryption processing unit 1610, and the authentication information DB 231 and the privilege information 232 other than the authentication information DB 231 and privilege information 232 are protected by encryption using the encryption processing unit 1710. Also good.
- the security strengths of the cryptographic processing unit 1610 and the cryptographic processing unit 1710 may be different. Generally, the higher the security strength, the higher the processing load required for encryption. Therefore, for example, when higher confidentiality is required for the authentication information DB 231 and the privilege information 232, the security strength of the cryptographic processing unit 1610 may be higher than the security strength of the cryptographic processing unit 1710. By doing so, it is possible to improve the security strength as compared with the case where only the cryptographic processing unit 1710 is used while suppressing an increase in processing load related to the encryption processing to a necessary level.
- the hypervisor 203 when the access request to the virtual device is made from the second virtual machine 202, the hypervisor 203 refers to the second conversion table, and the privilege information 232 is stored with the virtual device address. Was converted to a physical address.
- the hypervisor 203 allows the second virtual computer 202 to access the storage area indicated by the converted physical address. However, it is sufficient that the storage area managed on the first virtual machine 201 side can be accessed from the second virtual machine 202 side, and a conversion table such as the second conversion table is not necessarily used.
- a mechanism for accessing the storage area managed on the first virtual machine 201 side from the second virtual machine 202 side may be realized using a database.
- a database a known key / value relational database is used.
- FIG. 18 is a diagram showing a functional configuration of a virtual machine system 1800 according to this modification.
- the virtual computer system 1800 is mainly different from the virtual computer system 100 shown in FIG. 2 in that it has a relational database (DB) 1810 instead of the privilege information management service 213 and the normal information management service 214.
- DB relational database
- the relationship DB 1810 is assumed to be in the first virtual machine 1801.
- the first value 1812 is obtained by searching using the first key 1811
- the second value 1814 is obtained by searching using the second key 1813.
- the selection service 1871 of the hypervisor 1803 includes a key corresponding to the case where the information selection signal indicates authentication success (in this modification, the first key 1811) and a key corresponding to the case where the information failure indicates authentication failure (this book In the modification, the second key 1813 is stored in advance.
- the selection service 1871 receives an information selection signal from the authentication service 212.
- the selection service 1871 of the hypervisor 1803 indicates that the information selection signal indicates successful authentication.
- the first key 1811 is selected, and when the information selection signal indicates an authentication failure, the second key 1813 is selected.
- the selection service 1871 accesses the relation DB 1810 using the selected key, and reads the value obtained by performing the search using the selected key. Then, the selection service 1871 delivers the obtained value to the second virtual computer 202.
- the selection service 1871 selects the first key when the information selection signal indicates that authentication is successful, and the information selection signal is authenticated. When indicating failure, the second key is selected. Then, the selection service 1871 accesses the database using the selected key, and writes the specified data in the value storage area corresponding to the key.
- a machine language for causing the processor of the virtual machine system and various circuits connected to the processor to execute various processes such as the authentication service process, the mapping process, and the virtual device providing process described in the above embodiment.
- a control program composed of high-level language program codes can be recorded on a recording medium, or can be distributed and distributed via various communication paths.
- a recording medium includes an IC card, a hard disk, an optical disk, a flexible disk, a ROM, a flash memory, and the like.
- the distributed and distributed control program is used by being stored in a memory or the like that can be read by the processor, and the processor executes the control program to realize each function as shown in each embodiment. Will come to be.
- the processor may be compiled and executed or executed by an interpreter.
- privilege information is used as an example of confidential information.
- the information is not limited to this, and any information that is used under certain conditions is sufficient.
- each functional component described above is typically realized as an LSI which is an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them.
- the name used here is LSI, but it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.
- the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
- integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied.
- a virtual computer system includes a computer, and the computer executes a program so that the computer has a first virtual computer, a second virtual computer, and the first virtual computer. And a virtual machine system that functions as a hypervisor for executing and controlling the second virtual machine, wherein the first virtual machine performs authentication processing with holding means for holding confidential information, and sends an authentication result to the hypervisor.
- the second virtual machine uses a virtual device that is a virtualized storage device, and the hypervisor obtains an authentication result indicating successful authentication from the authentication means.
- the second virtual machine accesses the storage area in which the confidential information is stored as the entity of the virtual device. And enabling said when authentication means authentication result indicating that the authentication success from has not been obtained, the confidential information by the second virtual machine to disable the access to the storage area stored.
- the holding means is the privilege information management service 213, the mail management service 912, or the relation DB 1810 in the above-described embodiment.
- the second virtual machine does not have an authentication mechanism, and it is not possible to perform fraud that makes it possible to access confidential information by falsifying the success or failure of authentication. Can not.
- the second virtual machine simply uses the virtual device without recognizing any authentication, and whether to use the confidential information depends on the success or failure of the authentication by the authentication means of the first virtual machine. Become. Therefore, the virtual machine system according to the present invention can limit the use of confidential information by the second virtual machine when authentication is successful.
- the virtual computer system holds normal information, which is information different from the confidential information, in a storage area different from the confidential information, and the hypervisor makes a successful authentication from the authentication means.
- the second virtual machine may be allowed to access the storage area in which the normal information is stored as the substance of the virtual device.
- the hypervisor stores the normal information as a storage area in which the normal information is stored, regardless of whether an authentication result indicating successful authentication is obtained from the authentication unit.
- the confidential information is stored in addition to the storage area in which the normal information is stored as the entity of the virtual device. Access to the storage area may be enabled.
- the hypervisor associates the virtual device with a storage area in which the confidential information is stored, and performs the association. After performing the above, access to the storage area associated with the virtual device by the second virtual machine may be enabled.
- the authentication unit performs user authentication as the authentication process.
- user authentication information for identifying the user who has succeeded in the user authentication is added to the authentication result.
- the holding means holds the first user information corresponding to the first user identification information and the second user information corresponding to the second user identification information as the confidential information, and the hyper information
- the visor uses the first user information as the entity of the virtual device. Can be accessed, and the notified user identification information is the second user identification information, the entity of the virtual device is the second It may be to enable the access to the storage area where user information is stored.
- the second virtual computer uses the user information corresponding to the user who has succeeded in the authentication by simply accessing the virtual device without being aware of the authentication related to the first user and the second user. be able to.
- the confidential information is a file, and when the authentication result indicating the authentication success is obtained from the authentication unit, the hypervisor is configured as the virtual device entity by the second virtual computer. Enabling access to a file that is confidential information, and disabling access to the file that is confidential information by the second virtual machine when an authentication result indicating successful authentication is not obtained from the authentication means. It is good.
- the confidential information is partial data that is a part of data in a database.
- the hypervisor obtains an authentication result indicating successful authentication from the authentication means
- the second virtual When the computer enables access to the partial data, which is the confidential information, as the entity of the virtual device, and the authentication result indicating successful authentication is not obtained from the authentication means, the confidentiality by the second virtual computer Access to partial data that is information may be disabled.
- the confidential information is data relating to an email corresponding to one account
- the hypervisor when an authentication result indicating successful authentication is obtained from the authentication means, the second virtual computer
- the access to the data related to the mail that is the confidential information is enabled as the entity of the virtual device according to the second virtual computer. Access to the data related to the mail that is the confidential information may be disabled.
- a method for protecting confidential information according to an embodiment of the present invention includes a computer, and the computer executes a program to cause the computer to execute the first virtual computer, the second virtual computer, and the first virtual computer.
- An authentication unit in the first virtual machine performs an authentication process and notifies the hypervisor of an authentication result, and the second virtual machine uses a virtual device which is a virtualized storage device And when the hypervisor obtains an authentication result indicating successful authentication from the authentication means,
- the virtual computer enables access to the storage area in which the confidential information is stored as an entity of the virtual device and an authentication result indicating successful authentication is not obtained from the authentication unit, the second virtual And a control step of disabling access to a storage area in which the confidential information is stored by a computer.
- a confidential information protection program includes a virtual computer including a hypervisor that executes and controls a computer, one virtual computer, and the other virtual computer using the one virtual computer and the virtual device.
- a confidential information protection program for causing a computer system to function, the computer comprising: a storage unit that stores confidential information; and an authentication unit that performs authentication processing and notifies the hypervisor of an authentication result.
- the other virtual computer can access the storage area in which the confidential information is stored as an entity of the virtual device.
- the other virtual machine Serial confidential information to function as a hypervisor to disable the access to the storage area stored.
- the confidential information protection program according to the present invention other virtual machines do not have an authentication mechanism, and it is not possible to perform fraud that makes it possible to access confidential information by falsifying the success or failure of authentication. Can not.
- the other virtual machines simply use the virtual device without recognizing the authentication, and whether or not the confidential information can be used depends on the success or failure of the authentication by the authentication means of the one virtual machine. Therefore, the confidential information protection program according to the present invention can limit the use of confidential information by other virtual machines when authentication is successful.
- the virtual computer system is capable of limiting the use of confidential information when authentication is successful, and is an information terminal that stores a large amount of confidential information such as photographs, emails, and addresses It is useful for such as.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
Description
以下、本発明の一実施の形態に係る仮想計算機システム100について説明する。
<1.1.概要>
仮想計算機システム100は、一例として、ユーザ情報などの秘匿情報を取り扱う情報端末である。本実施の形態では、秘匿情報の一例として特権情報を用いる。特権情報は、第1の仮想計算機では使用可能であり、第2の仮想計算機では原則使用できないが、一定の条件として、認証コードによるユーザ認証に成功したという特権がある場合にのみ使用が認められる情報である。
<1.2.構成>
<1.2.1.ハードウェア構成>
図1は、本発明の一実施の形態に係る仮想計算機システム100の主要なハードウェア構成を示すブロック図である。
<1.2.2.機能構成>
次に、図1を用いて説明したハードウェア構成を備える仮想計算機システム100の機能面から見た構成について、図面を参照しながら説明する。
<入力部204、記憶部205及び表示部206>
入力部204は、入力装置102で構成され、ユーザが入力装置102を操作して入力する入力情報を、第1仮想計算機201及び第2仮想計算機202のいずれかに適切に振り分けて通知する機能を有する。
<第1仮想計算機201>
第1仮想計算機201は、第1OS211と、第1OS211により実行制御されるタスク群とによる情報処理を、ハイパーバイザ203により割り当てられるハードウェア資源を用いて具体的に実現する仮想的な計算機である。
(1)第1OS211
第1OS211は、セキュアOSであり、外部からの侵入の検出と防御、ファイルの保護といったセキュリティ機能が一般的なOSに比べて強化されている。第1OS211は、認証サービス212、特権情報管理サービス213、及び通常情報管理サービス214などのタスクについて実行制御を行う機能を有する。以下、第1OS211により実行制御されるタスクを総称して「管理タスク」という。
(2)認証サービス212
認証サービス212は、仮想計算機システム100のユーザについて認証を行う認証機能(図4参照)を有する。認証サービス212は、認証に用いる認証情報DB(データベース)231を記憶部205から読み出して使用する。ここで、認証情報DB231は、認証コードを記録しているデータベースである。認証コードは、一例としてパスワードとする。
(3)特権情報管理サービス213、通常情報管理サービス214
特権情報管理サービス213は、特権情報232の管理を行う機能を有する。特権情報232の管理として、特権情報管理サービス213は、記憶部205から特権情報232を読み出して保持する。そして、特権情報管理サービス213は、特権情報232を保持している記憶領域の論理アドレス(第1OS211により管理されている論理アドレス空間におけるアドレスである。以下、「特権情報論理アドレス」という。)をハイパーバイザ203に通知する。なお、以下、特権情報232を記憶している記憶領域の物理アドレスを「特権情報物理アドレス」という。
<第2仮想計算機202>
第2仮想計算機202は、第2OS251と、第2OS251により実行制御されるタスク群とによる情報処理を、ハイパーバイザ203により割り当てられるハードウェア資源を用いて具体的に実現する仮想的な計算機である。第2OS251により実行制御されるタスク群には、タスク1(252)、タスク2(253)、・・・タスクN(Nは任意の自然数)(254)が含まれる。以下、第2OS251により実行制御されるタスクを総称して「一般タスク」という。
(1)第2OS251
第2OS251は、セキュアOSではない一般的なOSであり、タスク1(252)~タスクN(254)の実行制御を行う機能を有する。
(2)タスク1(252)、タスク2(253)、・・・タスクN(254)
タスク1(252)~タスクN(254)は、処理の実行単位であり、ユーザやアプリケーションベンダにより作成されるプログラムとして実装されている。
<ハイパーバイザ203>
ハイパーバイザ203は、ハードウェアをソフトウェアで仮想化した複数の仮想計算機環境を含み、各仮想計算機環境を用いてOS等を含む仮想計算機を動作させる制御プログラムである。ハイパーバイザ203は、主要な機能として、スケジューリング機能、マッピング機能及び仮想デバイス提供機能を有する。ハイパーバイザ203は、主に仮想デバイス提供機能を実現する選択サービス271を含む。
(1)スケジューリング機能
スケジューリング機能は、仮想計算機システム100のハードウェア資源を、第1仮想計算機201及び第2仮想計算機202に割り当てる機能である。ハイパーバイザ203は、各仮想計算機に対し、割り当てるハードウェア資源に応じて予め定めているスケジューリング手法(時分割、固定割り当てなど)に基づき、各ハードウェア資源を割り当てる。
(2)マッピング機能
マッピング機能は、メモリ122の記憶領域である物理メモリ領域を第1仮想計算機201及び第2仮想計算機202に割り当てて、論理アドレスと物理アドレスとの対応付けを管理する機能である(図5参照)。第1仮想計算機201及び第2仮想計算機202は、割り当てられた物理メモリ領域を論理メモリ領域として管理する。すなわち、第1仮想計算機201及び第2仮想計算機202は、割り当てられたメモリ領域における各記憶領域を、論理アドレスを用いて特定する。
(3)仮想デバイス提供機能
仮想デバイス提供機能は、第1仮想計算機201の認証サービス212における認証が成功した場合に限り、第2仮想計算機202における一般タスクから、仮想デバイス261を用いて第1仮想計算機201に保持されている特権情報232にアクセスできるよう制御する機能である(図6及び図7参照)。仮想計算機システム100では、仮想デバイスI/Fとして、仮想デバイス261における仮想的な記憶領域を特定する論理アドレス(以下、「仮想デバイスアドレス」という。)が定められているものとする。
ここで、仮想デバイス提供機能について、図3を参照しながら具体例を用いて説明する。前提として、物理アドレスがF番地である記憶領域321に特権情報232が記憶されているものとする。すなわち、特権情報物理アドレスはF番地である。また、特権情報論理アドレスはE番地であるとする。選択サービス271は、特権情報管理サービス213から特権情報論理アドレスの通知を受け取っているものとする。
<1.3.動作>
<1.3.1.認証サービス処理の動作>
以下、認証サービス212による認証サービス処理について説明する。
<1.3.2.選択サービス271によるマッピング処理>
以下、ハイパーバイザ203の選択サービス271によるマッピング処理について説明する。
<1.3.3.仮想デバイス261の読み出し処理>
以下、仮想デバイス261の読み出し処理の一例として、第2仮想計算機202の一般タスクであるタスク1(252)による読み出し処理について説明する。
<1.3.4.仮想デバイス261へのデータの書き込み処理>
以下、仮想デバイス261へのデータの書き込み処理の一例として、第2仮想計算機202の一般タスクであるタスク1(252)による、仮想デバイス261へのデータの書き込み処理について説明する。
<1.3.5.画面表示例>
図8に、タスク1(252)が特権情報232及び通常情報233を用いて行う処理の一例である、画像表示処理における画像表示例を示す。画面800は、認証サービス212における認証が失敗している場合の、表示部206におけるディスプレイの表示画面を表している。また、画面802は、認証サービス212における認証が成功している場合の、表示部206におけるディスプレイの表示画面を表している。
<2.実施の形態2>
<2.1.概要>
実施の形態1では、第2仮想計算機202が仮想デバイス261にアクセスした場合に、第1仮想計算機201における認証結果に応じて、第1仮想計算機201が保持している特権情報か通常情報のいずれかにアクセスできるようハイパーバイザ203が制御する例について説明した。
<2.2.構成>
本実施の形態に係る仮想計算機システムのハードウェア構成は、実施の形態1において図1を用いて説明したものと同様である。
<第1仮想計算機901>
第1仮想計算機901は、管理タスクとして、認証サービス911及びメール管理サービス912が動作している点が、第1の実施の形態に係る第1仮想計算機201と異なる。
(1)認証サービス911
認証サービス911は、認証コードに加え、ユーザ名を用いて認証処理を行う点が実施の形態1と異なる。認証サービス911は、データベースとして、各ユーザのユーザ名と各ユーザ固有の認証コードとを対応付けて記録している認証情報DB931を使用する。認証サービス911は、入力部204から、ユーザにより入力されるユーザ名と認証コードとを取得する。そして、取得したユーザ名と認証コードとが対応付けて認証情報DB931に記録されているか否か検証し、記録されている場合には情報選択信号として、認証成功を示す認証成否情報と認証に成功したユーザのユーザ名とを表す信号をハイパーバイザ903に通知する。また、認証サービス911は、取得したユーザ名と認証コードとが対応付けて認証情報DB931に記録されていない場合には、情報選択信号として、認証失敗を示す認証成否情報を表す信号をハイパーバイザ903に通知する。
(2)メール管理サービス912
メール管理サービス912は、メールの本文及びアドレス帳などメールに係るデータが記録されたメールフォルダの管理を行う機能を有する。メールフォルダの管理として、メール管理サービス912は、以下の処理を行う。まず、メール管理サービス912は、記憶部205から第1メールフォルダ981及び第2メールフォルダ991を読み出して保持する。
<第2仮想計算機902>
第2仮想計算機902は、一般タスクとしてタスク1(252)に代えてメーラ951が動作する点が実施の形態1の第2仮想計算機202と異なる。また、本実施の形態では、仮想デバイスI/Fとして、仮想メールフォルダにアクセスするための特定の論理アドレスである仮想メールフォルダアドレスが用いられる。
<ハイパーバイザ903>
ハイパーバイザ903は、実施の形態1のハイパーバイザ203とは、仮想デバイス提供機能に代えて仮想メールフォルダ提供機能を有する点が異なる。また、ハイパーバイザ903は、仮想メールフォルダ提供機能を実現する選択サービス971を含む。
(仮想メールフォルダ提供機能)
仮想メールフォルダ提供機能は、第1仮想計算機901の認証サービス911における認証が成功した場合に限り、第2仮想計算機902における一般タスクであるメーラ951から、仮想メールフォルダを用いて、第1仮想計算機901に保持されている第1メールフォルダ981又は第2メールフォルダ991にアクセスできるよう制御する機能である(図13及び図14参照)。
(マッピング)
ここで、本実施の形態におけるマッピングについて図10を用いて説明する。本実施の形態では、一例として、物理アドレスがF番地である記憶領域321に第1メールフォルダ981が記憶され、物理アドレスがH番地である記憶領域322に第2メールフォルダ991が記憶されるものとする。よって、第1メールフォルダ物理アドレスはF番地であり、第1メールフォルダ論理アドレスはE番地である。また、第2メールフォルダ物理アドレスはH番地であり、第2メールフォルダ論理アドレスはG番地である。
<2.3.動作>
<2.3.1.認証サービス処理の動作>
以下、認証サービス911による認証サービス処理について説明する。
<2.3.2.選択サービス971によるマッピング処理>
以下、ハイパーバイザ903の選択サービス971によるマッピング処理について説明する。
<2.3.3.仮想メールフォルダの読み出し処理>
以下、仮想メールフォルダの読み出し処理の一例として、第2仮想計算機902の一般タスクであるメーラ951による読み出し処理について説明する。
<2.3.4.仮想メールフォルダへのデータの書き込み処理>
以下、仮想メールフォルダへのデータの書き込み処理の一例として、第2仮想計算機902の一般タスクであるメーラ951による、仮想メールフォルダへのデータの書き込み処理について説明する。
<2.3.5.画面表示例>
図15に、第1メールフォルダ及び第2メールフォルダを用いてメーラ951が行う処理の一例である、メール表示処理における画面表示例を示す。画面1500は、認証サービス911における認証が失敗している場合の、表示部206におけるディスプレイの表示画面を表している。また、画面1502は、認証サービス911における認証が成功している場合の、表示部206におけるディスプレイの表示画面を表している。
<3.変形例>
以上、本発明に係る仮想計算機システムの実施の形態を説明したが、例示した仮想計算機システムを以下のように変形することも可能であり、本発明が上述の実施の形態で示した通りの仮想計算機システムに限られないことは勿論である。
<4.補足>
以下、更に本発明の一実施の形態としての仮想計算機システムの構成及びその変形例と効果について説明する。
(3)また、前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているか否かにかかわらず、前記仮想デバイスの実体として、前記通常情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られているときには、前記仮想デバイスの実体として、前記通常情報が記憶されている記憶領域に加え、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化することとしてもよい。
(4)また、前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られたときには、前記仮想デバイスと前記秘匿情報が記憶されている記憶領域との対応付けを行い、前記対応付けを行った後においては、前記第2の仮想計算機による前記仮想デバイスに対応付けた前記記憶領域へのアクセスを可能化することとしてもよい。
(5)また、前記認証手段は、前記認証処理としてユーザ認証を行い、前記ユーザ認証に成功した場合には、前記認証結果に加えて、前記ユーザ認証に成功したユーザを識別するユーザ識別情報を通知し、前記保持手段は、前記秘匿情報として、第1のユーザ識別情報に対応する第1のユーザ情報と、第2のユーザ識別情報に対応する第2のユーザ情報とを保持し、前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られ、かつ通知されたユーザ識別情報が第1のユーザ識別情報である場合には、前記仮想デバイスの実体として、前記第1のユーザ情報が記憶されている記憶領域へのアクセスを可能化し、通知されたユーザ識別情報が前記第2のユーザ識別情報である場合には、前記仮想デバイスの実体として、前記第2のユーザ情報が記憶されている記憶領域へのアクセスを可能化することとしてもよい。
(6)前記秘匿情報は、ファイルであり、前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報であるファイルへのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報であるファイルへのアクセスを不能化することとしてもよい。
(7)また、前記秘匿情報は、データベースにおけるデータの一部である部分データであり、前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報である部分データへのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報である部分データへのアクセスを不能化することとしてもよい。
(8)また、前記秘匿情報は、一アカウントに対応するメールに係るデータであり、前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報であるメールに係るデータへのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報であるメールに係るデータへのアクセスを不能化することとしてもよい。
(9)本発明の一実施形態に係る秘匿情報保護方法は、コンピュータを含み、プログラムを実行することにより前記コンピュータが、第1の仮想計算機と、第2の仮想計算機と、前記第1の仮想計算機及び前記第2の仮想計算機を実行制御するハイパーバイザとして機能する仮想計算機システムが実行する秘匿情報保護方法であって、前記第1の仮想計算機における保持手段が、秘匿情報を保持する保持ステップと、前記第1の仮想計算機における認証手段が、認証処理を行い、認証結果を前記ハイパーバイザに通知する認証ステップと、前記第2の仮想計算機が、仮想化された記憶装置である仮想デバイスを利用する利用ステップと、前記ハイパーバイザが、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報が記憶されている記憶領域へのアクセスを不能化する制御ステップとを含む。
(10)本発明の一実施形態に係る秘匿情報保護プログラムは、コンピュータを、一の仮想計算機と、前記一の仮想計算機及び仮想デバイスを利用する他の仮想計算機を実行制御するハイパーバイザを含む仮想計算機システムとして機能させるための秘匿情報保護プログラムであって、前記コンピュータを、秘匿情報を保持する保持手段と、認証処理を行い、認証結果を前記ハイパーバイザに通知する認証手段とを備える前記一の仮想計算機と、前記認証手段から認証成功を示す認証結果が得られているときには、前記他の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記他の仮想計算機による前記秘匿情報が記憶されている記憶領域へのアクセスを不能化するハイパーバイザとして機能させる。
201、901、1602、1801 第1仮想計算機
202、902 第2仮想計算機
203、903、1803 ハイパーバイザ
204 入力部
205 記憶部
206 表示部
211 第1OS
212、911 認証サービス
213 特権情報管理サービス
214 通常情報管理サービス
231、931 識別情報DB
232 特権情報
233 通常情報
251 第2OS
261 仮想デバイス
271、971、1871 選択サービス
912 メール管理サービス
951 メーラ
981 第1メールフォルダ
991 第2メールフォルダ
Claims (10)
- コンピュータを含み、プログラムを実行することにより前記コンピュータが、第1の仮想計算機と、第2の仮想計算機と、前記第1の仮想計算機及び前記第2の仮想計算機を実行制御するハイパーバイザとして機能する仮想計算機システムであって、
前記第1の仮想計算機は、
秘匿情報を保持する保持手段と、
認証処理を行い、認証結果を前記ハイパーバイザに通知する認証手段とを備え、
前記第2の仮想計算機は、仮想化された記憶装置である仮想デバイスを利用し、
前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報が記憶されている記憶領域へのアクセスを不能化する
ことを特徴とする仮想計算機システム。 - 前記仮想計算機システムは、前記秘匿情報とは異なる情報である通常情報を、前記秘匿情報とは異なる記憶領域に保持しており、
前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記通常情報が記憶されている記憶領域へのアクセスを可能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - 前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているか否かにかかわらず、前記仮想デバイスの実体として、前記通常情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られているときには、前記仮想デバイスの実体として、前記通常情報が記憶されている記憶領域に加え、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - 前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られたときには、前記仮想デバイスと前記秘匿情報が記憶されている記憶領域との対応付けを行い、前記対応付けを行った後においては、前記第2の仮想計算機による前記仮想デバイスに対応付けた前記記憶領域へのアクセスを可能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - 前記認証手段は、前記認証処理としてユーザ認証を行い、前記ユーザ認証に成功した場合には、前記認証結果に加えて、前記ユーザ認証に成功したユーザを識別するユーザ識別情報を通知し、
前記保持手段は、前記秘匿情報として、第1のユーザ識別情報に対応する第1のユーザ情報と、第2のユーザ識別情報に対応する第2のユーザ情報とを保持し、
前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られ、かつ通知されたユーザ識別情報が第1のユーザ識別情報である場合には、前記仮想デバイスの実体として、前記第1のユーザ情報が記憶されている記憶領域へのアクセスを可能化し、通知されたユーザ識別情報が前記第2のユーザ識別情報である場合には、前記仮想デバイスの実体として、前記第2のユーザ情報が記憶されている記憶領域へのアクセスを可能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - 前記秘匿情報は、ファイルであり、
前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報であるファイルへのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報であるファイルへのアクセスを不能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - 前記秘匿情報は、データベースにおけるデータの一部である部分データであり、
前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報である部分データへのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報である部分データへのアクセスを不能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - 前記秘匿情報は、一アカウントに対応するメールに係るデータであり、
前記ハイパーバイザは、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報であるメールに係るデータへのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報であるメールに係るデータへのアクセスを不能化する
ことを特徴とする請求項1記載の仮想計算機システム。 - コンピュータを含み、プログラムを実行することにより前記コンピュータが、第1の仮想計算機と、第2の仮想計算機と、前記第1の仮想計算機及び前記第2の仮想計算機を実行制御するハイパーバイザとして機能する仮想計算機システムが実行する秘匿情報保護方法であって、
前記第1の仮想計算機における保持手段が、秘匿情報を保持する保持ステップと、
前記第1の仮想計算機における認証手段が、認証処理を行い、認証結果を前記ハイパーバイザに通知する認証ステップと、
前記第2の仮想計算機が、仮想化された記憶装置である仮想デバイスを利用する利用ステップと、
前記ハイパーバイザが、前記認証手段から認証成功を示す認証結果が得られているときには、前記第2の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記第2の仮想計算機による前記秘匿情報が記憶されている記憶領域へのアクセスを不能化する制御ステップと
を含むことを特徴とする秘匿情報保護方法。 - コンピュータを、一の仮想計算機と、前記一の仮想計算機及び仮想デバイスを利用する他の仮想計算機を実行制御するハイパーバイザを含む仮想計算機システムとして機能させるための秘匿情報保護プログラムであって、
前記コンピュータを、
秘匿情報を保持する保持手段と、
認証処理を行い、認証結果を前記ハイパーバイザに通知する認証手段とを備える前記一の仮想計算機と、
前記認証手段から認証成功を示す認証結果が得られているときには、前記他の仮想計算機による、前記仮想デバイスの実体として、前記秘匿情報が記憶されている記憶領域へのアクセスを可能化し、前記認証手段から認証成功を示す認証結果が得られていないときには、前記他の仮想計算機による前記秘匿情報が記憶されている記憶領域へのアクセスを不能化するハイパーバイザとして機能させる
ことを特徴とする秘匿情報保護プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014500592A JP5981984B2 (ja) | 2012-02-22 | 2013-02-20 | 仮想計算機システム、秘匿情報保護方法及び秘匿情報保護プログラム |
CN201380001097.1A CN103502993A (zh) | 2012-02-22 | 2013-02-20 | 虚拟计算机系统、保密信息保护方法以及保密信息保护程序 |
US14/008,785 US9460276B2 (en) | 2012-02-22 | 2013-02-20 | Virtual machine system, confidential information protection method, and confidential information protection program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012-036010 | 2012-02-22 | ||
JP2012036010 | 2012-02-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013125222A1 true WO2013125222A1 (ja) | 2013-08-29 |
Family
ID=49005417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/000962 WO2013125222A1 (ja) | 2012-02-22 | 2013-02-20 | 仮想計算機システム、秘匿情報保護方法及び秘匿情報保護プログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US9460276B2 (ja) |
JP (1) | JP5981984B2 (ja) |
CN (1) | CN103502993A (ja) |
WO (1) | WO2013125222A1 (ja) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018029267A (ja) * | 2016-08-18 | 2018-02-22 | 富士通株式会社 | プログラマブルロジック装置、情報処理装置、処理方法、及び処理プログラム |
JP6999855B1 (ja) | 2013-09-09 | 2022-01-24 | アップル インコーポレイテッド | アンロック入力に基づいてユーザインタフェースを操作するためのデバイス、方法、及びグラフィカルユーザインタフェース |
US11386189B2 (en) | 2017-09-09 | 2022-07-12 | Apple Inc. | Implementation of biometric authentication |
US11393258B2 (en) | 2017-09-09 | 2022-07-19 | Apple Inc. | Implementation of biometric authentication |
US11468155B2 (en) | 2007-09-24 | 2022-10-11 | Apple Inc. | Embedded authentication systems in an electronic device |
US11619991B2 (en) | 2018-09-28 | 2023-04-04 | Apple Inc. | Device control using gaze information |
US11676373B2 (en) | 2008-01-03 | 2023-06-13 | Apple Inc. | Personal computing device control using face detection and recognition |
US11755712B2 (en) | 2011-09-29 | 2023-09-12 | Apple Inc. | Authentication with secondary approver |
US11809784B2 (en) | 2018-09-28 | 2023-11-07 | Apple Inc. | Audio assisted enrollment |
US11836725B2 (en) | 2014-05-29 | 2023-12-05 | Apple Inc. | User interface for payments |
US11928200B2 (en) | 2018-06-03 | 2024-03-12 | Apple Inc. | Implementation of biometric authentication |
US12079458B2 (en) | 2016-09-23 | 2024-09-03 | Apple Inc. | Image data for enhanced user interactions |
US12099586B2 (en) | 2021-01-25 | 2024-09-24 | Apple Inc. | Implementation of biometric authentication |
US12210603B2 (en) | 2021-03-04 | 2025-01-28 | Apple Inc. | User interface for enrolling a biometric feature |
US12216754B2 (en) | 2021-05-10 | 2025-02-04 | Apple Inc. | User interfaces for authenticating to perform secure operations |
US12262111B2 (en) | 2011-06-05 | 2025-03-25 | Apple Inc. | Device, method, and graphical user interface for accessing an application in a locked device |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9129124B2 (en) * | 2012-04-12 | 2015-09-08 | Hewlett-Packard Development Company, L.P. | Dynamic provisioning of virtual systems |
US9959203B2 (en) * | 2014-06-23 | 2018-05-01 | Google Llc | Managing storage devices |
KR20160091663A (ko) * | 2015-01-26 | 2016-08-03 | 삼성전자주식회사 | 멀티 플랫폼 기반의 어플리케이션 실행 방법 및 장치 |
KR102484606B1 (ko) * | 2016-03-11 | 2023-01-05 | 삼성전자주식회사 | 전자장치 및 그 제어방법 |
US10841291B2 (en) * | 2018-05-31 | 2020-11-17 | Vmware, Inc. | Method for block authentication using embedded virtual machines |
WO2020000145A1 (en) * | 2018-06-25 | 2020-01-02 | Intel Corporation | World-switch as a way to schedule multiple isolated tasks within a VM |
US10904330B2 (en) * | 2018-07-10 | 2021-01-26 | Vmware, Inc. | Systems, methods and apparatus to manage services in distributed systems |
US11475413B2 (en) * | 2019-04-25 | 2022-10-18 | Red Hat, Inc. | Concurrent meeting and compute instance scheduling |
US11620149B2 (en) * | 2020-06-25 | 2023-04-04 | Red Hat, Inc. | Safe entropy source for encrypted virtual machines |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010055318A (ja) * | 2008-08-27 | 2010-03-11 | Hitachi Ltd | ハイパバイザを有する計算機システム |
JP2010191681A (ja) * | 2009-02-18 | 2010-09-02 | Ntt Docomo Inc | データ処理装置、データ処理方法、データ処理プログラム |
WO2012117465A1 (ja) * | 2011-03-02 | 2012-09-07 | パナソニック株式会社 | 仮想計算機システム、仮想計算機制御方法、仮想計算機制御プログラム、及び半導体集積回路 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1431423A (en) | 1973-05-31 | 1976-04-07 | Honeywell Inf Systems | Virtual computer systems |
US6249866B1 (en) | 1997-09-16 | 2001-06-19 | Microsoft Corporation | Encrypting file system and method |
JP2002323986A (ja) | 2001-04-25 | 2002-11-08 | Hitachi Ltd | コンピュータリソース流通システム及び方法 |
US7886126B2 (en) | 2005-01-14 | 2011-02-08 | Intel Corporation | Extended paging tables to map guest physical memory addresses from virtual memory page tables to host physical memory addresses in a virtual machine system |
CN100517276C (zh) | 2006-07-04 | 2009-07-22 | 联想(北京)有限公司 | 一种数据安全存储的方法及装置 |
US8468591B2 (en) * | 2006-10-13 | 2013-06-18 | Computer Protection Ip, Llc | Client authentication and data management system |
JP5260081B2 (ja) | 2008-02-25 | 2013-08-14 | パナソニック株式会社 | 情報処理装置及びその制御方法 |
JP5626839B2 (ja) * | 2010-03-19 | 2014-11-19 | 富士通株式会社 | 仮想計算機システム、仮想計算機制御装置および仮想計算機システムの実行方法 |
US9069587B2 (en) * | 2011-10-31 | 2015-06-30 | Stec, Inc. | System and method to cache hypervisor data |
-
2013
- 2013-02-20 WO PCT/JP2013/000962 patent/WO2013125222A1/ja active Application Filing
- 2013-02-20 CN CN201380001097.1A patent/CN103502993A/zh active Pending
- 2013-02-20 US US14/008,785 patent/US9460276B2/en not_active Expired - Fee Related
- 2013-02-20 JP JP2014500592A patent/JP5981984B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010055318A (ja) * | 2008-08-27 | 2010-03-11 | Hitachi Ltd | ハイパバイザを有する計算機システム |
JP2010191681A (ja) * | 2009-02-18 | 2010-09-02 | Ntt Docomo Inc | データ処理装置、データ処理方法、データ処理プログラム |
WO2012117465A1 (ja) * | 2011-03-02 | 2012-09-07 | パナソニック株式会社 | 仮想計算機システム、仮想計算機制御方法、仮想計算機制御プログラム、及び半導体集積回路 |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11468155B2 (en) | 2007-09-24 | 2022-10-11 | Apple Inc. | Embedded authentication systems in an electronic device |
US11676373B2 (en) | 2008-01-03 | 2023-06-13 | Apple Inc. | Personal computing device control using face detection and recognition |
US12262111B2 (en) | 2011-06-05 | 2025-03-25 | Apple Inc. | Device, method, and graphical user interface for accessing an application in a locked device |
US11755712B2 (en) | 2011-09-29 | 2023-09-12 | Apple Inc. | Authentication with secondary approver |
US11768575B2 (en) | 2013-09-09 | 2023-09-26 | Apple Inc. | Device, method, and graphical user interface for manipulating user interfaces based on unlock inputs |
US11494046B2 (en) | 2013-09-09 | 2022-11-08 | Apple Inc. | Device, method, and graphical user interface for manipulating user interfaces based on unlock inputs |
US12314527B2 (en) | 2013-09-09 | 2025-05-27 | Apple Inc. | Device, method, and graphical user interface for manipulating user interfaces based on unlock inputs |
US11287942B2 (en) | 2013-09-09 | 2022-03-29 | Apple Inc. | Device, method, and graphical user interface for manipulating user interfaces |
JP2022025070A (ja) * | 2013-09-09 | 2022-02-09 | アップル インコーポレイテッド | アンロック入力に基づいてユーザインタフェースを操作するためのデバイス、方法、及びグラフィカルユーザインタフェース |
JP6999855B1 (ja) | 2013-09-09 | 2022-01-24 | アップル インコーポレイテッド | アンロック入力に基づいてユーザインタフェースを操作するためのデバイス、方法、及びグラフィカルユーザインタフェース |
US11836725B2 (en) | 2014-05-29 | 2023-12-05 | Apple Inc. | User interface for payments |
JP2018029267A (ja) * | 2016-08-18 | 2018-02-22 | 富士通株式会社 | プログラマブルロジック装置、情報処理装置、処理方法、及び処理プログラム |
US12079458B2 (en) | 2016-09-23 | 2024-09-03 | Apple Inc. | Image data for enhanced user interactions |
US11386189B2 (en) | 2017-09-09 | 2022-07-12 | Apple Inc. | Implementation of biometric authentication |
US11765163B2 (en) | 2017-09-09 | 2023-09-19 | Apple Inc. | Implementation of biometric authentication |
US11393258B2 (en) | 2017-09-09 | 2022-07-19 | Apple Inc. | Implementation of biometric authentication |
US11928200B2 (en) | 2018-06-03 | 2024-03-12 | Apple Inc. | Implementation of biometric authentication |
US12189748B2 (en) | 2018-06-03 | 2025-01-07 | Apple Inc. | Implementation of biometric authentication |
US12105874B2 (en) | 2018-09-28 | 2024-10-01 | Apple Inc. | Device control using gaze information |
US12124770B2 (en) | 2018-09-28 | 2024-10-22 | Apple Inc. | Audio assisted enrollment |
US11809784B2 (en) | 2018-09-28 | 2023-11-07 | Apple Inc. | Audio assisted enrollment |
US11619991B2 (en) | 2018-09-28 | 2023-04-04 | Apple Inc. | Device control using gaze information |
US12099586B2 (en) | 2021-01-25 | 2024-09-24 | Apple Inc. | Implementation of biometric authentication |
US12210603B2 (en) | 2021-03-04 | 2025-01-28 | Apple Inc. | User interface for enrolling a biometric feature |
US12216754B2 (en) | 2021-05-10 | 2025-02-04 | Apple Inc. | User interfaces for authenticating to perform secure operations |
Also Published As
Publication number | Publication date |
---|---|
US20140020086A1 (en) | 2014-01-16 |
US9460276B2 (en) | 2016-10-04 |
JPWO2013125222A1 (ja) | 2015-07-30 |
JP5981984B2 (ja) | 2016-08-31 |
CN103502993A (zh) | 2014-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5981984B2 (ja) | 仮想計算機システム、秘匿情報保護方法及び秘匿情報保護プログラム | |
US8856521B2 (en) | Methods and systems for performing secure operations on an encrypted file | |
CN103353931B (zh) | 安全增强型计算机系统和方法 | |
CN100449560C (zh) | 一种计算机数据安全防护方法 | |
KR101263061B1 (ko) | 점대점 상호연결 시스템 상에서의 보안 환경 초기화 명령의실행 | |
JP5611598B2 (ja) | Usbトークン上の暗号化キーコンテナ | |
EP3160103B1 (en) | Method, apparatus and system for encryption/decryption in virtualization system | |
JP5983940B2 (ja) | 情報処理装置、情報処理方法、プログラム、集積回路 | |
KR101323858B1 (ko) | 가상화 시스템에서 메모리 접근을 제어하는 장치 및 방법 | |
KR102295960B1 (ko) | 가상화 기반의 보안 서비스 제공 장치 및 제공 방법 | |
JP4850830B2 (ja) | コンピュータシステム及びプログラム生成装置 | |
JP6511161B2 (ja) | データファイルの保護 | |
CN107038369A (zh) | 一种资源访问控制的方法及终端 | |
US8750519B2 (en) | Data protection system, data protection method, and memory card | |
US20130268777A1 (en) | Securing Inputs from Malware | |
US20130031602A1 (en) | Thin client system, and access control method and access control program for thin client system | |
CN101430700B (zh) | 文件系统管理装置和方法以及存储装置 | |
Chen et al. | A cross-layer plausibly deniable encryption system for mobile devices | |
KR20190012093A (ko) | 데이터 보호 기능을 갖는 ssd 기반의 저장미디어 | |
US20220326863A1 (en) | Data storage apparatus with variable computer file system | |
CN110352411A (zh) | 用于控制对安全计算资源的访问的方法和装置 | |
JP7457842B2 (ja) | 情報処理装置、情報処理システム、及び情報処理方法 | |
JP2016224829A (ja) | ダンプ処理プログラム、情報処理装置、およびダンプ処理方法 | |
US11783095B2 (en) | System and method for managing secure files in memory | |
TWI263432B (en) | Data security method for storage apparatus and storage media and electronic device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 14008785 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2014500592 Country of ref document: JP Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13752479 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13752479 Country of ref document: EP Kind code of ref document: A1 |