IP Library › Granted Patent US 9,009,858
Granted Patent B2
US 9,009,858 · App. 13/830,900 · Granted Apr 14, 2015

Systems and methods for providing and managing distributed enclaves

Inventors: Kevin Eugene Sapp, II (Washington, DC); Victor Ronin (Reston, VA)
Assignee: Okta, Inc.
G06F21/62
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,009,858
App. No.
13/830,900
Granted
Apr 14, 2015
Kind
B2
Abstract

A method for operating a distributed data management and control enclave comprises providing a policy that identifies a set of data to be managed and controlled. The policy further identifies devices upon which the data may be transferred and the conditions under which that data may be transferred to the identified devices. A first data management and control system to be used on a first device is then defined in the policy. A second management and control system to be used on a second device is then defined in the policy. The second data management and control system can be distinct from the first data management and control system. The specified data management and control system is then instantiated on a device. The specified data management and control system is then used to manage and control data on the device in accordance with the policy.

Claims (56)

1. A method for operating a device to manage and control data, comprising:

(a) identifying controlled data using a first local enclave instance (LEI) on a first electronic device, wherein said first LEI is a member of a first enclave, and wherein said first enclave has a first policy regulating usage and/or access rights to said controlled data throughout said first enclave;

(b) receiving a request to transfer said controlled data from said first LEI to a destination residing in (i) an application external to said first LEI and on said first electronic device, (ii) a second LEI, or (iii) a second electronic device;

responsive to the destination residing in the application external to said first LEI and on said first electronic device:

determining, with aid of a processor, one or more application attributes of said destination, wherein said one or more attributes includes an identifier of the application; and

permitting or denying the request of (b) based upon a processor-assisted comparison of said one or more application attributes against one or more attributes for permitting data transfer provided in said first policy;

responsive to the destination residing in the second LEI:

determining, with the aid of a processor, one or more enclave attributes of said destination, wherein said one or more attributes includes an identifier of an enclave of which the second LEI is a member; and

permitting or denying the request of (b) based upon a processor-assisted comparison of said one or more enclave attributes against one or more attributes for permitting data transfer provided in said first policy; and

responsive to the destination residing in the second electronic device:

determining, with the aid of a processor, one or more device attributes of said destination, wherein said one or more attributes includes an identifier of the second electronic device; and

permitting or denying the request of (b) based upon a processor-assisted comparison of said one or more device attributes against one or more attributes for permitting data transfer provided in said first policy.

2. The method of claim 1 , wherein said second LEI is on said second electronic device.

3. The method of claim 1 , wherein said second LEI is a member of a second enclave, and wherein said second enclave has a second policy for regulating usage and/or access rights throughout said second enclave that is different from said first policy.

4. The method of claim 1 , wherein (b) comprises receiving a request to transfer said controlled data from said first LEI to a destination residing in an application external to said first LEI and on said first electronic device.

5. The method of claim 1 , wherein said one or more application attributes, enclave attributes, or device attributes do not comply with said one or more attributes for permitting data transfer provided in said first policy, and wherein said request is denied.

6. The method of claim 1 , wherein said one or more application attributes, enclave attributes, or device attributes comply with said one or more attributes for permitting data transfer provided in said first policy, and wherein said request is permitted.

7. The method of claim 1 , wherein said request received in (b) is a trigger event associated with an application on said first electronic device.

8. The method of claim 1 , wherein said controlled data is in a non-transitory, tangible computer readable storage medium.

9. A method for enabling a user to manage and control data, comprising:

(a) identifying controlled data using a first local enclave instance (LEI) on a first electronic device, wherein said first LEI is a member of a first enclave, and wherein said first enclave has a first policy regulating usage and/or access rights to said controlled data throughout said first enclave;

(b) identifying, with the aid of a processor, a destination location residing in (i) an application external to said first LEI and on said first electronic device, (ii) a second LEI, and/or (iii) a second electronic device;

responsive to the destination location residing in the application external to said first LEI and on said first electronic device:

determining one or more application attributes of said destination location, wherein said one or more application attributes includes an identifier of the application;

performing, with aid of a processor, a comparison of said one or more application attributes against one or more attributes for permitting data transfer provided in the first policy; and

permitting transfer of said controlled data to said destination location based upon the comparison;

responsive to the destination residing in the second LEI:

determining one or more enclave attributes of said destination location, wherein said one or more enclave attributes includes an identifier of an enclave of which the second LEI is a member;

performing, with aid of a processor, a comparison of said one or more enclave attributes against one or more attributes for permitting data transfer provided in the first policy; and

permitting transfer of said controlled data to said destination location based upon the comparison; and

responsive to the destination residing in the second electronic device:

determining one or more device attributes of said destination location, wherein said one or more device attributes includes an identifier of the second electronic device;

performing, with aid of a processor, a comparison of said one or more device attributes against one or more attributes for permitting data transfer provided in the first policy; and

permitting transfer of said controlled data to said destination location based upon the comparison.

10. The method of claim 9 , wherein said second LEI is on said second electronic device.

11. The method of claim 9 , wherein said second LEI is a member of a second enclave, and wherein said second enclave has a second policy for regulating usage and/or access rights throughout said second enclave that is different from said first policy.

12. The method of claim 9 , wherein (b) comprises identifying, with the aid of a processor, a destination location residing in an application external to said first LEI and on said first electronic device.

13. The method of claim 9 , further comprising, prior to (b), receiving a request to transfer said controlled data from said first LEI to a destination location residing in an application external to said first LEI and on said first electronic device.

14. The method of claim 9 , wherein said controlled data is in a non-transitory, tangible computer readable storage medium.

15. A non-transitory computer-readable storage medium comprising machine-executable instructions for operating a device to manage and control data, the instructions comprising:

(a) instructions for identifying controlled data using a first local enclave instance (LEI) on a first electronic device, wherein said first LEI is a member of a first enclave, and wherein said first enclave has a first policy regulating usage and/or access rights to said controlled data throughout said first enclave;

(b) instructions for receiving a request to transfer said controlled data from said first LEI to a destination residing in (i) an application external to said first LEI and on said first electronic device, (ii) a second LEI, or (iii) a second electronic device;

instructions for, responsive to the destination residing in the application external to said first LEI and on said first electronic device:

determining, with aid of a processor, one or more application attributes of said destination, wherein said one or more attributes includes an identifier of the application; and

permitting or denying the request of (b) based upon a processor-assisted comparison of said one or more application attributes against one or more attributes for permitting data transfer provided in said first policy;

instructions for, responsive to the destination residing in the second LEI:

determining, with the aid of a processor, one or more enclave attributes of said destination, wherein said one or more attributes includes an identifier of an enclave of which the second LEI is a member; and

permitting or denying the request of (b) based upon a processor-assisted comparison of said one or more enclave attributes against one or more attributes for permitting data transfer provided in said first policy; and

instructions for, responsive to the destination residing in the second electronic device:

determining, with the aid of a processor, one or more device attributes of said destination, wherein said one or more attributes includes an identifier of the second electronic device; and

permitting or denying the request of (b) based upon a processor-assisted comparison of said one or more device attributes against one or more attributes for permitting data transfer provided in said first policy.

16. The non-transitory computer-readable storage medium of claim 15 , wherein said second LEI is on said second electronic device.

17. The non-transitory computer-readable storage medium of claim 15 , wherein said second LEI is a member of a second enclave, and wherein said second enclave has a second policy for regulating usage and/or access rights throughout said second enclave that is different from said first policy.

18. The non-transitory computer-readable storage medium of claim 15 , wherein (b) comprises receiving a request to transfer said controlled data from said first LEI to a destination residing in an application external to said first LEI and on said first electronic device.

19. The non-transitory computer-readable storage medium of claim 15 , wherein said one or more application attributes, enclave attributes, or device attributes do not comply with said one or more attributes for permitting data transfer provided in said first policy, and wherein said request is denied.

20. The non-transitory computer-readable storage medium of claim 15 , wherein said request received in (b) is a trigger event associated with an application on said first electronic device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2014
From: SPYDRSAFE MOBILE SECURITY, INC.
To: OKTA, INC.
Reel/Frame 032761/0422 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2013
From: SAPP, KEVIN EUGENE, II; RONIN, VICTOR
To: SPYDRSAFE MOBILE SECURITY, INC.
Reel/Frame 031606/0106 →
Continuity (3)
Provisional Application 61648047 · May 16, 2012
Provisional Application 61666510 · Jun 29, 2012
Related Publication 20130312117A1 · Nov 21, 2013