Methods and systems for providing a secure application environment using derived user accounts
First Claim
1. A method of creating a secure application execution environment in a computer system comprising at least one resource, wherein access to the resource is governed by a concurrently executing user account, the method comprising:
- determining if the at least one resource is within the secure application execution environment; and
,if the at least one resource is within the secure application execution environment,determining a transformation rule for the at least one resource based on the user account; and
handling a request to access the at least one resource in accordance with the transformation rule for the at least one resource.
3 Assignments
0 Petitions
Accused Products
Abstract
A secure application environment (“SAE”) may be created by using derivation transformations (“DTs”) to create a derived user account (“DUA”) based on the original user account (“OUA”). An SAE may be created by selecting for each resource whose access is controlled by the OUA a DT that provides security for that resource without, whenever possible, reducing the functionality of the system as a whole, and creating a means for accessing a version of each resource based on the selected DT that may be accessed by an insecure actor.
-
Citations
69 Claims
-
1. A method of creating a secure application execution environment in a computer system comprising at least one resource, wherein access to the resource is governed by a concurrently executing user account, the method comprising:
-
determining if the at least one resource is within the secure application execution environment; and
,if the at least one resource is within the secure application execution environment, determining a transformation rule for the at least one resource based on the user account; and handling a request to access the at least one resource in accordance with the transformation rule for the at least one resource. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of creating a secure application execution environment in a computer system that allows access to resources based on a concurrently executing user account, the method comprising:
-
receiving a request to access a resource, to which access is governed by the user account, the request specifying the requested resource and an access type; dynamically determining a transformation rule for the requested resource based on the access type; and handling the request to access the resource in accordance with the transformation rule. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A method for creating a secure application execution environment in a computer system comprising at least one resource, the method comprising:
-
generating a concurrently executing user account associated with the secure application execution environment, the user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; receiving a request to access a resource, the request specifying the requested resource and a requested access type; and accessing the requested resource based on the derivation transformation associated with the one of the at least one matching resources, if the requested access is allowable. - View Dependent Claims (19)
-
-
20. A method of handling a request to access a resource in a computer system or network of computers, the method comprising:
-
generating a table comprising window handles that are valid within a concurrently executing secure application execution environment; intercepting a system call comprising a window handle representing a resource that a user wishes to access; determining if the window handle exists in the table; granting access to the resource, if the window handle exists in the table; and refusing access if the window handle does not exist in the table.
-
-
21. A method for creating a secure application execution environment in a computer system comprising at least one resource, the method comprising:
-
generating a concurrently executing first user account associated with the secure application execution environment, the first user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; generating a concurrently executing second user account based on the first user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the first user account, at least one allowed access type and at least one derivation transformation; receiving a request to access a resource, the request specifying the requested resource and a requested access type; and accessing the requested resource based on the derivation transformation associated with the one of the at least one matching resources, if the requested access is allowable.
-
-
22. A method for creating a secure application execution environment in a computer system comprising at least one resource, the method comprising:
-
generating at least one concurrently executing user account associated with the secure application execution environment, the at least one user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; intercepting a request to access a resource, the request specifying the requested resource and a requested access type; and if the requested resource is within the secure application execution environment, modifying the request based on the derivation transformation associated with the requested resource; and performing the modified request; and if the requested resource is not within the secure application execution environment, rejecting the request. - View Dependent Claims (23)
-
-
24. An apparatus comprising:
-
at least one memory having program instructions to execute an operating system; and at least one processor configured to execute the program instructions to perform the operations of; determining if the at least one resource is within the secure application execution environment; and
,if the at least one resource is within the secure application execution environment, determining a transformation rule for the at least one resource based on a concurrently executing user account; and handling a request to access the at least one resource in accordance with the transformation rule for the at least one resource. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. An apparatus comprising:
-
at least one memory having program instructions to execute an operating system; and at least one processor configured to execute the program instructions to perform the operations of; receiving a request to access a resource to which access is governed by a concurrently executing user account, the request specifying the requested resource and an access type; dynamically determining a transformation rule for the requested resource based on the access type; and handling the request to access the resource in accordance with the transformation rule. - View Dependent Claims (35, 36, 37, 38, 39, 40)
-
-
41. An apparatus comprising:
-
at least one memory having program instructions to execute an operating system; and at least one processor configured to execute the program instructions to perform the operations of; generating a concurrently executing user account associated with the secure application execution environment, the user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; receiving a request to access a resource, the request specifying the requested resource and a requested access type; and accessing the requested resource based on the derivation transformation associated with the one of the at least one matching resources, if the requested access is allowable. - View Dependent Claims (42)
-
-
43. An apparatus comprising:
-
at least one memory having program instructions to execute an operating system; and at least one processor configured to execute the program instructions to perform the operations of; generating a table comprising window handles that are valid within a concurrently executing secure application execution environment; intercepting a system call comprising a window handle representing a resource that a user wishes to access; determining if the window handle exists in the table; granting access to the resource, if the window handle exists in the table; and refusing access if the window handle does not exist in the table.
-
-
44. An apparatus comprising:
-
at least one memory having program instructions to execute an operating system; and at least one processor configured to execute the program instructions to perform the operations of; generating a concurrently executing first user account associated with the secure application execution environment, the first user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; generating a concurrently executing second user account based on the first user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the first user account, at least one allowed access type and at least one derivation transformation; receiving a request to access a resource, the request specifying the requested resource and a requested access type; and accessing the requested resource based on the derivation transformation associated with the one of the at least one matching resources, if the requested access is allowable.
-
-
45. An apparatus comprising:
-
at least one memory having program instructions to execute an operating system; and at least one processor configured to execute the program instructions to perform the operations of; generating at least one concurrently executing user account associated with the secure application execution environment, the at least one user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; intercepting a request to access a resource, the request specifying the requested resource and a requested access type; and if the requested resource is within the secure application execution environment, modifying the request based on the derivation transformation associated with the requested resource; and performing the modified request; and
if the requested resource is not within the secure application execution environment, rejecting the request. - View Dependent Claims (46)
-
-
47. A computer-readable medium containing instructions for controlling an operating system to perform a method comprising:
-
determining if the at least one resource is within the secure application execution environment; and
,if the at least one resource is within the secure application execution environment, determining a transformation rule for the at least one resource based on a concurrently executing user account; and handling a request to access the at least one resource in accordance with the transformation rule for the at least one resource. - View Dependent Claims (48, 49, 50, 51)
-
-
52. A computer-readable medium containing instructions for controlling an operating system to perform a method comprising:
-
receiving a request to access a resource to which access is governed by a concurrently executing user account, the request specifying the requested resource and an access type; dynamically determining a transformation rule for the requested resource based on the access type; and handling the request to access the resource in accordance with the transformation rule. - View Dependent Claims (53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63)
-
-
64. A computer-readable medium containing instructions for controlling an operating system to perform a method comprising:
-
generating a concurrently executing user account associated with the secure application execution environment, the user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; receiving a request to access a resource, the request specifying the requested resource and a requested access type; and accessing the requested resource based on the derivation transformation associated with the one of the at least one matching resources, if the requested access is allowable. - View Dependent Claims (65)
-
-
66. A computer-readable medium containing instructions for controlling an operating system to perform a method comprising:
-
generating a table comprising window handles that are valid within a concurrently executing secure application execution environment; intercepting a system call comprising a window handle representing a resource that a user wishes to access; determining if the window handle exists in the table; granting access to the resource, if the window handle exists in the table; and refusing access if the window handle does not exist in the table.
-
-
67. A computer-readable medium containing instructions for controlling an operating system to perform a method comprising:
-
generating a concurrently executing first user account associated with the secure application execution environment, the first user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; generating a concurrently executing second user account based on the first user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the first user account, at least one allowed access type and at least one derivation transformation; receiving a request to access a resource, the request specifying the requested resource and a requested access type; and accessing the requested resource based on the derivation transformation associated with the one of the at least one matching resources, if the requested access is allowable.
-
-
68. A computer-readable medium containing instructions for controlling an operating system to perform a method comprising:
-
generating at least one concurrently executing user account associated with the secure application execution environment, the at least one user account comprising at least one resource within the secure application execution environment and, for each of the at least one resources in the secure application execution environment, at least one allowed access type and at least one derivation transformation; intercepting a request to access a resource, the request specifying the requested resource and a requested access type; and if the requested resource is within the secure application execution environment, modifying the request based on the derivation transformation associated with the requested resource; and performing the modified request; and if the requested resource is not within the secure application execution environment, rejecting the request. - View Dependent Claims (69)
-
Specification