db authentication replaced by Google

This commit is contained in:
2024-01-08 15:17:18 +01:00
parent 8367606493
commit e29d813aee
11 changed files with 58 additions and 223 deletions

View File

@@ -0,0 +1,29 @@
import NextAuth, { NextAuthConfig } from 'next-auth';
import GoogleProvider from 'next-auth/providers/google';
export const authConfig:NextAuthConfig = {
callbacks: {
async signIn({ account, profile }) {
if (account?.provider === "google") {
return profile?.email_verified === true && profile?.email?.endsWith("@google.com") === true
}
return true // Do different verification for other providers that don't have `email_verified`
},
authorized({ auth, request: { nextUrl } }) {
const isLoggedIn = !!auth?.user;
return(isLoggedIn);
},
},
providers: [
GoogleProvider({
clientId: process.env.GOOGLE_ID,
clientSecret: process.env.GOOGLE_SECRET,
}),
],
session: {
// Use JSON Web Tokens for session instead of database sessions.
// This option can be used with or without a database for users/accounts.
// Note: `jwt` is automatically set to `true` if no database is specified.
strategy: 'jwt'
},
};