[BUG] Claude Desktop SSO authentication fails with "Invalid authorization" after successful SAML response
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Environment:
Claude Desktop Version: latest
Operating System: macOS 26
SSO Provider: Okta (via WorkOS)
Organization Plan: Teams
Bug Description:
Claude Desktop fails to complete SSO authentication with "Invalid authorization" error, despite successful SAML authentication. The same SSO configuration works perfectly on claude.ai web interface.
Technical Details:
SAML authentication succeeds on the IdP side (verified via SAML response inspection)
The SAML RelayState includes: "redirect_uri":"https://claude.ai/sso-callback/desktop-app"
Issue appears to be with how Claude Desktop handles the SSO callback after successful WorkOS authentication
Authentication completes successfully, but desktop app doesn't receive/process the callback
What Should Happen?
Expected Behavior:
Claude Desktop should complete the SSO flow and log the user in, just like claude.ai web interface does.
Actual Behavior:
The app displays "Invalid authorization" error immediately upon opening, before any interaction. The error appears even after successful SAML authentication in the browser.
Error Messages/Logs
Steps to Reproduce
Steps to Reproduce:
Open Claude Desktop app
Attempt to sign in (SSO is enforced for organization)
App redirects to Okta SSO login
Complete authentication successfully in browser
SAML response returns with Success status
Desktop app displays "Invalid authorization" error
Claude Model
None
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
Latest - Claude Desktop
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Warp
Additional Information
Claude Desktop SSO problem
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗