refactor: standardize auth cookie configuration and improve logout reliability by explicitly expiring session tokens
This commit is contained in:
30
src/auth.ts
30
src/auth.ts
@@ -240,5 +240,35 @@ export const { handlers, signIn, signOut, auth } = NextAuth({
|
||||
maxAge: 7 * 24 * 60 * 60, // 7 days
|
||||
},
|
||||
|
||||
// Explicit cookie configuration so we can reliably clear them on logout
|
||||
cookies: {
|
||||
sessionToken: {
|
||||
name: process.env.NODE_ENV === 'production' ? '__Secure-authjs.session-token' : 'authjs.session-token',
|
||||
options: {
|
||||
httpOnly: true,
|
||||
sameSite: 'lax',
|
||||
path: '/',
|
||||
secure: process.env.NODE_ENV === 'production',
|
||||
},
|
||||
},
|
||||
callbackUrl: {
|
||||
name: process.env.NODE_ENV === 'production' ? '__Secure-authjs.callback-url' : 'authjs.callback-url',
|
||||
options: {
|
||||
sameSite: 'lax',
|
||||
path: '/',
|
||||
secure: process.env.NODE_ENV === 'production',
|
||||
},
|
||||
},
|
||||
csrfToken: {
|
||||
name: process.env.NODE_ENV === 'production' ? '__Host-authjs.csrf-token' : 'authjs.csrf-token',
|
||||
options: {
|
||||
httpOnly: true,
|
||||
sameSite: 'lax',
|
||||
path: '/',
|
||||
secure: process.env.NODE_ENV === 'production',
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
secret: process.env.NEXTAUTH_SECRET,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user