Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: backchannel logout token may not contain "sub" #1049

Merged
merged 2 commits into from
Feb 17, 2025

Conversation

prigaux
Copy link
Contributor

@prigaux prigaux commented Feb 9, 2025

The spec says:

A Logout Token MUST contain either a sub or a sid Claim, and MAY contain both

Ory Hydra OP never sends "sub".

The fix is really trivial: ignore "sub" if it is missing.

The spec says:

> A Logout Token MUST contain either a sub or a sid Claim, and MAY contain both

Ory Hydra OP never sends "sub"
@julien-nc julien-nc self-requested a review February 10, 2025 10:13
@julien-nc
Copy link
Member

Thanks for the PR!

So according to the specs, the IdP could include sub but not sid in the logout token.

A full fix would be:

  • sid is there: we use it and don't check the sub
  • sid is missing: we try to use the sub
    • sub is there: we use it to get the session stored in the db (just like we currently do with sid)
    • sub is absent: we return an error response

In any case, we keep checking the iss.

Would you be ready to implement this fix? If not, I can do it later, after we've merged this PR.

Copy link
Member

@julien-nc julien-nc left a comment

Choose a reason for hiding this comment

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

The specs are actually more complex than what i described. It's a good first step to support the absence of the sub. Thanks!

@julien-nc julien-nc merged commit 42f1e43 into nextcloud:main Feb 17, 2025
50 of 51 checks passed
@julien-nc julien-nc mentioned this pull request Feb 17, 2025
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