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

Adds SP-initiated LogoutRequests #75

Merged
merged 8 commits into from
Feb 23, 2024
Merged

Conversation

escherize
Copy link

The basic flow of a SAML logout is:

  1. A SSO SAML User clicks Sign Out.
  2. Service Provider issues a redirect to the client with a LogoutRequest to the Identity Provider.
  3. Client forwards the request to the Identity Provider.
  4. Identity Provider logs the user out + redirects client back to Service Provider with a LogoutResponse.
  5. Service Provider clears the user's session, responds to the client with a redirect to the home page.

This adds logout-redirect-location and idp-logout-redirect-response, which are used to send a LogoutRequest to an Identity Provider. Some users of this library (like Metabase) prefer to send the redirect url in a POST body, and let the client initiate the redirect, and that's what logout-redirect-location is for.

@escherize escherize changed the title Adds SP-initiated Logout Requests Adds SP-initiated LogoutRequests Feb 21, 2024
Copy link

codecov bot commented Feb 21, 2024

Codecov Report

Attention: 14 lines in your changes are missing coverage. Please review.

Comparison is base (a1461ad) 75.30% compared to head (2ad374e) 75.03%.

Files Patch % Lines
src/saml20_clj/sp/request.clj 77.96% 2 Missing and 11 partials ⚠️
src/saml20_clj/sp/metadata.clj 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master      #75      +/-   ##
==========================================
- Coverage   75.30%   75.03%   -0.27%     
==========================================
  Files          10       10              
  Lines         656      693      +37     
  Branches       90      101      +11     
==========================================
+ Hits          494      520      +26     
  Misses         72       72              
- Partials       90      101      +11     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@escherize escherize self-assigned this Feb 21, 2024
@escherize escherize added the enhancement New feature or request label Feb 21, 2024
This is a SAML 2.0 Clojure library for SSO acting as a fairly thin wrapper around the Java libraries [OpenSAML
This is a SAML 2.0 Clojure library for SSO acting as a thin wrapper around the Java libraries [OpenSAML
Copy link
Member

Choose a reason for hiding this comment

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

amazing

Copy link
Author

Choose a reason for hiding this comment

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

thanks

camsaul
camsaul previously approved these changes Feb 21, 2024
Copy link
Member

@camsaul camsaul left a comment

Choose a reason for hiding this comment

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

works for me

@camsaul
Copy link
Member

camsaul commented Feb 21, 2024

Might be worth adding some info about this in the README.md so people can see at a glance how to configure SP-initiated logout stuff

Copy link

@dpsutton dpsutton left a comment

Choose a reason for hiding this comment

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

approving because Cam approved but a small change invalidated his approval

@escherize escherize merged commit a21e757 into master Feb 23, 2024
20 checks passed
@escherize escherize deleted the sp-initiate-logout-request branch February 23, 2024 18:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants