OAuthの概要:ユーザーは彼/彼女が彼/彼女であると言っていますか?:
「LoginwithGoogle」オプションのように、OAuthを使用してStack Overflowにログインしたかどうかはわかりませんが、この機能を使用すると、StackOverflowは単にGoogleにあなたが誰であるかを知っているかどうかを尋ねます。
「グーグルよ、このビネシュ・フェラーは、vinesh.e @ gmail.comが彼だと主張している、それは本当ですか?」
すでにログインしている場合、Googleは「はい」と表示します。そうでない場合、Googleは次のように言います。
「スタックオーバーフローをちょっと待ってください。私はこの仲間を認証します。彼が自分のGoogleアカウントに適切なパスワードを入力できれば、それは彼です」。
Googleのパスワードを入力すると、GoogleはStack Overflowにあなたが本人であると伝え、StackOverflowがログインします。
アプリからログアウトすると、のアプリ:
ここで、OAuthを初めて使用する開発者が少し混乱することがあります... GoogleとStackOverflow、Assembla、Vineshの-very-cool-slick-webappはすべて異なるエンティティであり、GoogleはVineshのクールなWebアプリのアカウントについて何も知りません。逆に、プロファイル情報へのアクセスに使用しているAPIを介して公開されているものは別として。
ユーザーがログアウトするとき、ユーザーはGoogleからログアウトしていないか、アプリ、Stack Overflow、Assembla、またはGoogleOAuthを使用してユーザーを認証したWebアプリケーションからログアウトしています。
実際、すべてのGoogleアカウントからログアウトしても、StackOverflowにログインできます。アプリがユーザーを認識したら、そのユーザーはGoogleからログアウトできます。Googleはもう必要ありません。
そうは言っても、あなたが求めているのは、実際にはあなたに属していないサービスからユーザーをログアウトさせることです。このように考えてみてください。ユーザーとして、Googleアカウントで5つの異なるサービスにログインした後、そのうちの1つから初めてログアウトしたときに、Gmailアカウントにログインする必要があるとしたらどの程度イライラすると思いますか。そのアプリ開発者が、自分のアプリケーションからログアウトするときに、Googleからもログアウトする必要があると判断したためです。それは本当に早く古くなるでしょう。要するに、あなたは本当にこれをしたくありません...
ええ、何でも、私はまだユーザーをグーグルからログアウトさせたいのですが、どうすればいいですか?
そうは言っても、それでもユーザーをGoogleからログアウトさせたい場合で、ワークフローが中断される可能性が非常に高いことに気付いた場合は、Googleサービスのログアウトボタンの1つからログアウトURLを動的に作成し、それを使用して呼び出すことができます。 img要素またはスクリプトタグ:
<script type="text/javascript"
src="https://mail.google.com/mail/u/0/?logout&hl=en" />
または
<img src="https://mail.google.com/mail/u/0/?logout&hl=en" />
または
window.location = "https://mail.google.com/mail/u/0/?logout&hl=en";
ユーザーをログアウトページにリダイレクトするか、クロスドメイン制限されていない要素から呼び出すと、ユーザーはGoogleからログアウトされます。
これは必ずしもユーザーがあなたからログアウトされることを意味するわけではないことに注意してくださいアプリケーション、Googleのみ。:)
概要:
覚えておくべき重要なことは、アプリからログアウトするときに、ユーザーにパスワードを再入力させる必要がないということです。それが要点です!Googleに対して認証されるため、ユーザーは使用する各Webアプリケーションにパスワードを何度も入力する必要がありません。慣れるまでには少し時間がかかりますが、ユーザーがGoogleにログインしている限り、アプリはユーザーが本人であるかどうかを心配する必要がないことを知っておいてください。
OAuthでGoogleプロフィール情報を使用して、プロジェクトで同じ実装を行っています。私はあなたが試しているのとまったく同じことを試しましたが、Googleに何度もログインしなければならないときに人々を怒らせ始めたので、Googleからのログアウトをやめました。:)