Policy-Based Privilege Segmentation for Secure Application Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems fail to effectively implement the principle of least privilege, leading to applications having unlimited access rights, which complicates auditing and increases security risks, especially in environments requiring secure execution like banking and medical applications.

Innovation Solution

A policy-based decision system determines a minimal set of privileges for applications, creating or identifying application-specific operating system accounts with restricted access rights, ensuring that applications run with only the necessary permissions required for their tasks, using technologies like CITRIX PASSWORD MANAGER for credential mapping and remote access protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If an application runs under the user account with all user privileges, then the application can access all user data and resources, but the application gains unlimited access rights that exceed what is necessary for its tasks

Engineering Contradiction:
Improveapplication access capabilityVSAvoidsecurity risk
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments user privileges into application-specific privilege sets. Instead of granting all user privileges to an application, the system creates separate privilege sets that contain only the specific permissions required for each application's functionality. This segmentation allows the application to access necessary resources while preventing access to unrelated data and resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making privileges application-specific rather than uniform for all applications. Each application receives a tailored privilege set that matches its specific functional requirements. This ensures that each application has exactly the right level of access for its purpose without excess privileges that could be misused.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If an application has unlimited access rights, then the application can perform any action, but auditing becomes complicated since it is difficult to prove what actions the application actually performed

Engineering Contradiction:
Improveapplication functionalityVSAvoidauditing complexity
Core Design Contradiction:
Ease of operationVSDifficulty of detecting and measuring

Solution Approach 1:

The patent segments access rights into discrete, trackable privilege sets for each application. By breaking down privileges into specific, granular permissions rather than blanket access, the system enables precise auditing of which application performed which specific action. Each application's actions can be traced back to its specific privilege set, making auditing straightforward.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements feedback mechanisms through detailed logging and auditing of application actions. The system tracks and records what actions applications perform using their granted privileges, providing feedback that enables verification of application behavior. This feedback loop allows auditors to confirm what actions were actually taken by each application.

Inventive Principle:
Principle #23Feedback

3Object-affected harmful factors

If conventional methods are used to limit access rights such as running applications in a common unprivileged account, then security is improved, but the applications cannot access user-specific data or resources

Engineering Contradiction:
Improvesecurity riskVSAvoiddata access capability
Core Design Contradiction:
Object-affected harmful factorsVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary mechanism - the application-specific privilege set - that mediates between the unprivileged application execution context and the user-specific resources. The privilege set acts as a controlled interface that allows the application to access specific user data and resources without having direct user account privileges. This intermediary enables secure access to necessary resources while maintaining the security benefits of unprivileged execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7587755B2System and method for executing interactive applications with minimal privileges
Publication Date: 2009.09.08 CITRIX SYSTEMS INC
  • US7587755B2 patent drawing
  • US7587755B2 patent drawing
  • US7587755B2 patent drawing

AI summary

A mechanism for running interactive applications with a minimal set of privileges is disclosed. The privileges form a subset of the privileges afforded to the user requesting the application and are allocated consistent with the principle of least privilege. The application runs with the minimal amount of permissions necessary to accomplish its assigned tasks. A new user account is created and provisioned or identified for each application to which a user requests access. The accounts have a subset or superset of the access rights and operating system privileges that the user who is logged on to the system and requesting access to the application ordinarily enjoys. The subset/superset of the user's privileges is determined by a policy-based decision system. The policy-based decision system makes its determination based on an analysis of the application requirements, an analysis of the data security and privacy concerns associated with the execution of the application, the identity of the user and user's role and any other policy considerations previously specified by an administrator. Once the determination as to the appropriate set of privileges to be afforded in the execution environment has been made, the execution environment is created and provisioned or a pre-existing execution environment possessing the requisite privileges is identified and the remote user is logged into the server-side account. The application-specific accounts may be audited by audit trail tools that provide evidence of policy enforcement.