sso_connector
Introduction
SSO Connector provides a robust Single Sign-On (SSO) foundation for Drupal using an
Identity Provider (IdP) / Service Provider (SP) architecture. It is designed for multi-site
Drupal environments where users authenticate once and access connected sites securely.
This project page describes the core module only. Optional capabilities such as OAuth, SAML,
social login, advanced synchronization, and permissions orchestration will be maintained as separate submodules/projects.
Core Features
- IdP/SP Role Model: Configure each site as Identity Provider or Service Provider from a single admin UI.
- End-to-End Browser SSO Flow: Dedicated endpoints for login start, return-path, token return, and logout.
- Secure Token Handling: Signed JWT tokens with encrypted payload transport and configurable expiration.
- Hardened Token Endpoint: Machine token endpoint with optional IP allowlist and dedicated API key support.
- No Shared Cross-Domain Cookie Dependency: SSO flow does not rely on a bakery-style shared cookie approach.
- User Synchronization: Optional SP account auto-creation and controlled profile-field synchronization from IdP.
- Redirect Safety: Internal destination sanitization and stricter flow validation to reduce redirect abuse risks.
- Drupal 10/11 Ready: Modernized architecture, services, event subscribers, and maintained test coverage.
Post-Installation
Install and enable SSO Connector on both the IdP and all participating SP sites.
- Configuration Path:
Administration > Configuration > System > SSO Connector - IdP Site: Set role to IdP, generate a JWT secret, and allowlist SP base URLs.
- SP Sites: Set role to SP, define the IdP URL, and use the same JWT secret as the IdP.
- Security: Optionally configure token endpoint API key, allowed IPs, and token expiration policy.
- User Sync (Optional): Enable synchronization and choose allowed profile fields according to your policy.
Supporting this Module
Contributions are welcome. Bug reports, patches, reviews, and documentation improvements help keep SSO Connector stable and secure for the Drupal community.