WordPressの管理画面は、ユーザー名とパスワードさえ分かれば、世界中のどこからでもログインできてしまいます。パスワードの使い回しや漏えいが心配なら、まず入れておきたいのが2段階認証です。パスワードに加えて、スマホのアプリに表示される6桁のコードを入力しないとログインできなくなります。
2段階認証を入れる方法はいくつかありますが、この記事では、WordPressの公式の開発者たちが作っている「Two Factor」プラグインを取り上げます。当社の検証環境で、設定からログインまでを実際に試した結果と、使って分かった注意点を紹介します。
結論から言うと、Two Factorは2段階認証だけに絞ったシンプルなプラグインで、管理者のアカウントを守る最初の一手として十分に使えます。ただし、スマホをなくしたときに締め出されないよう、予備の方法を一緒に設定しておくことが大切です。
この記事は2026年10月4日時点の情報です(検証はWordPress 7.1.2)。
WordPressの「Two Factor」プラグインとは?
Two Factorは、WordPress.orgで無料で配布されているプラグインです。WordPress本体の開発に関わるメンバーが中心になって開発していて、将来WordPress本体に2段階認証を入れるための「試作」の位置づけでも使われてきました。
使える方式は次の3つです。
| 方式 | しくみ | おすすめ度 |
|---|---|---|
| 認証アプリ(Authenticator App) | スマホのアプリに30秒ごとに変わる6桁のコードが表示される。Google AuthenticatorやMicrosoft Authenticatorなどで使える | おすすめ(主な方式に) |
| 予備のコード(Recovery Codes) | 1回だけ使えるコードを前もって発行しておく | おすすめ(予備として必ず) |
| メール(Email) | ログインのたびにメールでコードが届く | メールが確実に届くサイトなら |
なお、当社が検証した時点では、設定画面は英語で表示されました(サイトの言語は日本語)。英語の画面でも、この記事の手順どおりに進めれば設定できます。
Two Factorで2段階認証を設定する手順
- 「プラグイン」→「新規追加」で「Two Factor」を検索し、インストールして有効化する
- 「ユーザー」→「プロフィール」の下のほうにある「Two-Factor Options」を開く
- 「Authenticator App」の「Enable Authenticator App」にチェックを入れる
- スマホの認証アプリで、表示されたQRコードを読み取る
- アプリに表示された6桁のコードを「Authentication Code」に入力して送信する
- 続けて「Recovery Codes」を有効にし、予備のコードを発行して安全な場所に保管する
- 「プロフィールを更新」で保存する
検証環境でこの手順を行ったところ、コードを送信した時点で「認証アプリは設定済み」という表示に変わりました。そのあと一度ログアウトしてログインし直すと、パスワードを入れたあとに、6桁のコードを求める画面が表示されました。

アプリのコードを入力すると、いつもどおり管理画面に入れました。パスワードが漏れても、このコードがなければログインできない、というのが2段階認証の効果です。
締め出しを防ぐ:予備のコードは必ず作る
2段階認証で一番多い困りごとは、スマホの機種変更や紛失で、コードが見られなくなることです。予備のコード(Recovery Codes)を発行して、印刷やパスワード管理ツールで保管しておけば、スマホがなくてもログインできます。Two Factorの設定画面にも、予備の方法を有効にするよう促す表示が出ます。
それでもログインできなくなった場合は、サーバーのファイルを操作できれば、プラグインのフォルダの名前を変えて一時的に無効にする、という最終手段があります。管理者が1人しかいないサイトでは、この手順を確認しておくと安心です。
ここまでのまとめ
- Two Factorは、WordPress公式の開発メンバーが作る2段階認証のプラグイン
- 主な方式は認証アプリ。予備のコードも必ず一緒に設定する
- 設定画面は英語だが、手順はシンプル
設定を変える前の「再確認」の仕組み
検証で興味深かったのが、2段階認証の設定を変えようとすると、もう一度本人確認を求められる仕組みです。2段階認証を通っていない状態のログインで設定画面を開くと、次のように表示され、設定を変えられませんでした。

「Revalidate now」を押すと、ログインのときと同じ6桁のコードの入力画面が出ます。プラグインのプログラムを読むと、直近10分以内(保存は20分以内)に2段階認証を通っていないと、この再確認が求められる作りになっていました。
これは、たとえば管理画面を開いたまま席を離れたパソコンを誰かに触られても、2段階認証をこっそり外されたり、別のスマホを登録されたりしにくくするための仕組みです。WordPress 7.2のロードマップにも、ログイン中でも特に重要な管理操作の前にもう一度本人確認を求める「sudo mode」の構想が載っています。こちらは10月4日時点では初期の段階で、どの操作が対象になるかなどの詳しい提案はまだ公開されていません。Two Factorの再確認は、その考え方を今の時点で体験できる例と言えます。
注意点:REST APIはアプリケーションパスワードで入れる
Two Factorの設定画面には、「REST APIとXML-RPCの認証には、通常のパスワードではなくアプリケーションパスワードを使う」と書かれています。つまり、2段階認証が守るのは管理画面へのログインで、外部のツールがアプリケーションパスワードで入ってくる入口は別ということです。
2段階認証を入れたら、プロフィール画面のアプリケーションパスワードの一覧も確認し、使っていないものは取り消しておきましょう。アプリケーションパスワードの扱い方はアプリケーションパスワードの解説で、権限の選び方は権限グループの違いで詳しく紹介しています。
技術者向け:再確認の時間を変える方法
再確認までの猶予時間は、Two Factorのフィルターで変えられます。たとえば、表示・保存ともに5分にしたい場合は次のように書きます。
|
1 2 3 4 5 |
<?php add_filter( 'two_factor_revalidate_time', function ( $seconds, $user_id, $context ) { // $context は 'display'(表示)か 'save'(保存)。保存は既定で表示の2倍になる return 5 * MINUTE_IN_SECONDS; }, 10, 3 ); |
保存のときは、プラグインの中で、フィルターから返した時間がさらに2倍になる作りです。上の例では表示5分・保存10分になります。0やfalseを返すと再確認そのものを無効にできますが、守りが弱くなるのでおすすめしません。なお、Passkey(パスキー)への対応は、GitHubで提案(Issue #779)が出ている段階です。
よくある質問
Q. Wordfenceやほかのセキュリティプラグインの2段階認証と、どちらがいいですか?
すでにWordfenceなどのセキュリティプラグインを使っていて、その中の2段階認証を使っているなら、無理に乗り換える必要はありません。Two Factorは2段階認証だけに絞っているので、ほかの機能はいらない、プラグインを増やしたくない、という場合に向いています。セキュリティプラグイン全体の選び方はWordPressの不正ログインを防ぐ方法で解説しています。
Q. 全員に2段階認証を設定させるべきですか?
少なくとも管理者と編集者には設定をおすすめします。サイト全体の設定や他の人の記事を変えられる権限を持つためです。
Q. スマホをなくしてログインできません。
予備のコードがあれば、それでログインできます。ない場合は、他の管理者に設定を外してもらうか、サーバーのファイル操作でプラグインを一時的に無効にします。
ログインまわりの守りを、まとめて任せたい方へ
2段階認証、権限の整理、アプリケーションパスワードの棚卸し、ログインの試行回数の制限。ログインまわりの対策は、どれか1つではなく組み合わせて効果が出ます。当社はWordPress専門のエンジニアとして、保守の中でこうした設定の点検と導入を行っています。
更新履歴
- 2026年10月4日:作成(WordPress 7.1.2の検証環境で、認証アプリの登録・ログイン・再確認を確認)