2010-02-02 8 views
8

Ich habe eine Website, auf der ich Oauth verwende, um Benutzer in Google Mail zu loggen und dann ihre Kontakte und andere Informationen abzurufen. Was muss ich tun, damit sich der Benutzer beim Abmelden meiner Website automatisch von Google Mail abmeldet?Programmgesteuertes Abmelden von Google Mail über Oauth

Antwort

3

Soweit ich weiß, gibt es in OAuth keine Abmeldung. Sie hören einfach auf, Tokens zwischen Ihrer Anwendung und Google Mail zu senden.

3

Dies kann ein Nachteil des 3-beinigen OAuth-Flusses sein. Der Nutzer muss sich bei seinem Konto anmelden, um seine Zustimmung zu erteilen. Sobald er jedoch die Zustimmung erteilt hat, werden sie vom OAuth-Flow aus Google Mail entfernt. Da die Benutzer beim Eingeben der Zustimmung anders eingestellt sind als beim Anmelden zum Senden/Prüfen von E-Mails, erkennen sie möglicherweise nicht, dass sie angemeldet sind, nachdem der Benutzerfluss an den OAuth-Benutzer zurückgegeben wurde.

Ich habe dieses Problem mit Gmail sowie Yahoo und WindowsLive.

In Ermangelung eines Standards, überlege ich, die Benutzererfahrung auf meiner Website zu ändern, um es für den Benutzer deutlicher zu machen, dass sie in ihrem Google Mail-Konto angemeldet bleiben und bleiben, bis sie sich aktiv abmelden. Meine beste Option an dieser Stelle ist das Hinzufügen eines Abmeldelinks neben dem Google Mail-Symbol auf meiner Website. Dieser "Abmelden" -Link wird (noch) ein weiteres Popup öffnen, um zur Gmail/Yahoo/WindowsLive-Abmeldeseite zu navigieren.

Ich bin nicht in diesen Ansatz verliebt, es wäre besser, wenn meine "Abmelden" -Links den Benutzer signieren könnten, ohne ein Popup-Fenster zu benötigen. IE Meine Anwendung würde sich im Namen des Benutzers abmelden, indem sie auf einen OAuth-Abmeldeendpunkt klickt.

Ein weniger expliziter Ansatz wäre das Laden der Google Mail-Abmeldeseite (https://mail.google.com/mail/u/0/?logout & hl = de) in einem versteckten iframe auf meiner Website, wenn die Der Nutzer klickt auf den Link "Abmelden". Dies hätte die UX, nach der ich suche.

0

Leider funktioniert das Öffnen eines Iframes in neueren Browsern nicht mehr.

Google hat damit begonnen, Anfragen blockiert von einem Iframe kommen (mit Ausnahme der youtube einbetten iframes und alle anderen unterstützten diejenigen offiziell)

http://groups.google.com/group/youtube-api/browse_thread/thread/2d2236731672a098

ich ein Fenster eine schreckliche Flickschusterei von Aufspringen zu tun hatte, die Entsendung "action_logout" zu www.youtube.com (von wo ich mich abmelden wollte) und dann das Popup-Fenster schließen.

Nicht sehr glücklich damit, aber scheint bis jetzt die einzige Lösung zu sein.

Verwandte Themen