IP Library Granted Patent US 10,169,571
Granted Patent B1
US 10,169,571 · App. 13/945,677 · Granted Jan 1, 2019

System and method for secure, policy-based access control for mobile computing devices

Inventors: Philip Attfield (Fall City, WA); Paul Chenard (Corvallis, OR); Simon Curry (Chelmsford, MA); Vincent Ting (Vancouver, CA); Michael Thomas Hendrick (Renton, WA); Julia Narvaez (Tacoma, WA); Mark Reed (Redmond, WA); Daniel Schaffner (Seattle, WA); Robert Komar (Vancouver, CA)
Assignee: Sequitur Labs, Inc.
G06F21/50H04L63/0272
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 10,169,571
App. No.
13/945,677
Granted
Jan 1, 2019
Kind
B1
Abstract

Systems and methods for secure, policy-based, access control and management of mobile computing devices, including policy decision enforcement mechanisms, device and private network presence testing, aspects of file system controls, policy set sanity checking algorithms, performance optimizations.

Claims (27)

1. A system for hiding the adjudication for authorizing a client access request to a secure computing device resource, the system having hidden secure policy instructions, a hidden secure adjudication process and hidden secure condition and parameters for hidden permitted operations on the requested secure computing resource device, the system comprising:

a hardened and hidden policy decision server having a secure persistent memory for storing hierarchical sets of policy instructions and parameters, and having a processor for applying at least one set of the hierarchical sets of policy instructions and parameters to the client access request and computing an adjudicated decision of authorized access or denial of access based on hidden permitted operations on the requested secure computing device resource;

an encrypted back-channel for communicating the client access request to the policy decision server and for hiding the policy instructions, the adjudication process, and the conditions and parameters utilized by the processor in adjudicating the client access requests from the requesting client;

an agent, hidden from the requesting client and coupled to the policy decision server by the encrypted back-channel for transmitting client access requests, including additional parameters needed to access the secure computing device resource as required by the policy instructions, to the policy decision server; and

a policy enforcement server coupled to the agent for receiving adjudicated decisions from the policy decision server, secure computing device resource and having an intercepting server for intercepting client access requests, said policy enforcement server being coupled to the agent for transmitting the access requests thereto, and for receiving and transmitting policy decisions to the agent and for enforcing the adjudicated decision received from the agent.

2. The system of claim 1 , wherein the policy decision subsystem may securely modify, add or delete policy instructions.

3. The system of claim 1 , wherein the policy decision subsystem is resident on a different computing device apart from the policy enforcement subsystem.

4. The system of claim 1 wherein policy instructions are expressed in a policy object language, the system further including:

a policy compiler and code generator for compiling policy instructions written in the policy object language into executable code; and

an interface to transmit the policy instructions in executable code form produced by the policy compiler and code generator to the policy decision server.

5. The system of claim 1 , wherein the policy enforcement subsystem further includes a modification server for modifying a processing unit program counter, program register, machine instructions, or a functionally equivalent register to control subsequent actions following an allowance decision from the policy decision server.

6. A method for hiding the adjudication of client access to a secure computing device resource, having secure policy instructions for permitted operations on the requested resource, comprising the steps of:

securely intercepting a client access request to access the computing device resource to which the client has no access and transmitting the client access request to an agent;

transmitting the intercepted client access request to a policy decision server via an encrypted back-channel from the agent to a persistent memory;

transmitting policy instructions and parameters from the persistent memory to the policy-decision server via the encrypted back-channel;

transmitting a request for additional parameters as required by the policy instructions from the policy decision server to the agent via the encrypted back-channel;

transmitting the additional parameters needed to access the requested resource required by the policy instructions from the agent to the policy decision serve via the encrypted back-channel;

adjudicating the client access request at the policy decision server using the policy instructions for permitted operations on the requested resource;

transmitting to the agent via the encrypted back-channel the adjudicated decision to allow or deny access by the client to the requested resource;

enforcing the adjudicated decision received from the agent; and

transmitting the adjudicated decision to the requesting client via the agent.

7. The method of claim 6 wherein the policy decision server modifies, adds, or deletes policy instructions.

8. The method of claim 6 further including the steps of:

expressing the policy instructions in a policy object language;

compiling the policy instructions expressed in the policy object language into executable code; and

transmitting by secure encrypted back-channel the policy instructions in executable code form to the policy decision server.

9. The method of claim 6 wherein the policy enforcement server further includes modifying a processing unit program counter, program register, machine instructions, or a functionally equivalent register to control subsequent actions following an allowance decision from the policy decision server.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2014
From: ATTFIELD, PHILIP; CHENARD, PAUL; CURRY, SIMON; TING, VINCENT; HENDRICK, MICHAEL THOMAS; REED, MARK; SCHAFFNER, DANIEL; NARVAEZ, JULIA; KOMAR, ROBERT
To: SEQUITUR LABS INC.
Reel/Frame 032962/0700 →
Continuity (2)
Provisional Application 61673220 · Jul 18, 2012
Provisional Application 61816643 · Apr 26, 2013
Cited By (25)
US 12,189,780 US 12,259,958 US 12,282,557 US 12,306,708 US 12,326,964 US 12,341,764 US 12,348,569 US 12,348,650 US 12,360,851 US 12,425,452 US 12,432,219 US 12,438,713 US 12,450,400 US 12,461,823 US 12,468,553 US 12,470,499 US 12,476,794 US 12,483,568 US 12,489,763 US 12,500,905 US 12,507,147 US 12,531,913 US 12,561,179 US 12,598,213 US 12,632,580