2009-12-13 4 views
0

Salutations!Différent jeton d'accès à chaque fois - en utilisant Google OAuth et Authlogic

J'ai quelques problèmes pour activer l'authentification OAuth pour mon application web fonctionnant sur Ruby on Rails. J'utilise authlogic et authlogic_oauth et c'est, à la fin, en utilisant OAuth gem et donc j'ai décidé de demander ici. Donc, peu de temps:

I avec succès « registre » (c.-à obtenir le premier jeton d'accès pour l'utilisateur ) mais, chaque fois que j'essaie de « login », je reçois un jeton d'accès differenct pour le même compte Google, le Authlogic -oauth plugin ne parvient pas à trouver l'utilisateur et la connexion se bloque. Peut-être que je ne comprends pas c'est vrai mais ce n'est pas le AT supposé être le même à chaque fois. Et peut être un problème que j'accède à Google de http://localhost même si les clés du client sont pour le domaine différent?

de toute façon, merci pour toute réponse ... Je passe déjà 2 jours avec cette question et le débogage ne semble pas me mène nulle part

Jakub

PS: J'ai envoyé cette question sur Google Group oauth-ruby - désolé de lire les deux canaux

Répondre

2

L'AT est supposé être différent à chaque fois. OAuth n'est pas un protocole d'authentification, c'est un protocole de délégation d'autorisation. Essayez d'utiliser OpenID à la place: http://code.google.com/apis/accounts/docs/OpenID.html

+0

Merci pour l'anwer! Je suppose que je peux vous croire sur parole car je suis un nouveau poisson dans cette piscine. Mais comment se fait-il que des applications l'utilisent comme authentification? Par exemple http://github.com/jrallison/authlogic_oauth signifie exactement comme ça. Voir l'exemple en direct à http://authlogic-oauth.heroku.com. Je ne comprends pas vraiment. – Jakub

+0

Cette application semble utiliser le fournisseur OAuth de Twitter, qui n'a probablement pas la propriété de donner des jetons d'authentification différents à chaque fois. – Jonathan

2

Twitter ne donne pas de jetons différents, ce qui permet à OAuth d'être utilisé comme mécanisme d'authentification. LinkedIn ne fait pas cela, ce qui signifie que vous ne pouvez utiliser OAuth que comme un protocole d'autorisation (ce qui était prévu). Cependant, il existe une API utile pour extraire des données de LinkedIn. D'un intérêt particulier pourrait être le Profile API.

Questions connexes