私はWebプラットフォームを開発しています。私は奇妙な動作に気付きました。複数のアカウントのOAuthでのログイン拒否
- Webブラウザを開いてGoogleの
- によって
これにより、ユーザーは最初のアカウントにログインします。 Oauthのこの標準的な動作ですか?
私はWebプラットフォームを開発しています。私は奇妙な動作に気付きました。複数のアカウントのOAuthでのログイン拒否
これにより、ユーザーは最初のアカウントにログインします。 Oauthのこの標準的な動作ですか?
あなたが記述したふるまいは、OpenID接続プロトコルと比べて、Googleの独自のセッション管理に関連しています。
OpenID Connectは徐々にOAuth 2.0を置き換えており、Googleは新しいプロトコルの定義に参加しています。
プロトコルのGoogleの指紋は、あなたが記述した領域に正確に表示されます。 複数のアカウント間で選択肢を処理する。 フィールドプロンプトで3.1.2.1. Authentication Requestを見て、select_accountの値がそこにある理由を考えます。
とにかく、IDサーバーが、最近ログアウトしたアカウントで有効なコードを持つ認証要求に応答しているような動作は正しくありません。
プロトコルに準拠しているという信用をGoogleに与えたら、ネットワーク通信を調べて、Googleエンドポイントが間違ったユーザーの有効な認証を実際に返しているかどうかを確認するか、古いセッション報告のため
グッドラック
エヤル
お返事ありがとうございます。私はすでにGoogleサーバーレスポンスをチェックしており、最初のアカウントのデータを取得しています。すべてを選択したようになります。それは私がそれがとても奇妙だと思う理由です。テスターはまた、この問題はFacebookのログインを使用して発生すると報告したが、私はそれをテストすることができませんでした。私たちは、Owinのアイデンティティを使用してコールを管理します。 – Alexer99
私はOwinのアイデンティティーに精通していません。この場合、JavaScriptライブラリまたは.netライブラリが使用されていますか? – Guibin
この場合は.netライブラリです。それは自動的にGoogleとfacebook oauthへのすべての要求を処理しますが、ここでの問題は私たちがGoogleから得た応答です、それは最初のユーザーに関するすべての情報を持っています。 – Alexer99
感謝。私たちはこれを調べて返答します。私は、ユーザーがアカウントBの承認ページを見てキャンセルを押すと、最初のアカウントにサインインするべきではないことに同意します。
ユーザーが2つのアカウントにサインインし、1つのアカウントが既に承認されている場合、そのアカウントを自動的に選択する場合に最適化します。
この現象を再現する方法の詳細を教えてください。このフローを処理するためにクライアント側またはサーバー側のライブラリを使用していますか?それは認証コードフローを使用していますか? – TMSCH
私たちはクライアントサイドライブラリOwin Identityを使用しています。この問題は、2つのGoogleアカウントを使用すると再現できます.1つはアプリケーションにアクセスし、もう1つはアプリケーションなしです。 2つ目のアクセスを拒否すると、最初はoauthへの呼び出しによって返されます。 – Alexer99