Skip to content

feat(sso): add idp_entity_id to SSOSAMLSettingsByMetadata#1567

Merged
dorsha merged 4 commits into
mainfrom
feat/saml-metadata-idp-entity-id
Jun 12, 2026
Merged

feat(sso): add idp_entity_id to SSOSAMLSettingsByMetadata#1567
dorsha merged 4 commits into
mainfrom
feat/saml-metadata-idp-entity-id

Conversation

@dorsha

@dorsha dorsha commented Jun 11, 2026

Copy link
Copy Markdown
Member

Description

Adds an optional idp_entity_id field to SSOSAMLSettingsByMetadata, sent as entityId in the configure_saml_settings_by_metadata request body.

This lets callers persist the IdP entity ID alongside a metadata URL so IdP-initiated SAML login can resolve the tenant by the SAML response issuer. Without it, metadata-configured tenants had no stored entity ID and the issuer lookup failed (reported by Navan during SSO migration).

Backend PR: descope/backend#1280
Related issue: https://github.com/descope/etc/issues/16175

Must

  • Tests
  • Documentation (if applicable)

Add the optional idp_entity_id field, sent as entityId in the metadata
configure body, so callers can persist the IdP entity ID alongside a
metadata URL. This lets IdP-initiated SAML login resolve the tenant by
the SAML response issuer.

Backend: descope/backend#1280
Related issue: descope/etc#16175

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@shuni-bot-dev

shuni-bot-dev Bot commented Jun 11, 2026

Copy link
Copy Markdown

🐕 Review complete — View session on Shuni Portal 🐾

@shuni-bot-dev shuni-bot-dev Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🐕 Shuni's Review

Adds an optional idp_entity_id to SSOSAMLSettingsByMetadata, serialized as entityId in the metadata-config request so IdP-initiated login can resolve the tenant by SAML issuer.

No real issues found — good bones! The change is consistent with sibling fields (sent unconditionally, None matches spACSUrl/spEntityId), and tests are updated everywhere. One 🟢 LOW note inline on constructor arg ordering.

Woof! 🐕

Comment thread descope/management/sso_settings.py Outdated
aviadl
aviadl previously approved these changes Jun 12, 2026
Address review feedback: move the new idp_entity_id parameter to the end
of SSOSAMLSettingsByMetadata.__init__ so existing callers passing
sp_acs_url/sp_entity_id positionally keep binding to the right fields.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
A dependency auto-bump set `mypy==2.1.0; python_version < '3.10'`, but
mypy 2.1.0 requires Python >= 3.10, making dependency resolution
unsatisfiable and breaking CI for all PRs. Restore the last 1.11.x line
(1.11.2) as the in-file comment and prior revert intended; regenerate
uv.lock to match.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

Coverage report

The coverage rate went from 98.31% to 98.31% ⬆️

100% of new lines are covered.

Diff Coverage details (click to unfold)

descope/management/sso_settings.py

100% of new lines are covered (100% of the complete file).

@dorsha dorsha enabled auto-merge (squash) June 12, 2026 08:02
@dorsha dorsha merged commit 970de0a into main Jun 12, 2026
34 checks passed
@dorsha dorsha deleted the feat/saml-metadata-idp-entity-id branch June 12, 2026 08:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants