SSO implementation with Okta — SAML assertion failing for subset of users

We migrated our IdP from Azure AD to Okta last weekend. SSO is functional for approximately 85% of our user base, but I'm seeing consistent authentication failures for a specific subset of users.

Failure Pattern:

  • Affected users: 23 of 156 total licensed FieldPulse users
  • Commonality: All affected users were created in FieldPulse prior to March 2024
  • Error received: "SAML assertion validation failed" with no additional detail in the login UI

Environment Details:

  • FieldPulse SSO configuration: SAML 2.0
  • IdP: Okta (production tenant)
  • NameID format: EmailAddress
  • Attribute mapping: email → email, firstName → firstName, lastName → lastName
  • SP-initiated and IdP-initiated flows both exhibit the same failure pattern

Diagnostics Completed:

  • Verified Okta user profiles have correct email addresses (no trailing spaces or special characters)
  • Confirmed affected users have active Okta assignments and can authenticate to other SPs
  • Exported SAML assertion from browser dev tools — signature validates successfully against Okta certificate
  • Compared assertion XML between working and failing users: identical structure, differing only in user-specific values
  • Checked FieldPulse audit logs at Settings → Security → Audit Log: login attempts from affected users do not appear (no entry at all, success or failure)

The absence of audit log entries suggests the failure occurs before FieldPulse processes the assertion. I have confirmed that the email address in the NameID matches exactly what is stored in FieldPulse user records.

Has anyone encountered selective SAML failures based on user creation date or historical IdP linkage? I suspect there may be residual metadata from the previous Azure AD configuration causing a mismatch, but I cannot locate where FieldPulse stores historical IdP identifiers per user.

I can provide redacted SAML assertions via direct message if helpful for analysis.

Parents
  • Confirmed — this was the sso_external_id mismatch. Support provided the mapping report and all 23 affected users had Azure GUIDs populated from our 2023 implementation.

    I have confirmed that clearing these fields resolved authentication for 22 of 23 users. The remaining user had a duplicate email address conflict that was masked by this issue — separate problem, now resolved.

    For future reference: FieldPulse support advised they can enable a configuration flag that forces email-based lookup when sso_external_id is present but non-matching, rather than hard-failing. This may be preferable for organizations with similar migration patterns. The flag is not documented and requires support intervention.

    Thanks to Anita and Eli for the rapid diagnosis — saved us significant downtime.

  • Great catch on that flag, Rachel — that's actually a newer configuration option we added for exactly this scenario but haven't fully documented yet. I'll make sure it gets added to the official SSO troubleshooting guide.

    For anyone finding this thread later: the flag is called saml_allow_email_fallback and it's account-scoped. Support can toggle it if you anticipate ongoing IdP transitions or have a hybrid identity environment.

Reply
  • Great catch on that flag, Rachel — that's actually a newer configuration option we added for exactly this scenario but haven't fully documented yet. I'll make sure it gets added to the official SSO troubleshooting guide.

    For anyone finding this thread later: the flag is called saml_allow_email_fallback and it's account-scoped. Support can toggle it if you anticipate ongoing IdP transitions or have a hybrid identity environment.

Children
No Data