web-dev-qa-db-ja.com

ウェブサイトにメール/パスワードのログインとGoogleのログインがある場合に、アカウントの不正使用を防ぐためのログインフロー方法とは何ですか?

たとえば、私のウェブサイトにはメール/パスワードのログインと「Googleでサインイン」ボタンがあります。ユーザーが自分のメールアドレスとパスワードを使用してアカウントを作成し、[Googleでログイン]ボタンを使用してログインすることにした場合、自分のメール/パスワードアカウントと同じメールを使用して、アカウントにログインさせる必要がありますか?または、サインインの試行をブロックし、ユーザーをメール/パスワードのログインフォームにリダイレクトする必要がありますか?

メール/パスワードアカウントメール:[email protected] Googleアカウントログイン試行:[email protected]

ありがとう!

1
Joshua Verdehem

これは興味深い問題です。ほとんどの場合、ユーザーは「実際の」(ローカルで管理された)アカウントを作成したこと、またはGoogleアカウントを使用してシングルサインオンに切り替えたいことを覚えていないはずです。

攻撃者は既にGoogleアカウントへのアクセス権を持っている必要があるため、ユーザーの電子メールへのアクセス権も持っている可能性があるため、これを潜在的な攻撃ベクトルとは考えていません。

そのため、ユーザーに情報を提供することをお勧めします。このメールには「実際の」アカウントが既にあり、Googleを使用したこのアカウントをシングルサインオンに切り替えることを提案しています。ユーザーがメールにアクセスできることの適切な検証に同意する場合は、ローカルで管理されたアカウントでパスワードをリセットする方法と同様に、とにかく行う必要があります。ユーザーが代わりに既存のアカウントを切り替えたくない場合は、通常のログインオプションを提示する必要があります。つまり、この場合、Google SSOでローカルに管理されているアカウントにログインすることはできません。

1
Steffen Ullrich