Client-Side Policy Enforcement via Browser Hooks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional proxy server systems lack the ability to enforce policies on client-side logic executed by browsers, as they primarily focus on server-side logic and do not support client-side hooks or administrator-defined actions, leading to inefficiencies and increased security risks.

Innovation Solution

Implementing a client-side policy that supports client-side hooks by configuring rules to be applied to designated client-side logic, allowing administrator-defined actions such as executing, triggering errors, or proxying client-side logic, thereby enhancing security and reducing resource consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional proxy server systems are used to enforce policies, then server-side logic can be controlled, but client-side logic executed by browsers cannot be enforced

Engineering Contradiction:
Improvepolicy enforcement capabilityVSAvoidsecurity risk
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent inverts the traditional approach by moving policy enforcement from the server side to the client side. Instead of the proxy server analyzing and modifying resources before passing them to the client, the client-side logic itself is modified to include hooks that enforce policies locally in the browser, thereby extending policy enforcement capability to client-side execution while maintaining security through distributed enforcement.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent introduces client-side hooks as intermediary elements between the client-side logic and the policy enforcement mechanism. These hooks act as mediators that intercept and control the execution of client-side logic, allowing policies to be enforced without requiring complete server-side processing or modification of the entire resource.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If server-side processing is used to enforce policies on all resources, then comprehensive control is achieved, but resource consumption and processing time increase

Engineering Contradiction:
Improvepolicy controlVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments policy enforcement into two parts: configuration and execution. The proxy server handles policy configuration and rule definition, while the client-side hooks handle actual policy execution. This segmentation allows comprehensive policy control to be maintained while distributing the computational burden, thereby reducing server-side resource consumption and processing time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-configuring policy rules on the client side through client-side hooks. Instead of requiring server-side processing for every policy decision, the policies are prepared in advance and executed locally, reducing real-time resource consumption and processing time while maintaining comprehensive control.

Inventive Principle:
Principle #10Preliminary action

3Ease of manufacture

If generic server-side policies are applied to all resources, then implementation is simple, but client-specific behavior control is limited

Engineering Contradiction:
Improvepolicy implementationVSAvoidclient-specific control
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent applies local quality by enabling different policy rules to be associated with different client-side hooks or specific client contexts. While the overall policy framework remains simple and generic, individual hooks can be configured with client-specific logic and behavior rules, allowing both ease of implementation and client-specific control to coexist.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11677722B2Implementing a client-side policy on client-side logic
Publication Date: 2023.06.13 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11677722B2 patent drawing
  • US11677722B2 patent drawing
  • US11677722B2 patent drawing

AI summary

Techniques are described herein that are capable of implementing a client-side policy on client-side logic. The client-side policy is configured to support client-side hooks by configuring a rule in the client-side policy to be applied to the client-side logic, which is configured to be executed in a browser of a client device in a network-based system. The rule indicates an administrator-defined action to be performed in response to a request to execute the client-side logic. The request to execute the client-side logic in the browser is received. The administrator-defined action is performed based at least in part on the rule in the client-side policy in response to receipt of the request.