Software Permission Segmentation for Data Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users' private data can be unknowingly exposed and maliciously collected by applications even after they have been granted permission, as existing systems do not effectively manage permissions and can allow excessive data access beyond what is necessary for the application's functionality.

Innovation Solution

A computer-implemented method and system that collect and manage permissions by dividing application functional steps into user journeys, matching permissions to each journey, and monitoring running applications to prevent unauthorized data access, ensuring only functional data is accessed and non-functional data is not collected.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If users grant permission to an application for the entire application during first use, then the application can access necessary data for its function, but private data may be maliciously collected even after the user closes the application

Engineering Contradiction:
Improveapplication data access capabilityVSAvoidmalicious data collection
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the application's data access permissions by dividing functional steps into multiple user journeys. Each journey is assigned specific permissions only when needed, rather than granting all permissions at once. This allows the system to provide necessary data access while limiting exposure to malicious collection by restricting permissions to specific functional contexts only.

Inventive Principle:
Principle #1Segmentation

2Duration of action of moving object

If the application has access to user data for extended time periods after transaction completion, then the application can maintain functionality, but user private data remains exposed unnecessarily

Engineering Contradiction:
Improveapplication data access durationVSAvoiddata exposure risk
Core Design Contradiction:
Duration of action of moving objectVSObject-affected harmful factors

Solution Approach 1:

The patent implements dynamic permission management where data access permissions are automatically adjusted based on the current user journey and functional requirements. Permissions are granted temporarily for specific journeys and automatically revoked when the journey completes, creating a dynamic system that adapts permission duration to actual functional needs rather than maintaining static long-term access.

Inventive Principle:
Principle #15Dynamics

3Reliability

If the system monitors running applications to detect non-permissible permissions, then unauthorized data access can be prevented, but system complexity increases

Engineering Contradiction:
Improvedata access control accuracyVSAvoidpermission monitoring system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-defining user journeys and their associated permissible permissions before the application runs. The system establishes a permission framework in advance where each journey has predetermined data access rules. During execution, the monitor simply checks whether current permissions align with the predefined journey permissions, significantly reducing monitoring complexity compared to analyzing all possible permission scenarios in real-time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11941157B2Computer analysis of software permissions for protecting access to data
Publication Date: 2024.03.26 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11941157B2 patent drawing
  • US11941157B2 patent drawing
  • US11941157B2 patent drawing

AI summary

A computer implemented method for managing the scope of permissions granted by users to application that includes collecting a set of permissions for an application from an application provider publication; and collecting a process flow for functional steps of the application from a review of the application that is published on a product review type publication. The computer implemented method further includes dividing the functional steps of the application into a plurality of journeys, each of said plurality of journeys having a function associated with a stage of a functional step from a perspective of a user; and matching permissions from the set of permissions for each journey of said plurality of journeys to provide matched permissible permissions to journeys stored in a customer journey store.