Cache Proxy Tenant Isolation in Shared Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-tenant Software as a Service (SaaS) environments face challenges in protecting cache access, as existing methods rely heavily on encryption, which increases costs and complexity, and may not adequately prevent accidental data exposure between tenants.

Innovation Solution

A system utilizing a cache proxy that enforces a cache key space protection scheme and a value space protection scheme to validate tenant-specific credentials and encrypt data, ensuring only authorized tenants access their data stored in a shared cache.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If encryption is used to protect cache access in multi-tenant environments, then data security is improved, but operational costs and system complexity increase

Engineering Contradiction:
Improvedata securityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a cache proxy as an intermediary component between tenant applications and the shared cache. The cache proxy validates cache keys, enforces tenant isolation policies, and manages access control without requiring extensive encryption of cache data. This intermediary handles security logic centrally, reducing the complexity burden on individual tenant applications while maintaining strong data protection.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the security approach from encrypting cache values to validating cache keys with tenant-specific parameters. By embedding tenant identifiers and access permissions in the cache key structure itself, the system achieves secure tenant isolation through parameter validation rather than cryptographic encryption, thereby reducing operational costs and complexity.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If encryption is used to protect cache access in multi-tenant environments, then data security is improved, but operational costs increase

Engineering Contradiction:
Improvedata securityVSAvoidoperational costs
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent shifts from value-based encryption to key-based parameter validation. By encoding tenant-specific parameters directly in the cache key and validating these parameters at the cache proxy level, the system eliminates the need for expensive encryption/decryption operations on cache values, significantly reducing computational overhead and operational costs while maintaining security.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The cache proxy intermediary handles all security validation logic, preventing tenant data access issues before they occur. This centralized validation approach avoids the need for each tenant application to implement its own encryption logic, reducing redundant computational work and lowering overall operational costs.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If shared cache is used to speed up data access, then productivity is improved, but data exposure risk between tenants increases

Engineering Contradiction:
Improvedata access speedVSAvoiddata exposure risk
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The cache proxy serves as a security intermediary that sits between tenant applications and the shared cache. It validates each cache access request by checking the cache key against tenant-specific parameters and access policies, allowing fast shared cache access while preventing unauthorized cross-tenant data exposure through systematic validation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent embeds tenant identification and access permission parameters directly in the cache key structure. By validating these parameters at the cache proxy level, the system enables efficient shared cache usage with tenant isolation, as the validation occurs at the cache access layer rather than requiring separate security checks that would slow down data retrieval.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11531628B2Protecting cache accesses in multi-tenant processing environments
Publication Date: 2022.12.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11531628B2 patent drawing
  • US11531628B2 patent drawing
  • US11531628B2 patent drawing

AI summary

Embodiments relate to a system, program product, and method for protecting cache access in a multi-tenant environment, and, more specifically, for allowing access to specified data, encrypted or unencrypted, in a shared cache to authorized tenants, while denying access to the data for unauthorized tenants. The system includes a server including one or more shared cache and a plurality of tenant devices coupled to the server. The server is configured to run one or more applications thereon, where each tenant has access to one or more authorized instances of the applications. The system also includes a cache proxy coupled to the tenant devices and the shared cache. The cache proxy facilitates enforcing one or more schemes to provide for separation of data for authorized tenants and their users using the shared cache from unauthorized tenants and users.