WordPressにおいて、特定のユーザーにのみアクセスを許可する方法が必要な場合、Basic認証を利用するかと思いますが、.htaccessや.htpasswdを編集する必要があったりして、ちょっと面倒ですよね。
今回は、非ログインユーザーに対して簡単にBasic認証を設定できる「Ayaoriko Basic Auth」プラグインを紹介します。
このプラグインを使用することで、IDとパスワードを管理画面から簡単に変更でき、認証失敗時のメッセージもカスタマイズできます。
- 特定の人にウェブサイトの公開したいけれども、管理者がログインするときもBasic認証がかかってしまい、毎回ログインするのが煩わしい。
- パスワードを渡されたけど、共有されたアカウント権限がわからないので、万が一の事故が起きそうで心配になる。
- 制作中なので非公開にしているけれども、不具合があるので他の人に見てもらう必要がある。
- 会員サイトを作りたいけど、WordPressのパスワード保護機能だと毎回パスワードを指定するのが面倒。ページを問わず、固定のパスワードを指定したい。
機能概要
「Ayaoriko Basic Auth」プラグインは、非ログインユーザーに対してBasic認証を設定するための機能を提供します。
ログイン済みのユーザーにはBasic認証が自動的にスキップされます。
Basic認証の一番の厄介なのは、管理者がログインするとき。Basic認証を解除してからWordPressのログイン情報を変更するため、サイト運用が億劫になってしまいます。
このプラグインは、ログイン済みのユーザーにはBasic認証が自動的にスキップされるので、二重にログインする必要はありません。
管理画面にてユーザー名とパスワードの設定ができます。
通常のBasic認証とは違い、管理画面にてユーザー名とパスワードの設定ができるので、Basic認証のために.htpasswdを準備する必要はありません。
また、認証に失敗した時に表示されるメッセージも自由に変更可能です。こちらはHTMLの利用が可能なので、CSSを当てれば、オリジナルのデザインにすることが可能です。
【有料版】複数人数のユーザーを登録することができます。
有料版では、複数のBasic認証のユーザー名・パスワードを登録することができます。
削除するときもワンクリックなので、わざわざファイルにアクセスする必要はありません。
【有料版】指定された投稿ページにBasic認証をかける
Basic認証を全ページではなく、指定された投稿ページにBasic認証をかけたい場合がありますよね。
有料版では、指定された投稿ページにBasic認証をかけることができます。
まずは、管理画面で「Basic認証の範囲」を「指定された投稿ページにBasic認証をかける」を選択して、指定したい投稿タイプにチェックボックスを入れてください。
そして、選択された投稿タイプを確認すると、「Basic認証を適用する」のチェックボックスが設置されていることが確認できます。
ここにチェックを入れることで、指定された投稿ページ全体にBasic認証をかけることができます。
WordPressにはパスワード保護機能がありますが、この機能を利用することで、パスワードを毎回指定する手間がなくなります。
プラグインファイルのダウンロード、インストール方法
1. プラグインファイルのダウンロード
プラグインのファイルはstoresで配布しています。こちらからダウンロードをお願いします。
2. プラグインファイルのインストール方法
WordPressの管理画面から「プラグイン > 新規追加」で「Ayaoriko Basic Auth」をインストールし、有効化にしてください。
「プラグインのアップロード」というボタンを押すと、ZIP形式のファイルをアップロードできるエリアが表示されます。
3. 設定変更
プラグインが有効化されると、WordPressの「ツール」メニューに「Basic認証設定」ページが表示されます。そこからユーザー名とパスワード、認証失敗時のメッセージを指定して保存することで、非ログインユーザー向けにBasic認証をかけることができます。
注意点
メディアライブラリ内の画像やファイルには、Basic認証が適用されません。
uploadsフォルダ内のメディアファイルにはBasic認証が適用されません。そのため、個人情報を扱うような、プライベートファイルや資料を扱っている人は注意が必要です。
メディアファイルへのアクセスを制限したい場合は、サーバー側で直リンクを禁止する設定を行ってください。具体的なサーバー設定については、サーバー管理者やホスティングプロバイダーにお問い合わせください。
2. ログイン済みユーザーにはBasic認証が適用されません
このプラグインは、WordPressにログインしているユーザーにはBasic認証を適用しません。管理者や登録済みのユーザーには通常のWordPressログインが優先されます。
もし、ログイン済みのユーザーにもBasic認証を適用したい場合は、プラグインのカスタマイズが必要です。
3. wp-adminやwp-login.phpには適用されない
管理画面(wp-admin)やログインページ(wp-login.php)へのアクセスにはBasic認証は適用されません。
管理画面にもBasic認証を追加したい場合は、サーバー側の設定が必要です。
4. プラグインの無効化でBasic認証が解除される
Ayaoriko Basic Authを無効化すると、Basic認証が解除されます。そのため、一時的にプラグインを無効化する際は、Basic認証が必要なページに対するアクセス制限が解除されることに注意が必要です。
よくある質問
Q: なぜメディアライブラリ内のファイルにBasic認証が適用されないのですか?
uploadsフォルダ内のメディアファイルは、WordPressの仕組み上、通常のページとは異なる形で提供されています。そのため、Ayaoriko Basic Authではメディアファイルに直接Basic認証をかけることはできません。
メディアファイルの保護が必要な場合は、サーバー設定で直リンクを禁止することをお勧めします。
Q: 管理者権限以外の権限でログインしたときはどうなりますか?
Basic認証が外れた状態でサイトを閲覧できます。しかし、ユーザー・パスワードは管理者権限でしか設定変更はできません。
Q: プラグインを有効にした後、サイトが動かなくなりました。どうすればよいですか?
万が一サイトに問題が発生した場合、FTPを利用してWordPressのプラグインフォルダにアクセスし、/wp-content/plugins/の中にある「Ayaoriko Basic Auth」フォルダを削除またはリネームすることで、プラグインを無効化できます。
Q. ユーザー名とパスワード、認証失敗時のメッセージが設定されていない場合はどうなりますか?
ユーザー名、またはパスワードのどちらも指定されている時のみ、Basic認証がかかる仕組みです。認証失敗時のメッセージが設定されていない場合、デフォルトでは「ログインに失敗しました」の表記が表示されます。
Q:(有料版)アーカイブページをBasic認証の対象にする機能はありますか?
今のところは、機能として実装していません。要望があればアップデートにて実装します。
Q: (有料版)ページごとに異なるパスワードを設定する機能はありますか?
機能を実装しておりません。WordPressのパスワード保護機能を利用してください。(今後も実装する予定もありません。)
まとめ
「Ayaoriko Basic Auth」プラグインは、非ログインユーザーに対してシンプルかつ効果的なBasic認証を適用できる便利なプラグインです。
設定も直感的で、IDやパスワードの変更、認証失敗時のメッセージカスタマイズが簡単に行えます。特に、開発中のサイトや、特定のユーザーにのみコンテンツを提供する際に役立ちます。
ただし、通常のページや投稿にはBasic認証が適用されますが、メディアライブラリ(uploadsフォルダ)のコンテンツには認証がかからないため、ファイルへの直リンクを防ぎたい場合は、サーバー側での追加設定が必要です。
「Ayaoriko Basic Auth」で簡単にサイトのセキュリティを強化し、管理者として安心して運営できる環境を手に入れてください。