: '', lastName: profile.name && profile.name.familyName ? profile.name.familyName : '', description: profile.about ? profile.about : '',
passport.use(new GoogleStrategy({ clientID: process.env.GOOGLE_CLIENT_ID, clientSecret: process.env.GOOGLE_CLIENT_SECRET, callbackURL: "http://localhost:3000/api/auth/google/callback" }, (accessToken, refreshToken, profile, done) => { db.User.findOrCreate({ where: { googleId: profile.id, username: 'g_' + profile.name.givenName + '_' + profile.name.familyName, family_name: profile.name.familyName, given_name: profile.name.givenName, email: profile.emails[0].value }}) .spread((user, created) => { done(null, user) }) .catch((err) => { return done(new Error('Internal Server Error')) }) } ))
newUser.name = profile.name.givenName + ' ' + profile.name.familyName newUser.email = profile.emails[0].value;
'google.googleId': id, firstName: name.givenName, lastName: name.familyName, photos: photos })
r.connect(config, (err, conn) => { createUser(conn, { email: profile.email || '', name: { displayName: profile.displayName || '', familyName: profile.name.familyName || '', givenName: profile.name.givenName || '' }, auth: { id: profile.id || '', type: 'facebook', accessToken, refreshToken }, gender: profile.gender || '', picture: profile.profileUrl || '' }) .then(user => { if (user.err && user.name) // User already exists done(null, user, { message: user.err }) else if (user.err) { // User creation error console.error(`Authentication Error: ${user.err}`) // eslint-disable-line no-console done(null, false, { message: user.err }) } else // User created done(null, user, { message: 'Account created with Google.' }) }) })
/** * estrategia local */ passport.use(new GoogleStrategy({ /* info de la aplicacion google */ clientID: config.google.clientID, clientSecret: config.google.clientSecret, callbackURL: config.google.callbackURL, passReqToCallback: true }, function(req, accessToken, refreshToken, profile, done) { var providerData = profile._json; providerData.accessToken = accessToken; providerData.refreshToken = refreshToken; //volcar la info de google en un usuario nuestro var providerUserProfile = { nombre: profile.name.givenName, apellidos: profile.name.familyName, fullName: profile.displayName, email: profile.emails[0].value, username: profile.username, provider: 'google', providerId: profile.id, providerData: providerData }; usuarios.saveOAuthUserProfile(req, providerUserProfile, done); }));
r.connect(config, (err, conn) => { createUser(conn, { email: profile.emails[0].value || '', name: { displayName: profile.displayName || '', familyName: profile.name.familyName || '', givenName: profile.name.givenName || '' }, auth: { id: profile.id || '', type: 'google', accessToken, refreshToken }, gender: profile.gender || '', picture: profile._json.image.url || '' }) .then(user => { if (user.err && user.name) // User already exists done(null, user, { message: user.err }) else if (user.err) { // User creation error console.error(`Authentication Error: ${user.err}`) // eslint-disable-line no-console done(null, false, { message: user.err }) } else // User created done(null, user, { message: 'Account created with Google.' }) }) })
} else { const email = profile.emails[0].value; const name = profile.name.givenName + (profile.name.familyName ? (' ' + profile.name.familyName) : ''); const socialData = { id: id, accessToken: accessToken, refreshToken: refreshToken };
passport.use(new GoogleStrategy({ clientID: process.env.GOOGLE_CLIENT_ID, clientSecret: process.env.GOOGLE_CLIENT_SECRET, callbackURL: '/auth/google/callback' }, (accessToken, refreshToken, profile, done) => { // Dont forget to enable Google+ API in Developer Console in order to get user's information AuthService.resolveUser({ google_id: profile.id, name: profile.name.givenName, last_name: profile.name.familyName, email: profile.emails[0].value }, (err, user, info) => { if (err) { return done(err); } if (user) { user.info = _getThirdPartyInfo(profile); } done(null, user, info); }); }));
lastName: profile.name.familyName, displayName: profile.displayName, email: profile.emails[0].value,
googleID: profile.id, firstName: profile.name.givenName, lastName: profile.name.familyName, email: profile.emails[0].value, image
passport.use(new FacebookStrategy({ clientID: configAuth.facebookAuth.clientID, clientSecret: configAuth.facebookAuth.clientSecret, callbackURL: configAuth.facebookAuth.callbackURL, profileFields: ['id', 'email', 'first_name', 'last_name'], }, function(token, refreshToken, profile, done) { process.nextTick(function() { User.findOne({ 'facebook.id': profile.id }, function(err, user) { if (err) return done(err); if (user) { return done(null, user); } else { var newUser = new User(); newUser.facebook.id = profile.id; newUser.facebook.token = token; newUser.facebook.name = profile.name.givenName + ' ' + profile.name.familyName; newUser.facebook.email = (profile.emails[0].value || '').toLowerCase(); newUser.save(function(err) { if (err) throw err; return done(null, newUser); }); } }); }); }));
// Use google strategy passport.use(new GoogleStrategy({ clientID: config.google.clientID, clientSecret: config.google.clientSecret, callbackURL: config.google.callbackURL, passReqToCallback: true }, function(req, accessToken, refreshToken, profile, done) { // Set the provider data and include tokens var providerData = profile._json; providerData.accessToken = accessToken; providerData.refreshToken = refreshToken; // Create the user OAuth profile var providerUserProfile = { firstName: profile.name.givenName, lastName: profile.name.familyName, displayName: profile.displayName, email: profile.emails[0].value, username: profile.username, profileImageURL: (providerData.picture) ? providerData.picture : undefined, provider: 'google', providerIdentifierField: 'id', providerData: providerData }; // Save the user OAuth profile users.saveOAuthUserProfile(req, providerUserProfile, done); } ));
// Use google strategy passport.use(new GoogleStrategy({ clientID: appConfig.google.clientID, clientSecret: appConfig.google.clientSecret, callbackURL: appConfig.google.callbackURL, passReqToCallback: true }, (req, accessToken, refreshToken, profile, done) => { // Set the provider data and include tokens let providerData = profile._json; providerData.accessToken = accessToken; providerData.refreshToken = refreshToken; // Create the user OAuth profile let providerUserProfile = { firstName: profile.name.givenName, lastName: profile.name.familyName, displayName: profile.displayName, email: profile.emails[0].value, username: profile.username, profileImageURL: (providerData.picture) ? providerData.picture : undefined, provider: 'google', providerIdentifierField: 'id', providerData: providerData }; // Save the user OAuth profile users.saveOAuthUserProfile(req, providerUserProfile, done); }));
lastName: profile.name.familyName, displayName: profile.displayName, email: profile.emails[0].value,