Add authenticationMethod to sealed session#1417
Merged
Conversation
Contributor
Greptile OverviewGreptile SummaryAdded Changes:
The implementation is consistent across all authentication and session refresh flows. Confidence Score: 5/5
Important Files ChangedFile Analysis
Sequence DiagramsequenceDiagram
participant Client
participant UserManagement
participant CookieSession
participant IronSessionProvider
participant AuthResponse
Note over Client,AuthResponse: Authentication Flow with authenticationMethod
Client->>UserManagement: authenticateWithCode/Password/etc(options)
UserManagement->>AuthResponse: POST /user_management/authenticate
AuthResponse-->>UserManagement: AuthenticationResponse (with authenticationMethod)
alt sealSession is true
UserManagement->>UserManagement: sealSessionDataFromAuthenticationResponse()
Note over UserManagement: Creates SessionCookieData with:<br/>- accessToken<br/>- refreshToken<br/>- user<br/>- authenticationMethod<br/>- impersonator<br/>- organizationId
UserManagement->>IronSessionProvider: sealData(sessionData)
IronSessionProvider-->>UserManagement: sealedSession string
end
UserManagement-->>Client: AuthenticationResponse + sealedSession
Note over Client,AuthResponse: Session Cookie Authentication Flow
Client->>UserManagement: authenticateWithSessionCookie(sessionData)
UserManagement->>IronSessionProvider: unsealData(sessionData)
IronSessionProvider-->>UserManagement: SessionCookieData (with authenticationMethod)
UserManagement->>UserManagement: isValidJwt(accessToken)
UserManagement-->>Client: AuthenticateWithSessionCookieSuccessResponse<br/>(includes authenticationMethod)
Note over Client,AuthResponse: Session Refresh Flow
Client->>CookieSession: refresh(options)
CookieSession->>IronSessionProvider: unsealData(sessionData)
IronSessionProvider-->>CookieSession: SessionCookieData
CookieSession->>UserManagement: authenticateWithRefreshToken()
UserManagement->>AuthResponse: POST /user_management/authenticate
AuthResponse-->>UserManagement: AuthenticationResponse (with authenticationMethod)
UserManagement->>IronSessionProvider: sealData(sessionData with authenticationMethod)
IronSessionProvider-->>CookieSession: new sealedSession
CookieSession-->>Client: RefreshSessionResponse<br/>(includes authenticationMethod)
|
mthadley
approved these changes
Dec 15, 2025
Merged
cmatheson
added a commit
that referenced
this pull request
Dec 24, 2025
## Description Includes: - #1417 - #1420 ## Documentation Does this require changes to the WorkOS Docs? E.g. the [API Reference](https://workos.com/docs/reference) or code snippets need updates. ``` [ ] Yes ``` If yes, link a related docs PR and add a docs maintainer as a reviewer. Their approval is required. <!-- av pr metadata This information is embedded by the av CLI when creating PRs to track the status of stacks when using Aviator. Please do not delete or edit this section of the PR. ``` {"parent":"main","parentHead":"","trunk":"main"} ``` -->
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.
Description
Documentation
Does this require changes to the WorkOS Docs? E.g. the API Reference or code snippets need updates.
If yes, link a related docs PR and add a docs maintainer as a reviewer. Their approval is required.