Security Model for Application Integration via Intermediary Impersonation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Business-to-business and application-to-application integration scenarios face security threats due to uncontrolled access to services and data, allowing malicious users to attack applications and steal confidential information.
Innovation Solution
A security model that authenticates and authorizes users by impersonating a source endpoint user, using intermediaries to manage access and enforce row-level security, ensuring only authorized users can perform actions on behalf of trusted endpoints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If access to services and data is allowed in B2B integration scenarios, then business functionality and service accessibility are improved, but security vulnerabilities increase allowing malicious attacks and data theft
Solution Approach 1:
The patent introduces an integration layer as an intermediary component between external source endpoints and the secured application. This integration layer acts as a mediator that receives messages from external partners, authenticates them, and forwards authorized messages to the application. The intermediary structure allows service accessibility while preventing direct exposure of the application to security threats.
Solution Approach 2:
The system architecture is segmented into distinct layers: the integration layer and the secured application layer. The integration layer handles authentication, authorization, and message routing, while the secured application focuses on core business functionality. This segmentation isolates security-critical functions from the application, reducing the application's attack surface while maintaining service accessibility.
2Adaptability or versatility
If external partners are allowed to access application services, then business integration capability is improved, but the application becomes exposed to security threats
Solution Approach 1:
The integration layer serves as a trusted intermediary that external partners interact with, rather than allowing direct access to the application. This intermediary validates all incoming messages, authenticates partner identities, and enforces security policies before forwarding requests to the application, thus enabling business integration while protecting application security.
Solution Approach 2:
Authentication and authorization checks are performed in advance by the integration layer before messages reach the application. The system pre-validates partner credentials, message formats, and authorization permissions at the integration layer, ensuring that only authenticated and authorized messages are forwarded to the application, thereby maintaining security reliability.
3Reliability
If user authentication and authorization controls are implemented, then security is improved, but system complexity increases
Solution Approach 1:
Security control functions are segmented and concentrated in the integration layer, separate from the application layer. The integration layer handles all authentication, authorization, and message validation logic, while the application focuses on business operations. This segmentation improves security control while managing system complexity by localizing security functions to a dedicated layer.
Solution Approach 2:
The integration layer performs multiple functions including authentication, authorization, message validation, formatting, and routing. By consolidating these diverse security and messaging functions into a single multi-functional layer, the system achieves comprehensive security control without proportionally increasing overall system complexity, as the integration layer serves as a universal gateway for all external communications.
Data Source
AI summary
A security model is provided that controls access to a secured application. Under the security model, a submitting user is authenticated when the user submits a message to have the application perform an action. The application is then used to determine if the submitting user is authorized to submit messages on behalf of a source endpoint stored in the message. A method in the application is then invoked to perform the action while impersonating a source endpoint user stored in the message.


