web-dev-qa-db-fra.com

Si les applications Twitter utilisent OAuth pourquoi demanderaient-elles mon mot de passe?

Je me suis inscrit à TweetDeck et, en suivant les étapes, il semble que je lui ai attribué un jeton OAuth.

Ensuite, je l'ai installé (0.35.1, Linux), connecté avec mon compte TweetDeck et essayé d'ajouter mon compte Twitter. Il me demande ensuite mon mot de passe Twitter.

Pourquoi aurait-il besoin de mon mot de passe s'il utilise OAuth?


Mise à jour:

J'ai reçu un e-mail de Twitter peu de temps après avoir autorisé le jeton OAuth. Cela suggère que cela est commun aux applications en général et pas seulement à TweetDeck:

  • OAuth est une technologie qui permet aux applications d'accéder à Twitter en votre nom avec votre approbation, sans vous demander directement votre mot de passe.
  • Les applications de bureau et mobiles peuvent toujours demander votre mot de passe une fois , mais après cette demande, elles doivent utiliser OAuth pour accéder à votre calendrier ou vous permettre de tweeter.

Je ne comprends toujours pas pourquoi ils auraient besoin de mon mot de passe si j'ai déjà autorisé un jeton OAuth directement avec Twitter via le Web.

L'email dit aussi:

Les applications ne sont plus autorisées à stocker votre mot de passe.

Comment pourrait-on les empêcher de le stocker? Révéler un mot de passe "une fois", c'est le révéler pour toujours.

4
Ian Mackinnon

Pourquoi aurait-il besoin de mon mot de passe s'il utilise OAuth?

Certaines applications Twitter qui n'ont pas été mises à jour pour prendre en charge OAuth peuvent pleinement utiliser xAuth API pour obtenir les informations d'identification OAuth à partir d'un nom d'utilisateur et d'un mot de passe. Cette opération n'est requise qu'une fois par installation d'application, car le jeton OAuth renvoyé par cette dernière n'expire pas.

Comment pourrait-on les empêcher de le stocker?

De toute évidence, Twitter ne peut les empêcher de stocker votre mot de passe. Les conditions générales de l'API Twitter, qui doivent être acceptées pour obtenir une clé d'application OAuth, _, les applications étatiques ne sont pas autorisées à enregistrer un mot de passe - comme confirmé dans votre courrier électronique.

Aucune punition explicite n’est répertoriée pour avoir enfreint cet accord, mais votre clé OAuth serait révoquée, ce qui invaliderait le jeton OAuth de chaque utilisateur émis avec cette clé de votre application et empêcherait votre d'obtenir plus.

2
Marc Roberts

Premièrement, ils ne peuvent techniquement pas empêcher l'application de stocker votre mot de passe.

Maintenant, s’il s’agit d’une application locale bien comportée, le mot de passe est uniquement traité (ou stocké) sur votre ordinateur et envoyé à Twitter. C'est très différent d'un fournisseur de services qui stocke votre mot de passe sur ses serveurs. C'est le problème que OAuth avait à l'origine été conçu pour résoudre.

Certaines applications de bureau et mobiles utilisent xAuth, une méthode consistant à utiliser un nom d'utilisateur et un mot de passe pour démarrer un flux OAuth. C'est peut-être ce que fait TweetDeck. Une fois que vous avez autorisé TweetDeck sur un ordinateur, vous devez toujours connecter l’autre instance et l’autoriser à nouveau. Ainsi, lorsque vous utilisez une application (et pas par application), ils peuvent récupérer votre nom d'utilisateur et votre mot de passe, obtenir un jeton OAuth et stocker le OAuth jeton.

Notez que la saisie de votre nom d'utilisateur et de votre mot de passe dans une application de bureau réputée et efficace, exécutée sur votre ordinateur, n'est pas moins sûre que de la saisir sur Twitter.com dans votre navigateur Web.

1
Michael Ekstrand