Repository navigation
feat: add currents.sso.saml.allowIdpInitiated, the new SAML ACS URL and a 1.0 upgrade guide [ENG-1736] - #61
Merged
Conversation
…nd a 1.0 upgrade guide [ENG-1736] Better Auth 1.7.1 serves the ACS at /api/auth/sso/saml2/sp/acs/<id>; the old /saml2/callback/<id> path answers 404, and IdP-initiated sign-ins are refused unless SSO_SAML_ALLOW_IDP_INITIATED is true. The chart builds the server's environment explicitly, so that setting needs a value. docs/eks/upgrade-1.0.md collects what an operator on 0.8.x has to do for 1.0: the IdP change, the app content bucket, the MCP and OAuth defaults, the startup migrations and their timings, and the removed spCertKey. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhM4wHR2xPP8bbrkXGaqUD
3 tasks done
|
| Topic | Details | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Chart 1.0 Upgrade | Provide operators with a linked Chart 1.0 upgrade path covering required SAML and bucket changes, default integrations, database migration behavior, removed values, artifact expiry, and rollback considerations.Modified files (4)
Latest Contributors(2)
| |||||||||
| SAML SSO Migration | Document the Better Auth 1.7.1 SAML endpoint changes, clarify the stable Audience value, and expose allowIdpInitiated as an opt-in environment setting for IdP-started sign-ins.Modified files (5)
Latest Contributors(2)
|
twk3
commented
Oct 14, 2026
… [ENG-1736] "Okta does this by default" did not say what Okta does. The 1.0 guide now also says the services keep serving while the scheduler migrates, and which reads can leave out older runs until it is done. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhM4wHR2xPP8bbrkXGaqUD
twk3
marked this pull request as ready for review
October 14, 2026 18:01
… [ENG-1736] Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhM4wHR2xPP8bbrkXGaqUD
…t Job cleanly [ENG-1736] `if` treats any non-empty string as true, so allowIdpInitiated: "false" rendered SSO_SAML_ALLOW_IDP_INITIATED=true. While a completed rustfs-create-bucket Job still exists, applying the file again starts no new run, so the 1.0 guide deletes it first. The SP metadata URL notes that okta stands for your providerId. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhM4wHR2xPP8bbrkXGaqUD
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merge when chart 1.0 is published, not before. Pages deploys
main's docs on merge, and until 1.0 is out the latest published chart is 0.8.1, which answers the new ACS URL with404.Updates the SAML SSO setup for Better Auth 1.7.1 and adds an upgrade guide for chart 1.0 (ENG-1736, ENG-1735).
SAML SSO
What changed in the API:
/api/auth/sso/saml2/callback/<providerId>to/api/auth/sso/saml2/sp/acs/<providerId>. The old path answers404.SSO_SAML_ALLOW_IDP_INITIATEDistrue. Better Auth accepted them up to 1.6.currents.sso.saml.issuer. Better Auth uses it as the SP entity ID.Changes:
currents.sso.saml.allowIdpInitiated(defaultfalse) rendersSSO_SAML_ALLOW_IDP_INITIATED=trueon the server. The chart builds the environment explicitly, so the setting needs a value.docs/eks/quickstart.md, SSO section:allowIdpInitiated;/api/auth/sso/saml2/sp/metadata?providerId=<providerId>.providerId's description gives the full ACS URL, andconfiguration.mdis regenerated.Upgrade guide for 1.0
docs/eks/upgrade-1.0.mdcovers going from0.8.xto1.0.0. It's linked fromupgrading.md, the docs index and the quickstart. It starts with a table of each change and what the operator has to do, then covers:allowIdpInitiated.appContentStorage.bucket;1.0.1and run the bucket Job again.curlchecks.Kept the existing indexwarnings, and what to do on an error.spCertKey.Not in the guide:
Testing
helm templatewith SSO on:SSO_SAML_ALLOW_IDP_INITIATEDrenders only withallowIdpInitiated: true.helm lintwith the CI values passes, andconfiguration.mdmatches helm-docs.@better-auth/sso1.7.1. It wasn't exercised against a real IdP.Related
/helm-charts/0.8/docs/, linked from the docs index and this guide. Merge it first: once this PR merges, the published docs give 0.8.1 operators an ACS URL their install answers with404.🤖 Generated with Claude Code
https://claude.ai/code/session_01UhM4wHR2xPP8bbrkXGaqUD