Secure Cache Security Context Metadata
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Business Intelligence (BI) systems face inefficiencies in data caching due to the need to redefine security rules in both the BI system and the OLAP data source, leading to cumbersome maintenance and inefficient memory usage, especially when multiple user caches are created.
Innovation Solution
A secure caching method that discovers and represents security rules as lightweight lists, allowing data-source agnostic operation, where user requests are processed by searching the cache based on security context, and if data is not found, it is retrieved from the data source and stored with the context, optimizing cache memory usage without redundancy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If security rules are redefined in both the BI system and the OLAP data source, then security access control is achieved, but maintenance complexity and time increase significantly
Solution Approach 1:
The patent creates a copy of security rules from the OLAP data source into the BI system's cache, allowing the BI system to operate with local security definitions. This copy mechanism enables the BI system to enforce security without requiring changes to the underlying OLAP data source, thereby reducing maintenance overhead while maintaining security control.
Solution Approach 2:
The patent performs preliminary action by pre-defining security rules in the OLAP data source and then copying them to the BI system's cache before runtime operations. This preliminary setup allows the BI system to quickly enforce security policies without needing to reconfigure or revalidate security rules during operational maintenance, significantly reducing maintenance time.
2Reliability
If multiple user-specific caches are created to handle different security contexts, then security context isolation is achieved, but memory usage increases significantly
Solution Approach 1:
The patent merges security context information with cached data by storing security contexts as metadata associated with cached datasets. Instead of creating separate caches for each user, the system consolidates data into a shared cache while attaching security context tags, allowing multiple users with different security contexts to access the same physical cache memory efficiently.
Solution Approach 2:
The patent makes the cache universal by designing it to serve multiple users with different security contexts simultaneously. The cache structure is enhanced to include security context metadata, enabling a single cache to fulfill multiple security-specific functions without requiring separate cached copies for each user, thereby optimizing memory utilization.
3Reliability
If security contexts are stored with cached data, then secure data retrieval is achieved, but cache complexity increases
Solution Approach 1:
The patent implements a nested structure where security context metadata is embedded within or alongside the cached data elements. This nesting approach allows security information to be tightly integrated with the data it protects, enabling secure retrieval operations without requiring separate complex security management structures, thus managing complexity through hierarchical organization.
Data Source
AI summary
A secure caching system and caching method include receiving a user request for data, the request containing a security context, and searching a cache for the requested data based on the user request and the received security context. If the requested data is found in cache, returning the cached data in response to the user request. If the requested data is not found in cache, obtaining the requested data from a data source, storing the obtained data in the cache and associating the obtained data with the security context, and returning the requested data in response to the user request. The search for the requested data can include searching for a security list that has the security context as a key, the security list including an address in the cache of the requested data.


