Déléguez OpenID à Google (PAS à Google Apps)

85

Est-il possible d'utiliser mon site Web / blog personnel pour se connecter à des sites qui utilisent openid et en déléguant à mon compte Google?


OK, j'ai cherché cette question sur SO mais pas de bonne réponse. Après avoir passé un certain temps, j'ai compris comment le faire. Je vais y répondre moi-même pour le partager.

Rio
la source
3
Ajoutez une réponse à vos propres questions et marquez comme correcte, de cette façon tout le monde verra quelle était la réponse d'une manière plus persistante
Oskar Kjellin
Merci Oskar pour le tuyau! Cependant, je ne peux pas marquer la réponse comme correcte pour le moment. Il dit que je dois attendre à demain.
Rio
J'ai déplacé la réponse hors de la question et dans votre réponse, j'espère que cela ne vous dérange pas, mais c'est ainsi que SO est généralement utilisé.
Tom Robinson
@tjrobinson merci beaucoup! :)
Rio
1
J'aurais aimé que la question n'ait pas été modifiée parce que maintenant je ne comprends pas la réponse.
Eric Falsken

Réponses:

98

Désormais, il est possible de déléguer OpenID à votre compte Google (pas à Google Apps) .

Non, cela n'utilise pas le fournisseur OpenID de démonstration utilisant App Engine. Ceci est votre VRAI compte Google!

Vous devez d'abord activer vos profils Google . Essayez d'afficher votre profil et de le modifier, il devrait y avoir une option pour définir l'URL de votre profil. Vous avez deux choix: soit utiliser le nom de votre compte Gmail (sans la partie @ gmail.com) comme identifiant de votre profil, soit un numéro aléatoire qui vous est attribué. C'est à vous de décider lequel utiliser. Quoi qu'il en soit, cet identifiant est votre identifiant de profil ci-dessous.

Ajoutez maintenant le code HTML suivant à votre page de délégation:

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud?source=profiles" /> 
<link rel="openid2.local_id" href="https://profiles.google.com/[YOUR PROFILE ID]" /> 

Et c'est fait. Maintenant, essayez de vous connecter SO avec votre URL personnalisée!

tjrobinson
la source
1
Est-il possible d'avoir une page de délégation d'hôte google pour moi comme le fait MyOpenID?
Piotr Dobrogost
4
Étant donné que Google est désormais entièrement enrichi, l'URL profiles.google.com n'est plus ce que vous obtenez lorsque vous accédez à "mon profil", si votre profil est plus.google.com/107217643432815688625/posts puis profiles.google.com/ 107217643432815688625 semble toujours fonctionner comme votre openid2.local_id
smoofra
8
Actuellement avec Google+, vous devez mettre:<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud" /> <link rel="openid2.local_id" href="https://plus.google.com/GPLUSID" />
Sebi
1
@ChrisQuenelle D'après mon expérience, lorsque vous changez de délégué, la seule chose qui se produit est que vous êtes dirigé vers le nouveau site pour l'authentification. Le premier site connaît toujours votre identité en tant que site à partir duquel vous déléguez. Il est donc très facile de changer de fournisseur d'authentification.
Ilari Kajaste
2
@Sebi, j'ai essayé vos linkéléments, mais il a utilisé mon identité Google comme identité revendiquée, plutôt que mon URL de délégation *. En outre, il m'a demandé quel compte de mes deux comptes actuellement connectés je voulais utiliser, ce plus.google.comn'est donc apparemment pas le bon nom d'hôte à utiliser. J'ai utilisé profiles.google.comavec mon nom gmail à la place, et cela a fonctionné comme prévu. Je n'ai pas vérifié comment utiliser profiles.google.com avec une identité Plus. * SuperUser a demandé de créer un nouveau compte [email protected]plutôt que de se connecter à mon compte existant en fonction de l'URL OpenID que je lui ai donnée.
clacke
8

Malgré ce que dit la réponse acceptée, vous n'avez pas besoin de rejoindre Google+ pour utiliser Google en tant que délégué puisque vous disposez déjà d'un identifiant local, étant la partie de votre e-mail précédant le @.

Étant donné un compte Google existant de [email protected], vous avez simplement besoin des deux liens suivants dans la headsection de votre page de délégué :

<link rel="openid2.provider" href="https://www.google.com/accounts/o8/ud">
<link rel="openid2.local_id" href="https://profiles.google.com/some-name">

Je viens de le faire et j'ai vérifié que cela fonctionne sans avoir rejoint Google+.

Lawrence Dol
la source