[next-auth][error][JWT_SESSION_ERROR]https://next-auth.js.org/errors#jwt_session_error decryption o
Unanswered
julian posted this in #help-forum
julianOP
Anyone know how to solve this?
import NextAuth from "next-auth";
import CredentialsProvider from "next-auth/providers/credentials";
import { PrismaClient } from "@prisma/client";
import bcrypt from "bcrypt";
const prisma = new PrismaClient();
const authOptions = {
session: {
strategy: "jwt",
},
pages: {
signIn: "/login",
},
secret: process.env.SECRET,
providers: [
CredentialsProvider({
name: "Credentials",
credentials: {
email: { label: "Email", type: "email", placeholder: "your@email.com" },
password: { label: "Password", type: "password" },
},
authorize: async (credentials) => {
const user = await prisma.user.findUnique({
where: { email: credentials.email },
});
if (
user &&
(await bcrypt.compare(credentials.password, user.password))
) {
return {
id: user.id,
email: user.email,
name: `${user.firstName} ${user.lastName}`,
role: user.role,
tenantId: user.tenantId,
};
}
},
}),
],
callbacks: {
async jwt({ token, user }) {
if (user) {
token.id = user.id;
token.email = user.email;
token.role = user.role;
token.tenantId = user.tenantId;
}
return token;
},
async session({ session, token }) {
session.user.id = token.id;
session.user.email = token.email;
session.user.role = token.role;
session.user.tenantId = token.tenantId;
return session;
},
},
jwt: {
secret: process.env.JWT_SECRET,
encryption: true,
},
};
export default NextAuth(authOptions);3 Replies
julianOP
[next-auth][error][JWT_SESSION_ERROR]
https://next-auth.js.org/errors#jwt_session_error decryption operation failed {
message: 'decryption operation failed',
stack: 'JWEDecryptionFailed: decryption operation failed\n' +
' at gcmDecrypt (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\jose\\dist\\node\\cjs\\runtime\\decrypt.js:67:15)\n' +
' at decrypt (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\jose\\dist\\node\\cjs\\runtime\\decrypt.js:92:20)\n' +
' at flattenedDecrypt (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\jose\\dist\\node\\cjs\\jwe\\flattened\\decrypt.js:143:52)\n' +
' at async compactDecrypt (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\jose\\dist\\node\\cjs\\jwe\\compact\\decrypt.js:18:23)\n' +
' at async jwtDecrypt (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\jose\\dist\\node\\cjs\\jwt\\decrypt.js:8:23)\n' +
' at async Object.decode (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next-auth\\jwt\\index.js:66:7)\n' +
' at async Object.session (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next-auth\\core\\routes\\session.js:43:28)\n' +
' at async AuthHandler (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next-auth\\core\\index.js:165:27)\n' +
' at async getServerSession (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next-auth\\next\\index.js:159:19)\n' +
' at async handler (webpack-internal:///(api)/./pages/api/internal/position/get.js:15:21)\n' +
' at async K (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next\\dist\\compiled\\next-server\\pages-api.runtime.dev.js:21:2946)\n' +
' at async U.render (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next\\dist\\compiled\\next-server\\pages-api.runtime.dev.js:21:3827)\n' +
' at async DevServer.runApi (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next\\dist\\server\\next-server.js:554:9)\n' +
' at async NextNodeServer.handleCatchallRenderRequest (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next\\dist\\server\\next-server.js:266:37)\n' +
' at async DevServer.handleRequestImpl (C:\\Users\\Julia\\Documents\\GitHub\\freyahr\\node_modules\\next\\dist\\server\\base-server.js:789:17)',
name: 'JWEDecryptionFailed'
}This is the error that is showing up in the console