@@ -19,14 +19,14 @@ function proxyPlugin(fastify) {
1919 const keyRefreshToken = useCrate ? "onboarding_refreshToken" : "mcp_refreshToken" ;
2020
2121 // Check if there is an access token
22- const accessToken = request . session . get ( keyAccessToken ) ;
22+ const accessToken = request . encryptedSession . get ( keyAccessToken ) ;
2323 if ( ! accessToken ) {
2424 request . log . error ( "Missing access token." ) ;
2525 return reply . unauthorized ( "Missing access token." ) ;
2626 }
2727
2828 // Check if the access token is expired or about to expire
29- const expiresAt = request . session . get ( keyTokenExpiresAt ) ;
29+ const expiresAt = request . encryptedSession . get ( keyTokenExpiresAt ) ;
3030 const now = Date . now ( ) ;
3131 const REFRESH_BUFFER_SECONDS = 20 ; // to allow for network latency
3232 if ( ! expiresAt || now < expiresAt - REFRESH_BUFFER_SECONDS ) {
@@ -37,10 +37,10 @@ function proxyPlugin(fastify) {
3737 request . log . info ( { expiresAt : new Date ( expiresAt ) . toISOString ( ) } , "Access token is expired or about to expire; attempting refresh." ) ;
3838
3939 // Check if there is a refresh token
40- const refreshToken = request . session . get ( keyRefreshToken ) ;
40+ const refreshToken = request . encryptedSession . get ( keyRefreshToken ) ;
4141 if ( ! refreshToken ) {
42- request . log . error ( "Missing refresh token; deleting session ." ) ;
43- request . session . destroy ( ) ;
42+ request . log . error ( "Missing refresh token; deleting encryptedSession ." ) ;
43+ request . encryptedSession . clear ( ) ; //TODO: also clear user encrpytion key?
4444 return reply . unauthorized ( "Session expired without token refresh capability." ) ;
4545 }
4646
@@ -54,23 +54,23 @@ function proxyPlugin(fastify) {
5454 } , issuerConfiguration . tokenEndpoint ) ;
5555 if ( ! refreshedTokenData || ! refreshedTokenData . accessToken ) {
5656 request . log . error ( "Token refresh failed (no access token); deleting session." ) ;
57- request . session . destroy ( ) ;
57+ request . encryptedSession . clear ( ) ; //TODO: also clear user encrpytion key?
5858 return reply . unauthorized ( "Session expired and token refresh failed." ) ;
5959 }
6060
6161 request . log . info ( "Token refresh successful; updating the session." ) ;
6262
63- request . session . set ( keyAccessToken , refreshedTokenData . accessToken ) ;
63+ request . encryptedSession . set ( keyAccessToken , refreshedTokenData . accessToken ) ;
6464 if ( refreshedTokenData . refreshToken ) {
65- request . session . set ( keyRefreshToken , refreshedTokenData . refreshToken ) ;
65+ request . encryptedSession . set ( keyRefreshToken , refreshedTokenData . refreshToken ) ;
6666 } else {
67- request . session . delete ( keyRefreshToken ) ;
67+ request . encryptedSession . delete ( keyRefreshToken ) ;
6868 }
6969 if ( refreshedTokenData . expiresIn ) {
7070 const newExpiresAt = Date . now ( ) + ( refreshedTokenData . expiresIn * 1000 ) ;
71- request . session . set ( keyTokenExpiresAt , newExpiresAt ) ;
71+ request . encryptedSession . set ( keyTokenExpiresAt , newExpiresAt ) ;
7272 } else {
73- request . session . delete ( keyTokenExpiresAt ) ;
73+ request . encryptedSession . delete ( keyTokenExpiresAt ) ;
7474 }
7575
7676 request . log . info ( "Token refresh successful and session updated; continuing with the HTTP request." ) ;
@@ -86,7 +86,7 @@ function proxyPlugin(fastify) {
8686 replyOptions : {
8787 rewriteRequestHeaders : ( req , headers ) => {
8888 const useCrate = req . headers [ "x-use-crate" ] ;
89- const accessToken = useCrate ? req . session . get ( "onboarding_accessToken" ) : `${ req . session . get ( "onboarding_accessToken" ) } ,${ req . session . get ( "mcp_accessToken" ) } ` ;
89+ const accessToken = useCrate ? req . encryptedSession . get ( "onboarding_accessToken" ) : `${ req . encryptedSession . get ( "onboarding_accessToken" ) } ,${ req . encryptedSession . get ( "mcp_accessToken" ) } ` ;
9090
9191 return {
9292 ...headers ,
0 commit comments