-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
website/docs: Update docs for single logout #17169
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
Conversation
✅ Deploy Preview for authentik-storybook canceled.
|
✅ Deploy Preview for authentik-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for authentik-integrations ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #17169 +/- ##
==========================================
+ Coverage 92.68% 92.97% +0.29%
==========================================
Files 868 868
Lines 47841 47863 +22
==========================================
+ Hits 44342 44502 +160
+ Misses 3499 3361 -138
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
authentik PR Installation instructions Instructions for docker-composeAdd the following block to your AUTHENTIK_IMAGE=ghcr.io/goauthentik/dev-server
AUTHENTIK_TAG=gh-b9a96cf791328ae2bfc9c877f62a32661b4c2ee6
AUTHENTIK_OUTPOSTS__CONTAINER_IMAGE_BASE=ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s Afterwards, run the upgrade commands from the latest release notes. Instructions for KubernetesAdd the following block to your authentik:
outposts:
container_image_base: ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s
global:
image:
repository: ghcr.io/goauthentik/dev-server
tag: gh-b9a96cf791328ae2bfc9c877f62a32661b4c2ee6 Afterwards, run the upgrade commands from the latest release notes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Absolutely awesome docs. Great job!
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/saml/saml_single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/saml/saml_single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/saml/saml_single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/saml/saml_single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/saml/saml_single_logout.md
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Absolutely awesome docs. Great job and great features to add.
website/docs/add-secure-apps/flows-stages/stages/user_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/user_logout.md
Outdated
Show resolved
Hide resolved
Thank you Dewi :) |
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/single_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/user_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/user_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this awesome documentation to go with your awesome feature, @PeshekDotDev !
I've finished reviewing, so after those and the other editors changes are in LGTM!
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great doc, but just a few comments that would need resolution before merging
website/docs/add-secure-apps/flows-stages/stages/user_logout.md
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/flows-stages/stages/user_logout.md
Outdated
Show resolved
Hide resolved
3. For each logout method with active sessions, the appropriate logout stage is injected: | ||
- **iframe logout stage** - Injected at index 1 (immediately after the logout stage) for front-channel iframe logout | ||
- **Native logout stage** - Injected at index 2 (after iframe logout, if present) for front-channel native logout | ||
- **Back-channel logout** - Executed server-side without injecting additional stages |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also i'd probably do
- thing: other thing
instead of using -s
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not me literally looking for where the -s
is...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this looks completed
website/docs/add-secure-apps/providers/oauth2/fontchannel_and_backchannel_logout.mdx
Outdated
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/oauth2/frontchannel_and_backchannel_logout.mdx
Show resolved
Hide resolved
website/docs/add-secure-apps/providers/saml/saml_single_logout.md
Outdated
Show resolved
Hide resolved
I like Dominic's suggestions. Added a few notes on a few of them. Once those are merged we can make one final pass and this should be good to go. |
63e07be
to
760e6ee
Compare
For more information about single logout across all providers, see the [Single Logout (SLO) Overview](../single-logout/index.md). | ||
|
||
:::warning | ||
Your OAuth application (Relying Party) must explicitly support OpenID Connect front-channel logout or back-channel logout to properly handle logout requests. Not all OAuth applications support these features, so compatibility should be verified. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your OAuth application (Relying Party) must explicitly support OpenID Connect front-channel logout or back-channel logout to properly handle logout requests. Not all OAuth applications support these features, so compatibility should be verified. | |
Your Relying Party (OAuth application) must explicitly support OpenID Connect front-channel logout or back-channel logout to properly handle logout requests. Not all OAuth applications support these features, so compatibility should be verified. |
might be best to introduce the technical element first and then say what it is. but that's my opinion
|
||
## Overview | ||
|
||
OAuth2/OIDC logout is a security feature defined in the OpenID Connect specification. It allows an OIDC Provider (OP), such as authentik, to notify Relying Parties (RPs) when a user session ends. This ensures that all associated applications can properly terminate the user's session. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should spell it out and acronym it on first reference in () like:
OAuth2/OIDC logout is a security feature defined in the OpenID Connect specification. It allows an OIDC Provider (OP), such as authentik, to notify Relying Parties (RPs) when a user session ends. This ensures that all associated applications can properly terminate the user's session. | |
OAuth2/OpenID Connect (OIDC) logout is a security feature defined in the OpenID Connect specification. It allows an OIDC Provider (OP), such as authentik, to notify Relying Parties (RPs) when a user session ends. This ensures that all associated applications can properly terminate the user's session. |
|
||
## Requirements | ||
|
||
Your OAuth application (Relying Party) must: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your OAuth application (Relying Party) must: | |
Your Relying Party (OAuth application) must: |
Same as above
|
||
### Front-channel logout | ||
|
||
With front-channel logout, authentik injects an iframe logout stage into the logout flow. This stage loads the RP's (relying party) front-channel logout URL in a hidden iframe within the user's browser. The logout URL includes session information as query parameters, such as: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With front-channel logout, authentik injects an iframe logout stage into the logout flow. This stage loads the RP's (relying party) front-channel logout URL in a hidden iframe within the user's browser. The logout URL includes session information as query parameters, such as: | |
With front-channel logout, authentik automatically injects an iframe logout stage into the logout flow. This stage loads the RP's (relying party) front-channel logout URL in a hidden iframe within the user's browser. The logout URL includes session information as query parameters, such as: |
Just to make it extra clear I think
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An easy LGTM on my side. Looks great!
Details
Docs update for single logout
Checklist
ak test authentik/
)make lint-fix
)If an API change has been made
make gen-build
)If changes to the frontend have been made
make web
)If applicable
make docs
)