【发布时间】:2022-04-05 22:02:56
【问题描述】:
我有一个使用 Next Auth 的 Next js 应用程序。在开发过程中,我不断收到警告说我需要设置一个秘密,但我不知道应该在哪里设置它。
按照这个reference,我知道我只需要运行openssl rand -base64 32 就可以得到一个秘密,但我不知道把它放在哪里
【问题讨论】:
我有一个使用 Next Auth 的 Next js 应用程序。在开发过程中,我不断收到警告说我需要设置一个秘密,但我不知道应该在哪里设置它。
按照这个reference,我知道我只需要运行openssl rand -base64 32 就可以得到一个秘密,但我不知道把它放在哪里
【问题讨论】:
在提供者和回调之外的 [...nextauth].js 中,您可以设置密钥及其值。由于建议将这些值存储在环境变量中,您可以执行以下操作
export default NextAuth({
providers: [
],
callbacks: {
},
secret: process.env.JWT_SECRET,
});
【讨论】:
您应该在您的 Linux 终端中插入命令 openssl rand -base64 32,然后它将生成一个 Token 以在变量名为 NEXTAUTH_SECRET=token_generated 的 .env 文件上使用它。所以错误[next-auth][warn][NO_SECRET]不会在控制台再次显示。
【讨论】: