Skip to content

Commit 64657ff

Browse files
dorshaclaude
andcommitted
feat(sso): expose XAA selected-IdP provider_id in management settings
Add provider_id to XAASettings and emit providerID on the XAA configure body when set, mirroring SSO SAML/OIDC so the chosen IdP round-trips. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent d438989 commit 64657ff

3 files changed

Lines changed: 6 additions & 0 deletions

File tree

descope/management/_sso_settings_base.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,8 @@ def _compose_configure_xaa_settings_body(
225225
}
226226
if sso_id:
227227
body["ssoId"] = sso_id
228+
if settings.provider_id:
229+
body["providerID"] = settings.provider_id
228230
return body
229231

230232
@staticmethod

descope/management/sso_settings.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,7 @@ def __init__(
120120
groups_priority: Optional[List[str]] = None, # list of group names in priority order (first = highest priority)
121121
group_priority_enabled: Optional[bool] = None,
122122
allow_override_roles: Optional[bool] = None,
123+
provider_id: Optional[str] = None, # selected IdP provider template id (mirrors SSO SAML providerID)
123124
):
124125
self.enabled = enabled
125126
self.settings = settings
@@ -129,6 +130,7 @@ def __init__(
129130
self.groups_priority = groups_priority
130131
self.group_priority_enabled = group_priority_enabled
131132
self.allow_override_roles = allow_override_roles
133+
self.provider_id = provider_id
132134

133135

134136
class OIDCAttributeMapping:

tests/management/test_sso_settings.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,7 @@ async def test_configure_xaa_settings(self, client_factory):
326326
groups_priority=["group1"],
327327
group_priority_enabled=True,
328328
allow_override_roles=True,
329+
provider_id="prov1",
329330
),
330331
sso_id="sso-1",
331332
)
@@ -376,6 +377,7 @@ async def test_configure_xaa_settings(self, client_factory):
376377
"groupPriorityEnabled": True,
377378
"allowOverrideRoles": True,
378379
"ssoId": "sso-1",
380+
"providerID": "prov1",
379381
},
380382
follow_redirects=False,
381383
)

0 commit comments

Comments
 (0)