33 lines
1023 B
JavaScript
33 lines
1023 B
JavaScript
const passport = require('passport');
|
|
const GoogleStrategy = require('passport-google-oauth20').Strategy;
|
|
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
const setupFilePath = path.join('setup.json');
|
|
const setupData = JSON.parse(fs.readFileSync(setupFilePath, 'utf-8'));
|
|
|
|
passport.use(new GoogleStrategy({
|
|
clientID: setupData.google.clientID,
|
|
clientSecret: setupData.google.clientSecret,
|
|
callbackURL: setupData.google.callbackURL
|
|
},
|
|
function(accessToken, refreshToken, profile, done) {
|
|
// Ici, vous pouvez vérifier si l'utilisateur est autorisé ou non
|
|
// Pour cet exemple, nous supposons que tous les utilisateurs Google sont autorisés
|
|
return done(null, profile);
|
|
}
|
|
));
|
|
|
|
passport.serializeUser((user, done) => {
|
|
done(null, user);
|
|
});
|
|
|
|
passport.deserializeUser((user, done) => {
|
|
if (user && (user.id)) {
|
|
return done(null, user);
|
|
} else {
|
|
return done(new Error('User not valid'), null);
|
|
}
|
|
});
|
|
|
|
module.exports = passport; |