Proxy Session Management for SSO Authentication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing Single Sign-On (SSO) authentication systems face challenges in maintaining synchronization of authentication statuses across multiple server apparatuses, leading to inconsistencies and increased development costs due to the need for error handling various combinations of authentication states.
Innovation Solution
A system comprising a receiver, determination unit, disconnection unit, and forward unit that manages sessions between a client apparatus and multiple server apparatuses, synchronizing authentication statuses by determining session maintenance and disconnecting sessions as needed, thereby reducing the complexity of error handling and development costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If existing server apparatuses are used without modification in the SSO authentication system, then device complexity is reduced, but authentication status synchronization deteriorates leading to session inconsistency
Solution Approach 1:
The proxy server acts as an intermediary between the client apparatus and multiple server apparatuses. It receives requests from the client, determines whether sessions are maintained with each server, and manages session disconnection centrally. This mediator approach allows existing servers to be used without modification while the proxy server ensures authentication status synchronization across all servers.
Solution Approach 2:
The proxy server implements a feedback mechanism by determining whether sessions established between the client apparatus and each server apparatus are maintained. Based on this determination, the proxy server disconnects sessions with servers where sessions are not maintained, creating a closed-loop control system that synchronizes authentication statuses across all servers.
2Reliability
If a dedicated server is developed for the SSO authentication system, then authentication status synchronization is improved, but device complexity and development costs increase
Solution Approach 1:
The proxy server performs multiple functions: it acts as an authentication intermediary, manages sessions with multiple server apparatuses, determines session maintenance status, and disconnects sessions as needed. This multi-functional approach consolidates what would otherwise require a dedicated SSO server, reducing overall system complexity while maintaining synchronization.
Solution Approach 2:
The proxy server autonomously determines whether sessions are maintained with each server apparatus and automatically disconnects sessions where needed. This self-service capability eliminates the need for complex inter-server communication protocols and dedicated synchronization infrastructure, reducing system complexity while ensuring authentication status consistency.
3Device complexity
If session disconnection is handled individually by each server apparatus, then device complexity is reduced, but authentication status synchronization deteriorates
Solution Approach 1:
The proxy server serves as a central mediator that coordinates session disconnection across all server apparatuses. Instead of each server independently managing its own sessions, the proxy server receives client requests, determines session status with each server, and centrally controls disconnection. This maintains simple server configurations while ensuring session consistency through the intermediary's coordinated management.
Data Source
AI summary
A system for managing sessions between a client and multiple servers includes: a receiver for receiving, as a proxy for each of the servers, a request from the client to any of the servers; a determination unit for determining, upon receipt of the request from the client to any of the servers, whether sessions established between the client and the multiple servers are maintained; a disconnection unit for disconnecting, on condition that a session between the client and any of the multiple servers is already disconnected, the sessions established between the client and the servers different from the disconnected server; and a forward unit for forwarding, on condition that the sessions established between the client and all of the multiple servers are maintained, the received request to the destination server for the request.


