2017-06-15 3 views
0

Essayer d'ajouter un identifiant avec une fonctionnalité google sur mon site PHP. Utilisation de la bibliothèque client PHP ("google/apiclient": "^ 2.0")Google oauth2 signUp n'invite PAS l'utilisateur à accéder aux autorisations de base

LE FLUX:
utilisateur clique URL Auth -> va rendre compte Page chooser -> connexions utilisateur -> Maintenant, l'utilisateur est pas invité à donner mes autorisations de base SITE. Au lieu de cela, est automatiquement redirigé vers mon site Web, où le profil complet de l'utilisateur est accessible.

Fondamentalement, l'utilisateur n'obtient pas un message PROMPT pour voir quelles autorisations de base sont en cours d'accès.

AFAIK google me demande chaque fois qu'un site veut voir mon profil/lors de l'utilisation de google sign in .. J'ai le sentiment que je fais quelque chose de mal.

btw si la portée Google_Service_Drive :: DRIVE_METADATA_READONLY est demandée, il y a une invite.

Le code:

$gClient = new Google_Client(); 
$gClient->setApplicationName($clientName); 
$gClient->setClientId($clientId); 
$gClient->setClientSecret($clientSecret); 
$gClient->setRedirectUri($redirectURL); 
$gClient->setIncludeGrantedScopes(false); 
// $gClient->addScope(Google_Service_Drive::DRIVE_METADATA_READONLY); 
$gClient->addScope(['https://www.googleapis.com/auth/userinfo.email','https://www.googleapis.com/auth/userinfo.profile']); 

$authUrl = filter_var($gClient->createAuthUrl(), FILTER_SANITIZE_URL); 

Le AuthURL lui-même (les valeurs sont légèrement modifiées):

https://accounts.google.com/signin/oauth/oauthchooseaccount? 
client_id=CLIENT_ID.apps.googleusercontent.com& 
as=-98432179o& 
nosignup=1& 
destination=http%3A%2F%2Flocalhost& 
approval_state=!RANDOM-STRING1tcnJnSxIfVXhhMTh0KJH90DJXIKdtUjlFUFpiSXloVQ·ADiIGyEAAAAAWUQECDfVGilus-TfaaUHFtCDC-4RANDOMSTUFF& 
xsrfsig=AHgIfL8e1NAPEmE6mWrwx1JLc_VIziWT_g& 
flowName=GeneralOAuthFlow 

Est-ce comportement attendu? Est-ce que je fais quelque chose de mal ? si oui quoi?

Répondre

0

Ceci est un comportement prévu.

Je cite le blogpost ici. https://developers.googleblog.com/2017/04/updates-to-end-user-consent-for-3rd.html

» ... les utilisateurs devraient avoir une plus grande visibilité dans les autorisations demandées au-delà de la norme « adresse e-mail » et « consentement de profil » En cliquant pour sélectionner leur compte, un utilisateur consent à ces autorisations de base, l'écran secondaire de consentement apparaîtra seulement si des autorisations supplémentaires sont demandées par l'application. ... "