Autorisation accès site perso avec compte google

Eléphant du PHP | 85 Messages

11 mai 2017, 15:13

Slt,

Je dispose d'un site web php/MySQL avec accès privé.
Mes utilisateurs me demandent de mettre en place une authentification directement via leur authentification google à la place de mon accès privé classique via formulaire/cookie.

...Si je suis ici, c’est que je n'y arrive pas. :-)

J'ai donc commencé par ceci : https://developers.google.com/identity/ ... eb/sign-in
Ca fonctionne.
J'ai ma page index avec le bouton de connexion qui se change en sign-in lorsque l'authentification est ok (d'ailleur le bouton sign out ne fonctionne pas).
Mais j'en fais quoi après ? Mystère...

Comment autoriser ou non l'accès ? Quelle info je récupère pour autoriser l'affichage de data ?

Je suis donc parti plusieurs jour à la chance aux info. J'ai trouvé des tas de tuto partiels, plus ou moins obsolète, en JS, en PHP, en java...
Mais impossible de faire fonctionner quoique se soit.

Si vous aviez un bon totu là dessus. ;-)

Merci de votre aide.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

11 mai 2017, 18:20

Dans la doc de Google, ils t'indiquent comment récupérer les infos de profil une fois que la connexion est effectuée :
https://developers.google.com/identity/ ... nformation

Donc si la connexion fonctionne, tu peux récupérer les infos de base de profil et le redirigé ensuite vers ton contenu sécurisé.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 85 Messages

12 mai 2017, 09:29

Slt,

Je précise que je ne pige rien à JS. ;-)

J'ai vu cette fonction.
J'ai bien compris qu'il faut la coller sur toutes les pages concernées par l'accès authentifié et que l'appel getBasicProfile() fournis les info.

Sauf que je ne vois pas comment récupérer les data via cette fonction et encore moins les comparer par la suite avec l'authentification d'origine pour garder l'accès.

L'appel de la fonction renvoi quoi ?
Un tableau contenu dans la variable profil ?

Admettons que le type arrive sur index.php.
Il se loggue.
GG le renvoi sur index.php, je récupère ces data.
Le type passe sur action.php dans laquel j'ai intégré la fonction et l'appel des data.

Comment je vérifier qu'ils sont identique à ceux récupéré à l'authentification ?
En auth via PHP, j'userais des session, mais là ?

Merci.

Eléphant du PHP | 85 Messages

12 mai 2017, 13:06

Bon,

Je viens de trouver ce tuto : http://www.codexworld.com/login-with-go ... using-php/
Ca fonctionne pas mal.

Reste plus qu'à l'intégrer à mon outil.