ログインにポップアップは必要ですか?

Discourse のソーシャルログインは、デスクトップ環境では常にログイン用の「ポップアップ」ウィンドウを使用していました。

これは、ログイン処理中にユーザーを元のサイトから離さず、「より」邪魔にならないようにするための意図でした。

しかし、いくつかの理由から、この方式を維持することには意味がないと考えています。

まず、Discourse SSO の動作と一貫性がありません。ポップアップを許可しないブラウザでは不安定に動作します(私の Firefox では警告が表示され、クリックして有効化する必要があります)。また、投稿メッセージのコードは複雑で保守が難しく、さらに現在はポップアップ内で追加のクリックが必要になっています。

「ソーシャルログイン用のポップアップウィンドウを表示する」コードを廃止し、SSO、ソーシャルログイン、その他すべてのログイン方法において、一貫した 1 つのログイン方式に統一することに賛成でしょうか?

@codinghorror / @david / @eviltrout さん、いかがでしょうか?

「いいね!」 26

ポップアップを廃止して、すべてを一貫させることに賛成です。そうすれば、多くのコードも不要になります :tada:

Firefox で説明された問題は修正可能ですが、おっしゃる通りポップアップのコードは複雑で、このようなバグを起こしやすいです。

よろしければ、今週の後半にこの件に取り掛かりましょうか?

「いいね!」 18

喜んでお引き受けいたします :grin:

「いいね!」 10

これに対して PR を作成しました

最終的に安定版にマージされたら、プラグイン(OAuth2、OIDC など)から重複する「全画面」設定オプションを削除すべきです。

「いいね!」 15

すばらしい… :+1:t3: :slot_machine: :hugs:

「いいね!」 11

認証コードのかなり重要な部分が変更されるため、このブランチは現在、テストのために Meta にデプロイされています。

もしお時間があれば、いくつかの異なるプロバイダーを使ってログインしたり、設定でアカウントの接続を切断・再接続したりしてみてください。問題が見つかった場合は、お知らせください。調査いたします :face_with_monocle:

また、ここで Meta に設定されている新しい Discord 認証を試す絶好の機会でもあります :tada:

「いいね!」 6

@jomaxro テストのサポートをお願いできますか?

「いいね!」 3

もちろん!持っているすべてのアカウントを試してみます。

「いいね!」 6

Facebook、Google、Twitter、Discordでのログインテストを行い、すべて成功しました。また、ユーザー設定から同じアカウントの接続を切断して再接続するテストも実施しました。どちらのプロセスもスムーズでした。

GitHubについては、Discourseアカウントと連携しているGitHubに2段階認証が設定されているため、テストできません。

「いいね!」 5

さらにテストを行いました(上記のテストはすべて Windows 版 Chrome で実施)。Windows 版 IE、Edge、Firefox でもログインが正常に動作することを確認しました。また、IE においてログアウトとアカウント連携に関連する 2 つの軽微なバグを発見しましたが、これらはいずれも本変更以前から存在することが確認されています。

「いいね!」 5

@jomaxro のテスト、ありがとうございます。

PR は こちら です。これはコアのバグですが、Facebook がコールバック URL にハッシュを追加することを強行した ため、より深刻化していました。

これは IE11 のみに影響していたキャッシュの問題でした。このコミット で修正されるはずです。その修正を Meta へデプロイしています :mantelpiece_clock:

「いいね!」 12

素晴らしいですね!次のベータ版が切り出された後でマージしましょうか。

「いいね!」 6

投稿が新しいトピックに分割されました:Google ワンタップサインイン

これはマージされました

「いいね!」 9

このトピックは 6 日後に自動的に閉鎖されました。新しい返信は許可されていません。