BtoB-ECでは、会員向けページで注文履歴や取引先ごとの情報など、取引に関わる情報を扱います。会員ログインの保護を検討するときは、「本人確認」「接続元」「ログイン状態の有効期間」を分けて整理すると、どの対策が何を担うのかを確認しやすくなります。
サンクユーでは、EC-CUBEをベースにしたサイトに、会員(購入者)側のログイン向けとして、認証アプリによる2段階認証、会員別のIPアドレス制限、ログイン期限を追加実装しました。本記事では、導入を検討する際の判断基準と、運用で決めておくことを整理します。
この記事でわかること
- 標準の2段階認証と、会員ログイン向けの追加実装の違い
- 2段階認証・IP制限・ログイン期限が、それぞれ何を確認するか
- 組み合わせを考えるときの観点
- 導入前に決めておく運用と確認事項
標準の2段階認証と、会員ログイン向けの追加実装は別のもの
EC-CUBEには4.1.0から標準の2段階認証があります。公式の管理・運用マニュアルでは、2段階認証はメンバー管理の項目として、管理画面ログインのセキュリティ強化の機能と説明されています。初期設定は「無効」です。(参考:EC-CUBE公式 管理・運用マニュアル)
本記事で扱うのは、購入者側の会員ログインを対象に、サイトの要件に合わせて追加した機能です。EC-CUBE標準の仕様や設定手順を説明するものではありません。管理画面側の対策は、EC-CUBEの多層防御(WAF・IP制限・2段階認証)とEC-CUBEのセキュリティ対策7選で扱っています。
追加の確認方法には認証アプリのほか、SMSやメールでコードを受け取る方式もあります。方式選択はアプリ・SMS認証の違いと運用設計、メール方式はメールによる二段階認証の記事で紹介しています。
3つの対策は、確認する対象が違う
| 対策 | 確認すること | 検討しやすい課題 | 単独では残る点 |
|---|---|---|---|
| 2段階認証 | 本人(パスワード+認証アプリのコード) | パスワードが第三者に知られた場合への備え | 認証アプリを使えなくなったときの復旧設計が必要 |
| IP制限 | 接続元(登録した固定IPからの利用か) | 利用場所が会社・拠点に限られる取引先 | 個人の確認ではない。回線変更や接続環境の違いへの対応が必要 |
| ログイン期限 | ログイン状態をいつまで有効にするか | 席を離れた端末や共有端末にログイン状態が残る場合 | 入力作業中の利用者への影響を案内する必要がある |
どれか1つを入れれば他は不要、というものではありません。逆に、すべてを入れれば十分とも言えません。守りたい情報と利用場面から、どの確認をどこに置くかを決めます。
組み合わせは、守りたい情報と利用場面から考える
例えば、取引先の会社・拠点からの利用が前提なら、IP制限が選択肢に入ります。外出先や在宅からの利用がある場合は、IP制限だけでは運用が難しくなるため、本人確認を中心に考えることになります。
IP制限と2段階認証は、役割が違います。許可された接続元からのアクセスでも、操作している人が本人かどうかは別の確認です。どれを採用するか、全会員に同じ条件を適用するかどうかは、扱う情報、利用場面、運営体制で判断します。
機能の前に、運用で決めておくこと
利用場面と端末
本社だけでなく、支店・倉庫・在宅・外出先からも使うかを確認します。認証アプリを使う場合は、利用できる端末、登録の案内方法、機種変更時の連絡先も整理します。
ログイン期限と入力作業
期限を設けると、入力途中の作業に影響する場合があります。長時間の入力が必要な画面があるかを確認し、期限の考え方を利用者へ案内します。期限が近いことを表示する機能と、入力内容を保存する機能は別なので、同じものとして案内しないようにします。
設定変更と復旧
セキュリティ設定を変更したとき、既存のログイン状態をどう扱うかを決めます。運営側から会員の設定を変更する場合は、対象会員のログイン状態に影響するため、事前案内の運用が必要です。
認証アプリを使えなくなった会員への対応も、機能と合わせて決めます。誰が、何を確認して、どこまで操作するかが決まっていないと、確認なしで解除する運用になりやすく、認証を追加した意味が薄れます。
個別の設計は、各記事で確認する
- 認証アプリの2段階認証:登録・必須化・変更・紛失時の復旧
- 会員別IP制限:複数拠点・設定変更時の締め出し・運営側での変更
- Cloudflare利用環境で、登録した固定IPと取得されるIPが一致しなかった事例
導入前の確認事項
- 保護したい画面・データと、それを利用する会員
- 会社・拠点・外出先など、必要な接続元
- 認証アプリを利用できる端末と、登録の案内方法
- ログイン期限と、入力作業への影響
- 設定変更時の既存ログイン状態の扱いと、事前案内の方法
- 利用できなくなった会員の連絡先・本人確認・復旧の担当
よくある質問
2段階認証を入れれば、IP制限やログイン期限は不要ですか?
役割が異なるため、一方でもう一方を置き換えられるとは限りません。2段階認証は本人の確認、IP制限は接続元の確認、ログイン期限はログイン状態の有効期間に関わります。守りたい情報と利用場面から、必要な組み合わせを判断します。
全会員に同じ設定を適用する必要がありますか?
一律に決める必要はありません。扱う情報や利用場面が会員ごとに異なる場合は、会員単位で設定できる設計も選択肢になります。自社の情報管理方針と運営体制に合わせて検討します。
EC-CUBE標準の2段階認証で、会員ログインも保護できますか?
公式マニュアルでは、標準の2段階認証は管理画面ログイン向けの機能として説明されています。会員ログインに同様の確認を求める場合は、プラグインの有無の確認や個別開発を含めて検討します。
ログイン期限が近づくと、入力中の内容は保存されますか?
期限が近いことを知らせる表示と、入力内容を保存する機能は別です。保存されるかどうかは実装によって異なるため、導入時に仕様を確認し、利用者へ案内します。
EC-CUBEの会員ログインの保護について相談する
サンクユーでは、EC-CUBEの機能追加を、実際の運用条件と合わせて検討します。現在の利用環境と、保護したい情報・困っていることをお知らせください。
あわせて読まれています
投稿者プロフィール
- サンクユーのEC-CUBE担当。15年以上にわたりEC-CUBE開発に従事し、2系・3系・4系すべてに精通。難易度の高いカスタマイズや、他社構築サイトの改修・再設計も多数対応しています。
Javaでの業務システム開発を起点に、PHP・Perl・フロントエンド・CMSまで横断的に対応。基幹システム連携や業務フローを踏まえた設計を得意とし、複雑な要件にも柔軟に対応可能です。
ChatGPT CODEXを活用し、開発スピードと品質の両立を実現しています。









