ソーシャルログイン

ソーシャルログインの危険性と対策|事業者が設計で防ぐ7つのリスク

ソーシャルログインは、導入すれば安全になる仕組みではありません。パスワードの漏えいは防げますが、SNSアカウントが乗っ取られると連携先にも入られる、といった別のリスクが生まれます。本記事では主な7つのリスクと、事業者が設計で防ぐ対策、利用者の不安への答え方を示します。

結論:リスクは「なくなる」のではなく「移る」

ソーシャルログインを入れると、次のリスクは確かに小さくなります。

  • 自社でパスワードを保管しないため、パスワードが漏えいしない
  • 他のサイトから漏れたパスワードを使い回した不正ログインの対象にならない

一方で、ログインの安全性がSNSアカウントの管理に左右されるようになります。危険性の多くは、事業者の設計で小さくできます。

リスク

主な対策

1. SNSアカウントの乗っ取り

重要な操作の前に本人確認を追加する

2. メールアドレスでの誤った統合

ログイン中の本人にだけ連携を追加する

3. 過剰な情報の要求

必要な情報だけを求め、使い道を説明する

4. 実装の不備によるなりすまし

トークンの検証とstateの確認を省かない

5. SNSが使えなくなる

別のログイン手段と、復旧の手順を用意する

6. アプリ内ブラウザで入れない

標準のブラウザで開くよう案内する

7. 受け取った情報の保持

保存する項目と期間を決める

1. SNSアカウントの乗っ取り

利用者のSNSアカウントが乗っ取られると、そのSNSでログインしている自社サイトにも入られます

対策

  • 住所の変更、支払い方法の登録、ポイントの利用など、重要な操作の前に追加の本人確認を行う
  • ログインや登録内容の変更を、登録済みの連絡先に通知する
  • 利用者には、SNS側で多要素認証を設定するよう案内する

2. メールアドレスでの誤った統合

SNSから受け取ったメールアドレスが既存会員と一致したとき、自動的に同じ会員として統合すると、他人の会員情報にログインされる恐れがあります。メールアドレスの確認が不十分なSNSで、第三者が他人のアドレスを使ってアカウントを作っていた場合です。

対策:既存会員との紐づけは、その会員としてログインしている本人にだけ行います。手順はアカウント統合の設計で解説しています。

3. 過剰な情報の要求

必要以上の情報を求めると、利用者は許可画面で不安を感じて離脱します。SNSの審査で、取得する情報がサービスの内容に対して過剰だと判断されることもあります。

対策

  • 求める情報は、サービスに必要な最小限にする
  • ログインボタンの近くに、受け取る情報と使い道を短く書く
  • 利用目的をプライバシーポリシーに記載する。内容は自社の法務・管理部門に確認する

SNSごとに取得できる情報はソーシャルログインで取得できる情報にまとめています。

4. 実装の不備によるなりすまし

SNSから受け取った本人の証明(IDトークン)を検証しない、リクエストの一致を確かめるstateパラメータを省く、といった実装の不備は、なりすましの経路になります。

対策:トークンの署名・発行元・宛先・有効期限を検証し、stateの一致を確認します。自社で実装する場合は実績のあるライブラリを使い、検証が有効になっているかを確かめてください。詳しくはソーシャルログインの仕組みとセキュリティで解説しています。

5. SNSが使えなくなる

利用者がSNSアカウントを削除した、凍結された、SNS側で障害が起きている、といった場合、そのSNSではログインできません。

対策

  • メールアドレスでのログイン、別のSNS、パスキーなど、2つ目のログイン手段を用意する(パスキーとは
  • メールアドレスでの本人確認などで、ログイン手段を設定し直せる手順を用意する
  • エラー画面で終わらせず、別の手段への案内を表示する

ただし、復旧の手順が簡単すぎると、そこが不正ログインの入口になります。本人確認の強さは、会員情報の重要度に合わせて決めてください。

6. アプリ内ブラウザで入れない

LINEやInstagramなどのアプリ内でリンクを開くと、アプリ内ブラウザで表示されます。Googleはアプリ内ブラウザからのログインを制限しており、そのままではログインできない場合があります。気付かないと、SNS経由の流入をまとめて失います。

対策:アプリ内ブラウザを判定し、標準のブラウザで開くよう案内します。テストの項目にも入れてください(ソーシャルログインの導入手順と期間)。

7. 受け取った情報の保持

Login Plusのデータの流れ。Login Plusが取得した個人情報は1時間で自動削除される
Login Plusのデータの流れ。Login Plusが取得した個人情報は1時間で自動削除される

SNSから受け取った情報を必要以上に長く、広く持つほど、漏えいしたときの影響が大きくなります。

対策

  • 保存する項目を決め、使わない情報は保存しない
  • 退会した会員の情報と、SNSとの紐づけを削除する
  • 認証サービスを使う場合は、サービス側にデータが残る期間と場所を確認する

利用者の不安にどう答えるか

「危ないのでは」という不安から、ソーシャルログインを避ける利用者もいます。よくある不安と答え方は次のとおりです。

よくある不安

答え方

SNSのパスワードがサイトに渡るのでは

渡りません。ログインはSNSの画面で行い、サイトは本人であることの証明を受け取るだけです

勝手にSNSに投稿されるのでは

ログインのための連携で、SNSに投稿されることは通常ありません

どんな情報が渡るのか

SNSの許可画面に、サイトに渡る情報が表示されます。キャンセルすれば情報は渡りません

連携をやめたい

多くのSNSでは、設定画面から連携しているサービスを確認・解除できます

これらをログイン画面の近くやFAQに短く書いておくと、ソーシャルログインを避ける利用者を減らせます。

よくある質問

ソーシャルログインとパスワードのログインは、どちらが安全ですか?

一概には言えません。パスワードの漏えいや使い回しのリスクはソーシャルログインのほうが小さく、SNSアカウントの管理に左右される点はソーシャルログイン特有のリスクです。重要な操作に本人確認を追加し、ログイン手段を複数用意すると、両方の弱点を補えます。

ソーシャルログインを使わないほうがよいケースはありますか?

社員が使う業務システムのように、アカウントを組織で管理する必要がある場合は、私用のSNSアカウントでのログインは向きません(ソーシャルログインとSSO・IDaaSの違い)。

パスキーのほうが安全ですか?

パスキーはフィッシングに強く、パスワードを使わない方式です。ソーシャルログインとは解決する問題が違うため、併用が現実的です(パスキー導入の進め方)。

Login Plus について

Login Plus のログイン画面。6つのソーシャルログインとパスキーに対応
Login Plus のログイン画面。6つのソーシャルログインとパスキーに対応

Login Plusは、6つのソーシャルログイン(Apple・Facebook・Google・X(旧Twitter)・Yahoo! JAPAN・LINE)とパスキーに1つの実装で対応できるサービスです。

  • トークンの検証と、各SNSの仕様変更への追随はLogin Plus側で担当
  • Login Plusが仲介した個人データは、取得から1時間で自動削除
  • パスキー(FIDO2 / WebAuthn)にも対応し、2つ目のログイン手段として併用できる
  • 複数のSNSを1つの会員IDに紐づけ可能

データの扱いについてはセキュリティのページもご覧ください。

ソーシャルログイン・パスキーの資料をお送りします

対応SNS・料金・実装の流れ・導入事例をまとめています。
「自社に導入できるか」のご相談も、同じフォームから承ります。

送信をもって個人情報の取り扱いに同意いただいたものとみなします。

個別のご相談は からもどうぞ。

送信をもって個人情報の取り扱いに同意いただいたものとみなします。

送信をもって個人情報の取り扱いに同意いただいたものとみなします。