SAML 2.0 SSO
Atomic Reactor supports SAML 2.0 Single Sign-On (SSO), letting organizations authenticate users with their existing Identity Provider (IdP) — Okta, Azure AD, Google Workspace, Shibboleth, and others.
How it works
Section titled “How it works”Atomic Reactor acts as the Service Provider (SP); your organization’s IdP authenticates users. The flow is SP-initiated:
- A user visits
/saml/{tenant_id}/login. - Atomic Reactor generates a SAML
AuthnRequestand redirects to your IdP. - The user authenticates with the IdP.
- The IdP posts a signed assertion back to Atomic Reactor’s Assertion Consumer Service (ACS).
- Atomic Reactor validates the assertion, provisions the user (JIT), and signs them in.
Key capabilities
Section titled “Key capabilities”- Just-in-time provisioning — users are created automatically on first login.
- Attribute mapping — map SAML attributes to user fields (email, first/last name, display name).
- Role mapping — map SAML groups or affiliations to Atomic Reactor roles.
- Multi-tenant — each tenant can use a different IdP, with isolated configuration.
- Auto-generated SP certificates — 2048-bit RSA keys, encrypted at rest (AES-256-GCM).
Security
Section titled “Security”SAML validation follows the OWASP SAML Security Cheat Sheet, including XML signature verification, timestamp and audience checks, recipient validation, and Redis-backed replay-attack prevention. IdP-initiated SSO is disabled by default. All SAML traffic must use HTTPS in production.
Getting started
Section titled “Getting started”-
Create a SAML configuration for your tenant via the admin API:
Terminal window POST /api/admin/saml/configContent-Type: application/json{"idp_entity_id": "http://idp.example.com/metadata","idp_sso_url": "https://idp.example.com/sso","idp_certificate": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----","attribute_mappings": {"email": "email","first_name": "firstName","last_name": "lastName"},"enabled": true}SP entity ID and certificates are auto-generated if not supplied.
-
Download SP metadata to configure in your IdP:
Terminal window GET /saml/{tenant_id}/metadata -
Configure the IdP — upload the SP metadata, set attribute mappings, enable signed assertions, and copy the IdP entity ID, SSO URL, and X.509 certificate back into the SAML configuration.
-
Test the flow by visiting
https://your-domain.com/saml/{tenant_id}/login.
Public endpoints
Section titled “Public endpoints”| Method | Endpoint | Description |
|---|---|---|
| GET | /saml/{tenant_id}/metadata |
SP metadata XML |
| GET | /saml/{tenant_id}/login |
Initiate SSO login |
| POST | /saml/{tenant_id}/acs |
Assertion Consumer Service |
| POST | /saml/{tenant_id}/slo |
Single Logout Service |
Admin configuration endpoints live under /api/admin/saml/* and require admin.saml.* permissions. For full schemas, see the API Reference.