Joomla!のバックエンド・ログイン時に多要素認証(Multi-Factor Authentication / MFA)を使用する設定を行いました。
概要
- Joomla! Coreには多要素認証(MFA)が用意されています
- 2026/05/26付のJoomla! 6.1.1アップデートで多要素認証(MFA)バイパスの脆弱性の修正が実施されました
- 当サイトではMFAを使用していませんでしたが、これを機にセキュリティ向上のためMFAを設定することとしました
- 仕様上、現時点でPasskeyが最強とされているので、PasskeyをDefult MFA Methodに設定し、あわせてOne-time Passwordも設定しました
Joomla! Core標準のMFA
- 次の5つのMFAを利用することができます
- Authentication Code by Email
- Fixed Code
- Verification Code
- Passkeys
- YubiKey
- 今回、USB KeyによるPasskey設定も試しています
- YubiKeyもUSB Keyの一つですが、専用Pluginが用意されています
- Joomla!にはWebauthn規格を使用したPasskeyが登場する前から、YubikeyによるOne-time Passwordに標準対応していた歴史がありそのYbikey OTPの継続利用のために、専用Pluginが用意されているそうです
MFA導入設定
- MFAを導入するには次の2つの設定が必要です
- 複数のJoomla! Core MFA Pluginから、使用するPluginを有効にします
- Global ConfigurationでMFAを強制するUser Groupを指定します
MFA Pluginの有効化
- 使用する認証機能に応じたPluginを有効にする必要があります
- 用意されているMFA Pluginは次のとおりです
- Multi-factor Authentication - Authentication Code by Email
- Multi-factor Authentication - Fixed Code
- Multi-factor Authentication - Verification Code
- Multi-factor Authentication - Passkeys
- Multi-factor Authentication - YubiKey
- One-time Password認証ではMulti-factor Authentication - Verification Codeを有効にします
- Passkey認証ではMulti-factor Authentication - Passkeysを有効にします
- USB Keyで圧倒的シェアを誇るYubiKey専用のPluginが用意されていますが、他社製Usb Keyの場合はPasskeysを設定・使用します
Plugin有効化の手順
- System > Manage > Pluginsをクリックします
- Search Boxに[multi]と入力して、Searchボタンをクリックします
- 今回使用するMulti-factor Authentication - Verification CodeとMulti-factor Authentication - Passkeysを有効に変更します
- Save & Closeをクリックします
Global Configurationの設定
- MFAの使用を強制するUser Groupを指定します
- System > Global Configurationをクリックします
- Multi-factor Aouthentication tab > Multi-factor Aouthentication blkを表示します
- Enforce Multi-factor Aouthentication: MFAを強制するUser Groupを指定します
- Save & Closeをクリックします
UserのMAF登録
- UserのMAF登録は各User ProfileのMulti-factor Authentication tabに用意されています
- 当サイトでは、バックエンドログインで運用しております
- 通常のUser Account / Passward認証でログイン後、User Profileで自らMAF登録するか、あるいはMAF強制設定後の初めてのログイン時にMAF登録に誘導されます
記者のPassword管理
- わたくしはPassward Managerに1Passwordを使用しています
- Password, Passkey, One-time Password(Authenticator)をまとめて管理しています
- クロスプラットフォーム対応による利便性は圧倒的かと思います
- PCではブラウザにChromeを使用し1Passwordの拡張機能で各サイトのログインを行っています
- 管理全般は1PasswordのWindows Appを使用しています
- iPhoneではブラウザにSafariをを使用し、1Password Appで各サイトのログインを行っています
- iPhoneにインストールしているAuthenticator Appは、1Passwordをメインに、Google Authenticator、Microsoft Authenticatorなども試しています
Passkey認証
- 現在、セキュリティレベルが最も高いMFAはPasskey認証とされています
- 中でも、USB Key等のハードウェアキーによるPasskey認証は最強の評価がされています
- One-time Password認証はフィッシング詐欺のリスクがあり、ドメインチェックが行われるPasskey認証ではそのリスクがありません
- 今回は、1Passwordに登録したPasskeyと廉価なUSB KeyのTHETIS PRO-C FIDO2 SECURITY KEYを試しました
Passkeyの登録
1PasswordのChrome拡張機能でのPasskey登録手順
- 事前に1Passwordに当該ユーザーのUsername / Passwordを登録しております
- Usersをクリックします
- 当該のUserをクリックします
- Multi-factor Authentication tabを表示します
- Passkey認証ではPasskey見出しの下にある+ Add a new Passkeyをクリックします
- Add a Multi-Factor Authentication Methodへ遷移します
- Titleへ任意の名称を入力します
- DefaultでPasskeyと入力されていますが、わたくしはPasskey - Mobilephoneとしました
- Make this the default Multi-factor Authentication methodにチェックを入れます
- Register your passkeyをクリックします
- わたくしの環境では、1PasswordのChrome拡張機能のSave passkeyのポップアップが開き、設定するユーザーの選択を求められます
- 同ポップアップでユーザーを選択し、Saveをクリックします
- Multi-factor Authentication tabに戻り、Passkey見出しの下にPasskey - Mobilephoneが登録されていることが確認できます
- Save & Closeをクリックします
USB KeyでのPasskey登録手順
- 事前にTHETIS PRO-C FIDO2 SECURITY KEYの専用AppであるTHETIS Key Managerで当該USB KeyのPINを登録済です
- Windows PCでの動作になります
- Usersをクリックします
- 当該のUserをクリックします
- Multi-factor Authentication tabを表示します
- Passkey認証ではPasskey見出しの下にある+ Add a new Passkeyをクリックします
- Add a Multi-Factor Authentication Methodへ遷移します
- Titleへ任意の名称を入力します
- DefaultでPasskeyと入力されていますが、わたくしはPasskey - Hardware tokenとしました
- Register your passkeyをクリックします
- わたくしの環境では、1PasswordのChrome拡張機能のSave passkeyのポップアップが開きます
- 同ポップアップの右肩にあるUSB KeyデザインのUse a Security Key or another passkeyをクリックします
- Windowsセキュリティダイアログが表示されます
- セキュリティキーをクリックします
- セキュリティキー暗証番号(PIN)を入力します
- OKをクリックします
- [セキュリティキーにタッチしてください]と表示されますので、THETIS PRO-C FIDO2 SECURITY KEYの点滅しているボタンを押します(残念ながらタッチではありません・廉価版ならではのボタン仕様です)
- Multi-factor Authentication tabに戻り、Passkey見出しの下にPasskey - Hardware tokenが登録されていることが確認できます
- Save & Closeをクリックします
Passkey認証経由のログイン
1PasswordのChrome拡張機能でのPasskey認証経由のログイン
- わたくしの場合、1Passwordの拡張機能によるアシストでログインします
- Multi-factor Authenticationのページに遷移します
- Validation with your passkeyをクリックします
- わたくしの環境では、1PasswordのChrome拡張機能のSign in with a passkeyのポップアップが開きます
- 同ポップアップに表示されたアカウントに間違いないことを確認し、Sign inをクリックします
- 認証されHome Dashboardが表示されます
USB KeyでのPasskey認証経由のログイン
- わたくしの場合、1Passwordの拡張機能によるアシストでログインします
- Multi-factor Authenticationのページに遷移します
- Register your passkeyをクリックします
- わたくしの環境では、1PasswordのChrome拡張機能のSave passkeyのポップアップが開きます
- 同ポップアップの右肩にあるUSB KeyデザインのUse a Security Key or another passkeyをクリックします
- Windowsセキュリティダイアログが表示されます
- セキュリティキーをクリックします
- セキュリティキー暗証番号(PIN)を入力します
- OKをクリックします
- [セキュリティキーにタッチしてください]と表示されますので、THETIS PRO-C FIDO2 SECURITY KEYの点滅しているボタンを押します(残念ながらタッチではありません・廉価版ならではのボタン仕様です)
- 認証されHome Dashboardが表示されます
One-time Password認証
- 今回は、1Passwordのone-time password機能とMicrosoft Authenticatorを試しました
One-time Passwordの登録
1PasswordのChrome拡張機能でのOne-time Password登録手順
- Usersをクリックします
- 当該のUserをクリックします
- Multi-factor Authentication tabを表示します
- One-time Password認証ではVerification Code見出しの下にある+ Add a new Verification Codeをクリックします
- わたくしの環境では、1PasswordのChrome拡張機能のSave one-time passwordのポップアップが開き、設定するユーザーの選択を求められます
- 同ポップアップでユーザーを選択すると、Enter the six digit verification codeにリアルタイムの6 digit codesが自動挿入されます
- Save & Closeをクリックします
- スマホの1Passwordを確認すると当該アカウントにone-time passwordが登録されていることを確認できます
Microsoft AuthenticatorでのOne-time Password登録手順
- Usersをクリックします
- 当該のUserをクリックします
- Multi-factor Authentication tabを表示します
- One-time Password認証ではVerification Code見出しの下にある+ Add a new Verification Codeをクリックします
- スマホでMicrosoft Authenticatorを開きます
- Scan QR Codeをタップします
- PCに表示されているQR Codeを撮影して登録します
- Microsoft Authenticatorに表示された6 digit codesをEnter the six digit verification codeに記入します
- Save & Closeをクリックします
Authenticator AppによるOne-time Password経由のログイン
1Passwordの拡張機能でのOne-time Password経由のログイン
- default MFA MethodがPasskeyである環境での手順になります
- 1Passwordの拡張機能によるアシストでUsername / Passwordログインします
- Multi-factor Authenticationのページに遷移します
- Passkeyが表示されていますので、Select a different methodをクリックします
- Select a Multi-factor Authentication methodのページに遷移します
- Verification Codeをクリックします
- Verification Code > Enter the six digit verification codeのテキストボックスに1Passwordのプルダウンが表示されます
- プルダウンから当該のアカウントをクリックします
- Enter the six digit verification codeのテキストボックスにsix digit verification codeが挿入されます
- Validateをクリックします
- 認証されHome Dashboardが表示されます
Microsoft AuthenticatorでのOne-time Password経由のログイン
- default MFA MethodがPasskeyである環境での手順になります
- 1Passwordの拡張機能によるアシストでログインします
- Multi-factor Authenticationのページに遷移します
- Passkeyが表示されていますので、Select a different methodをクリックします
- Select a Multi-factor Authentication methodのページに遷移します
- Verification Codeをクリックします
- iPhoneでMicrosoft Authenticatorを起動します
- Verification Code > Enter the six digit verification codeにMicrosoft Authenticatorの当該アカウントに表示されているsix digit verification codeを入力します
- Validateをクリックします
- 認証されHome Dashboardが表示されます