Network Access Requirements
Each protocol has different network reachability requirements for your identity provider (IdP). Confirm this before configuring to avoid sign-in failures caused by network access:
If your identity provider is on a private network and not reachable from the public internet:
- You can allow Flashduty’s egress IPs —
47.94.95.118,123.56.8.183,47.94.193.81, and1.13.19.96— through your firewall to open access from Flashduty to the IdP - If you’d rather not open any public access to your identity provider, SAML 2.0 is the only protocol that needs none — it’s the recommended choice in that case
The egress IPs above apply only to Flashduty’s SaaS (public cloud) service. If you’re using a private (on-premises) deployment, Flashduty runs inside your own network and its egress IP depends on your deployment environment — check with your infrastructure team instead of using the addresses above.
Configuring SAML Protocol
Configuration path: Platform Management → Single Sign-On → Enable → Settings → Select SAML2.0 protocol type
You can sync roles and teams by the names returned by your identity provider. See Role and team mapping. Leave default roles and default teams empty in most cases to keep fallback assignments off.
Configuring OIDC Protocol
Configuration path: Platform Management → Single Sign-On → Enable → Settings → Select OIDC protocol type
You can sync roles and teams by the names returned by your identity provider. See Role and team mapping. Leave default roles and default teams empty in most cases to keep fallback assignments off.
Configuring CAS Protocol
Configuration path: Platform Management → Single Sign-On → Enable → Settings → Select CAS protocol type
You can sync roles and teams by the names returned by your identity provider. See Role and team mapping. Leave default roles and default teams empty in most cases to keep fallback assignments off.
Role and team mapping
OIDC, SAML2.0, and CAS support syncing member roles and team membership by the role names and team names returned by your identity provider. LDAP continues to use Group DN mapping, not the name mapping described here. Field mappings apply on every sign-in; defaults apply only when creating members. After you enable the corresponding sync option and configure the role or team field, valid matches replace the member’s existing roles or team memberships on every SSO sign-in, including manually assigned ones. With no matches, existing members keep their assignments; only members actually created during this sign-in receive the configured valid defaults. Roles and teams are handled independently.Configuration fields
Configuration path: Platform Management → Single Sign-On → Select OIDC, SAML2.0, or CAS → Sync Configuration
Defaults have no separate toggle: to turn fallback assignments off, clear the default role and default team selections. If you do not want SSO to manage roles or teams, turn off Sync roles or Sync teams, respectively.
How names match
- Mapping field names are strings. The returned values can be a single string or an array of strings. Use an array for multiple names:
"A,B"is treated as one complete name and is not split on commas. - Flashduty trims leading and trailing whitespace, matches names exactly and case-sensitively, and removes duplicate names.
- Roles match the preset names
Admin,Responder, andViewer, or enabled custom roles in the current account. Teams match non-deleted teams in the current account. - If multiple eligible roles or teams share a name, Flashduty selects the one with the smallest ID. Name mapping does not create roles or teams.
- OIDC reads the returned claims, SAML reads assertion attributes, and CAS reads returned user attributes. Field names must match what your identity provider actually returns.
roles as the role field and teams as the team field:
When defaults apply
Roles and teams match and fall back independently. For example, if roles match but teams do not, Flashduty uses the matched roles. A new member can receive default teams; an existing member keeps their current teams. A first SSO sign-in does not necessarily create a new member. Members already created or invited by an administrator, and existing members linked to a stable user ID for the first time, do not receive defaults. Defaults apply only when Just-In-Time (JIT) provisioning creates a new member record during the current sign-in.A role or team selected as a default role or default team in any saved SSO configuration cannot be deleted. Deleting the role or team returns
ReferenceExist (the resource is still referenced by other entities and cannot be deleted). Unselect it in the corresponding SSO configuration’s Default Roles / Default Teams options and save first. The restriction also applies when SSO or the corresponding sync switch is currently off — the defaults are already saved and re-enabling the configuration must not restore dangling IDs; forced role deletion (is_force) does not bypass it either.Recommended setup order
1
Configure name mapping and leave defaults empty
Confirm that your identity provider returns the correct role and team names for each group of members, then enable the sync options you need. Keep an option off until its mapping is ready.
2
Test members with and without matches
Use test members to check matching names, missing fields, and unmatched names. Sign in again to confirm the actual role and team changes. Test existing members as well as new members.
3
Configure defaults only for an intentional shared fallback
Select default roles or teams only when every new member created through SSO without matches should receive the same minimum required permissions or join the same teams. Otherwise, leave defaults empty to keep fallback assignments off. Changing defaults does not affect existing members.
See Role and Team Sync for per-protocol name sources, matching rules, and field retention. LDAP uses Group DN mapping, not the name mapping or new-member default rules in this section.
Configuring LDAP Protocol
LDAP single sign-on is only supported in the private deployment version.
LDAP Connection Test
After configuring the LDAP connection information, you can click Test connection below the LDAP form in the Protocol & connection section to verify that Flashduty can successfully connect to your LDAP server. The system will attempt to establish a connection using the currently entered LDAP URL, BIND DN, and password, and return a success or failure result.LDAP Role and Team Synchronization
When using the LDAP protocol, you can automatically synchronize Flashduty roles and teams based on the user’s LDAP Group membership. Configuration path: LDAP Settings page → Sync Configuration1
Enable Synchronization
In the sync configuration area, enable the Sync Roles and/or Sync Teams toggles.
2
Add Mapping Rules
Click Add Mapping Rule and configure the following for each rule:
3
Configure Default Roles
When Sync Roles is enabled, you can configure Default Roles. When a user’s LDAP Groups do not match any mapping rule, the system will assign these default roles.
- You can add multiple mapping rules, each corresponding to one LDAP Group
- When a user signs in, the system automatically matches and synchronizes the corresponding roles and teams based on their LDAP Group membership
- The Group DN in mapping rules must be the full path of the Group in LDAP
Member Association
During single sign-on, the system associates the user returned by the identity provider with a member of the account. The association method depends on whether the SSO configuration has a Stable User ID Field set, and this applies to new and existing configurations alike:
Changing identity-scope settings (protocol type, identity provider address, or the stable user ID field) is treated as an identity-scope change, and the system rotates the SSO configuration ID. Existing members are re-associated by email or phone on their next sign-in and bound to the new stable user ID.
SSO-only login
The
force_sso option restricts every member of the account to signing in through SSO, fully delegating authentication to the identity provider.
Configuration path: Platform Management → Single Sign-On → Enable → Settings → Members can only sign in via SSO
When this option is on and a member attempts password or verification-code sign-in, the login endpoint returns:
force_sso enabled, the switch is rejected with The target account requires SSO login. Switching via password session is not allowed.
Comparison with “Prevent editing external members”
force_sso controls how members sign in — whether password and verification-code sign-in are allowed. sso_user_non_editable (Prevent editing external members) controls member editability — whether SSO-synchronized external members can have their profile and role modified in the console. The two settings act on different layers and can be toggled independently.
External member management
When you enable single sign-on, members automatically created through their first SSO login are marked as external members. You can enable the Prevent editing external members option in SSO settings (disabled by default). When enabled, these external members become read-only in Flashduty — you cannot modify their roles or delete them in Flashduty. All member management must be done through the identity provider. This feature is ideal for organizations that need to centrally manage user permissions in the identity provider, ensuring member information in Flashduty always stays in sync.
- This option only affects external members created via SSO; manually invited members are not affected
- If the SSO configuration is deleted, existing external members remain read-only by default
Login Domain Management
The login domain is an important identifier for your account, used to locate the correct SSO configuration during single sign-on. Each account’s login domain is globally unique. After configuring the login domain, members can initiate single sign-on directly through the
{domain}.sso.flashcat.cloud address without manually selecting an identity provider.
You can modify the account domain on the Platform Management → Organization → Organization Information → Organization Profile page. The domain must be 5–40 characters long and can only contain letters, numbers, or -, and cannot start or end with -.
- It is recommended to use your company’s English name as the login domain for easy memorization
- Once set, changing the login domain will immediately invalidate the old domain; members using the old domain will need to update their login address
Best Practices
Role and Team Sync
SAML2.0/OIDC/CAS sync by name on every sign-in; defaults apply only to new members without matches
Authing Integration
Configure Flashduty SSO single sign-on through Authing
Keycloak Integration
Configure Flashduty SSO single sign-on through Keycloak
OpenLDAP Integration
Configure Flashduty SSO single sign-on through OpenLDAP