SAML SSO Integration
Overview
Enterprise tenants can use SAML 2.0 Single Sign-On to let users authenticate through a corporate identity provider. SSO centralizes access policy, MFA, joiner/mover/leaver processes, and group-based authorization for AppTego Portal users.
Supported identity providers include Okta, Microsoft Entra ID, OneLogin, and other SAML 2.0 compliant providers.
Setting Up SAML SSO
Prerequisites
- Enterprise plan subscription.
- Access to your identity provider's admin console.
modify_tenant_settingspermission in AppTego.- A tested breakglass access plan before enforcing SSO.
Configuration Steps
- Navigate to SAML SSO
- Go to User Management -> SAML SSO in the portal.
- Copy AppTego service provider details
- Use the values shown in the portal to configure your identity provider.
- The portal shows the SAML Login URL, SP Entity ID, ACS URL, and SLS URL.
- Configure your identity provider
- Create a new SAML application in your IdP.
- Set the ACS URL and Entity ID from the AppTego metadata.
- Configure attribute mappings for email, name, and groups.
- Add IdP details to AppTego
- Paste or upload IdP metadata XML, then select Parse Metadata.
- Metadata upload supports files up to 256 KB.
- Alternatively, enter the IdP Entity ID, IdP SSO URL, and IdP X.509 Certificate manually.
- Configure group mappings
- Enable group authorization if you want SAML groups to grant AppTego permissions.
- The default group attribute name is
groups. - Map exact IdP group names to AppTego permissions in User Management -> SAML Groups.
- Users assigned to mapped groups receive the corresponding AppTego permissions.
- Enable SSO enforcement after testing
- Enforce SSO only after test login and breakglass access have been validated.
- Select a breakglass account before enforcing SSO-only access.
- When enabled, tenant users must authenticate through SAML except for breakglass access.
Testing
- Save the SAML configuration while SSO-only enforcement is still off.
- Start a SAML login flow for the tenant.
- Verify you are redirected to your IdP and can authenticate.
- Verify you return to AppTego with the correct user identity.
- Confirm group mappings grant only the intended AppTego permissions.
- Confirm a breakglass admin can still access the tenant before enforcing SSO-only access.
Login Flow
- User opens the AppTego login page.
- User enters their email or selects SSO login.
- AppTego determines whether the tenant uses SAML.
- User is redirected to the IdP for authentication.
- The IdP authenticates the user and returns a SAML assertion.
- AppTego validates the assertion and creates or updates the user session.
- User enters the portal with permissions derived from AppTego role settings and group mappings.
Group-Based Authorization
Map IdP groups to AppTego permissions:
| IdP Group Example | AppTego Permission |
|---|---|
apptego-admins | All permissions |
apptego-builders | build_applications |
apptego-config | modify_configuration |
Configure group mappings in User Management -> SAML Groups. Group names are matched exactly to the values sent by your IdP in the configured group attribute.
MFA Behavior
- Users authenticated via SAML follow MFA policy managed by the IdP.
- Users with password-based login in SAML-enabled tenants still use AppTego MFA.
- SSO enforcement removes password login for normal users, except breakglass access.
Breakglass Account
When SSO enforcement is enabled, maintain a breakglass admin path for emergency access. This account bypasses SAML authentication and uses standard AppTego login.
Use breakglass access only when the IdP is unavailable or SSO configuration must be repaired. Protect it with strong credentials, MFA, and limited access to trusted administrators.
The breakglass dropdown only includes tenant users with user_and_api_management. While a user is selected as the breakglass account, the portal prevents removing that permission from the user.
Related API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/frontend/saml/login/{tenantId} | GET/POST | Initiate SAML login |
/frontend/saml/acs/{tenantId} | POST | Assertion Consumer Service (callback) |
/frontend/saml/metadata/{tenantId} | GET | SP metadata for IdP configuration |
/frontend/saml/exchange | POST | Exchange SAML session for JWT |
/frontend/saml/check_sso/{tenantId} | POST | Check if SSO is configured |
/frontend/saml_settings | GET/POST/DELETE | Manage SAML configuration |
/frontend/saml_parse_metadata | POST | Parse uploaded IdP metadata XML |
/frontend/saml_groups | GET/POST | Manage group mappings |
/frontend/saml_groups/{id} | DELETE | Delete a group mapping |