SSO Integration for Enhanced User Authentication

SSO Integration for Enhanced User Authentication

Industry
Cybersecurity
Core Technologies
Node.js, Ping Identity, SSO, VS Code, SVN

Project Solution

INNERLUXES implemented middleware and single sign-on (SSO) into the Client's dashboard for user authentication. Because compromised passwords account for a large share of security breaches, protecting them mitigates the risk of unauthorized access to sensitive data.

Overview

The Client provides its users with a dashboard to visualize the operational parameters of the user's business. The Client's users wanted to restrict access to dashboard information with a username and password so only authorized users could log in. In some cases, the Client prefers that users authenticate with the customer's own username and password — in these cases, the customer requests that users authenticate through the Client's third-party SSO vendor.

By creating a more modern, agile workforce-tracking platform, the Client could make AI-enhanced productivity and machine learning available to more businesses, while a secure form of authentication ensures information is safe from unauthorized access, theft, or manipulation.

The Objective

User authentication via third-party SSO restricts dashboard access to only authenticated users with a valid username (email address) and password, and captures a record of authentication attempts.

INNERLUXES developed middleware (a Web API) to integrate SSO authentication, starting with Ping Identity and designed to add OneLogin, Azure, Office365, and more later. Because it is middleware, any adjustments or enhancements do not impact other applications using it. The application was developed in Node.js to enable business agility.

Requirements

Non-functional: a standalone deployable module usable by a Node.js webpage, delivered with documentation and deployable in the cloud; works on Chrome and Edge; response time within three seconds of a request; and designed so different SSO vendors can be substituted as customers onboard with their own SSO vendor.

Functional: takes a user-entered username and password from a Node.js webpage and authenticates them with the specified SSO vendor, returning whether the user is authenticated along with information usable for logging — a unique authentication request ID, timestamp, and username.

System performance: all software adhered to the Client's performance requirements, plus database, Python, and JavaScript coding standards and programming guidelines.

How It Works

The user enters their credentials in the SSO utility and is redirected to their company dashboard (a different dashboard can be shown per the configured redirect page). The user launches the Client's login with their user ID/email and password, clicks the login button, is redirected to a company-selection page, selects their organization, and is redirected to the Ping Identity SSO authentication page — after which they enter their credentials and are redirected to the company dashboard.

This MVP application authenticates users on Ping Identity SSO and redirects them to the dashboard. The dashboard-authentication middleware provides a powerful solution for secure access, and with its scalable architecture, flexible SSO integration, and adherence to industry standards, it sets the foundation for future expansion in user authentication and access control.

Technologies and Tools

Node.js, Ping Identity (SSO), OneLogin / Azure / Office365 (planned), VS Code, SVN; Chrome and Edge browser support.