J'utilise Passport.js et passport-google-oauth20 dans mon application nodejs pour m'authentifier avec une "stratégie Google". Je viens de recevoir un e-mail de Google indiquant que j'utilise "plus.people.get" de l'API Google+ et qu'il sera obsolète. Dois-je changer quelque chose? Je n'utilise pas directement cet appel API, mais peut-être que Passport le fait?
Oui, la stratégie Google OAuth pour Passport utilise actuellement les points de terminaison de l'API Google+ pour récupérer les informations de profil de l'utilisateur.
Si vous désactivez l'intégration de l'API Google+ à partir de la console Google sur https://console.developers.google.com/apis/dashboard alors la connexion avec Google ne fonctionnera pas pour votre application. L'erreur reçue de Google contient ce message:
GooglePlusAPIError: accès non configuré. L'API Google+ n'a pas été utilisée dans le projet xxxxxx auparavant ou elle est désactivée. Activez-le en visitant https://console.developers.google.com/apis/api/plus.googleapis.com/overview?project=xxxxxx puis réessayez. Si vous avez activé cette API récemment, attendez quelques minutes que l'action se propage à nos systèmes et réessayez.
Pour que votre application fonctionne correctement en désactivant l'API Google+, vous devez utiliser cette option de stratégie:
userProfileURL: 'https://www.googleapis.com/oauth2/v3/userinfo'
var GoogleStrategy = require('passport-google-oauth20').Strategy;
passport.use(new GoogleStrategy({
clientID: GOOGLE_CLIENT_ID,
clientSecret: GOOGLE_CLIENT_SECRET,
callbackURL: "http://www.example.com/auth/google/callback",
userProfileURL: 'https://www.googleapis.com/oauth2/v3/userinfo'
},
function(accessToken, refreshToken, profile, cb) {
...
}
));