6

構築しているサイトのユーザーを承認するために、GoogleOAuthに依存しています。許可をリクエストしているとき、彼が使用したいGoogleアカウントをすでに知っています(私はGoogle OAuthを第2レベルの認証として使用しています)。ただし、ユーザーが一度に複数のGoogleアカウントにログインしている場合、GoogleはユーザーをSelectSessionインターフェースにリダイレクトします。

ユーザーがhttps://accounts.google.com/o/oauth2/auth?...に誘導されると、https://www.google.com/a/SelectSessionで終了します。彼がどのセッションを使用したいかはすでにわかっているので、これは不要です。

ユーザーがhttps://www.google.com/a/SelectSessionでセッションを手動で選択する必要がないように、特定のアカウントを自動的に選択する方法を知っている人はいますか?

4

2 に答える 2

19

ユーザーの電子メール アドレスが既にわかっている場合は、クエリ パラメーター user_id= をヒントとして追加できます。ユーザーがそのアカウントとしてログインしている場合は、アカウントの選択をスキップして承認に直接進みます。

ユーザーが実際にそのアカウントで承認することを保証するものではありません。これは単なるヒントであり、別のアカウントに切り替える可能性はまだあります。彼らが選択したアカウントを確実に知る必要がある場合は、後でそれを確認する必要があります (たとえば、userinfo エンドポイントを呼び出します)。

于 2012-09-20T19:04:24.647 に答える
-1

oAuthのポイントは、アプリがログイン/パスを知らないため、提案したものは使用できないことです。(指定しなかった) モバイル アプリを使用している場合、資格情報は Cookie に保存されます。

新しいアカウントを選択する代わりに、ユーザーがアカウントにログインするために Cookie を削除できますが、そのためには、以前のアカウントからサインアウトすることを検討する必要があります。

于 2012-09-20T08:09:28.107 に答える