追記:Joomla 4.2 から Multi-factor Authentication(多要素認証)が新たに導入され、本記事の「WEB認証」は、この多要素認証に統合されました。

2022年8月現在の最新バージョン、Joomla! 4.1 には、サイトにログインする際の「安全性」と「利便性」の両者を最高グレードに導く強力な機能がコアシステムに標準装備されています。

とりわけビジネスサイトにとって、セキュリティーは大いなる関心事項です。Joomla! のセキュリティー機能のひとつである「WEB認証」をご理解頂くと、会員を安全にログインさせる有効な手段であるとご評価いただけることでしょう。

WEB認証
Web Authentication

WEB認証

WEB認証とは?

WEB認証は、ログイン時にパスワード入力が不要としつつも安全に会員を認証する画期的な方法です。

基本的にウェブサイトにログインする際には、「ユーザ名」と「パスワード」を入力し、その情報をサーバーに送信しています。この時、URLが「https://」で始まっていれば、SSL/TLS によりログイン情報は暗号化して送信されますので、通常安全上の問題はありません。

しかしパスワードを使用している限り、以下の不安がつきまといます:

ブルートフォース攻撃 パスワードを推測して試す(誕生日など簡単なパスワードを設定している場合に危険です)
通信傍受 第三者による通信の読み取り(SSL/TLS により保護をしていない場合)
フィッシング 偽メールのリンク先から個人情報が騙し取られる
SQLインジェクション データベースの不正操作による情報漏洩

サイト内にアカウント作成する際には、ユーザ名とパスワードを設定する必要はありますが、このWEB認証を利用すれば、ログインする際にパスワードを入力する必要がなくなるため、パスワード情報がネット上に送信されること自体が無くなります!

パスワードで安全性を確保するには、大文字・小文字・記号・数字を組み合わせた12文字以上が推奨されますが、そもそもこの12文字以上の文字列を入力する手間が不要となるのです。

WEB認証を利用するには?

まず大前提として、WEB認証はHTTPS環境のみで機能します(SSL/TLS が導入されていない場合は利用できません)。
古い仕様のまま放置されているサーバーを利用していない限り、ホスティング会社に相談すれば、無料で利用できる SSL/TLS があるはずです。 またサーバーにおいて、PHP用のOpenSSL機能がインストールされ、有効になっている必要があるなど、指定のサーバー要件を満たす必要があります。

サーバー環境が整い、Joomla! の管理側のプラグイン設定で 「システム - WebAuthn パスワードレス ログイン」を有効にすると、Joomla! 標準のログイン画面は以下のような表示となり、「WEB認証」ボタンが表示されます。

サイトを利用する会員が WEB認証を利用するか否かを自身で選択することができますが、まずは通常通りユーザ名とパスワードを使ってサイトにログインをします。そして、Joomla! 標準の「プロフィール設定」にアクセスすると、以下の図のような設定画面が出てきます(注:Joomla 3以前のバージョンではこの設定画面はありません)

「新しいオーセンティケータを追加」ボタンをクリックすると、システムは使用しているデバイスに、WEB認証に利用できる機能がデバイスに備わっているかを確認しにいきます。もしデバイス側にそれが確認できない場合は、以下の表示となります。

デバイス側に WEB認証を行うための機能が備わっていれば、以下の表示となります。
(例えば、Apple MacBook の指紋認証システムや、iPhone の顔認証システム等がこれに該当します。)

OKをクリックすると、例えば、Apple MacBook の場合、以下のような表示が出ます。

MacBook の所定の場所に指を当てて認証が完了すれば、次の画面となります。

オーセンティケータ名は「+ 名前を編集」ボタンをクリックすることで、自由に変更できます。
(ここでは、Touch ID for Mac という名称に変更しています。)

以上のステップで、WEB認証機能は有効となり、次回からのログインは、「ユーザ名」を入力して「WEB認証」ボタンをクリックするだけでログインが可能となります(ユーザ名の入力は省略できません)。

ちなみに、macOS に備わっている自動入力機能を有効としている場合は、ユーザ名とパスワードが自動入力されますが、「WEB認証」ボタンをクリックした場合はパスワードが送信されない仕組みとなっています。

オーセンティケータについて

もし、利用しているデバイスに WEB認証を行うための機能が備わっていない場合は、ハードウエアを追加することでこれに対応することが可能です。Amazon 等で「FIDO2」で検索すると簡単に対応ハードウエアを見つけることができます。

但し、WebAuthn がサポートされていない(ごく一部の)ウェブブラウザでは WEB認証が機能しませんので、その場合はログインする会員に最新ブラウザを使用するよう周知してください。

また、Windows を使用している場合は、デバイスに信頼できるプラットフォームモジュール(TPM)チップが必要で、BIOSで有効にする必要があります。Windows Hello互換の生体認証センサーを持っているだけではうまくいきません。

Windows Helloのサポートは次期Joomla!バージョンで対応される見込みです。

リファレンス:WebAuthn Passwordless Login (Joomla! Documentation™)