エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


Basic認証をファイル単位・URL単位で設定する方法の解説

      2016/07/02

ファイル単位で Basic認証を設定する方法

 
Basic認証は、簡単に認証処理を設置できる仕組みとして、レンタルサーバなどでも広く利用されている仕組みです。
 
広く利用されている方法としては、フォルダ単位に認証を設定する方法だと思いますが、Basic認証はファイル単位で設定することも出来、特定のページ(特定の URL)に Basic認証を設定することも出来ます。
 
ファイル単位の設定方法を説明しながら、フォルダ単位の設定方法の違いも説明します。
 
ただ、Basic認証の基本的な処置については分かっていることを前提としていますので、Basic認証の細かな説明については割愛いたします。
 
 
ちなみに、難しい説明は分からないけどとりあえず設定できればいい、と言う方に対しては設定のためのツールを作成しましたので、「Basic認証の.htaccess、.htpasswd生成ツールと解説 」より作成をしてみてください。
 
 

Basic認証でフォルダ単位で設定する場合とファイル単位で設定する場合の違い

 
Basic認証を設定する .htaccessの違いを見てみましょう。
 
フォルダ単位の Basic認証の設定は以下の感じです。
.htaccess
————————————————-

————————————————-
 
 
ファイル単位での Basic認証の設定
.htaccess
————————————————-

————————————————-
 
こんな感じで 1行目の「<Files wp-login.php>」と 7行目の「</Files>」の部分が追加されています。
 
ここで設定したように通常はフォルダ単位で設定する記述を「<Files wp-login.php>」「</Files>」で囲むだけでファイル単位で Basic認証を設定することが出来ます。
そして、「<Files……」の部分に Basic認証の設定をするファイルを指定するだけです。
 
違いはそれだけで、非常に簡単です。
 
また、ファイルの指定は、.htaccessを置くフォルダと同階層にあるファイルに限られます。相対パスや絶対パスなどで違うフォルダにあるファイルを指定することは出来ません。指定しても有効になりません。
 
 
複数のファイルの指定をする場合は、1行目の「<Files wp-login.php>」の部分を下記の様に修正します。
 
————————————————-

————————————————-
 
また、「*」や正規表現を使って複数のファイルを指定することもできるようになっていますので、複数のファイルを設定する場合は試してみてください。
 
 

こんな設定の仕方もある  2014.09.10 追記

 
「<Files …> ~ </Files>」の囲み方ですが、下記のような囲み方でもファイル単位の Basic認証を設定することができます。
 
————————————————-

————————————————-
 
ただ、全体を「<Files …> ~ </Files>」で囲む方法では、下記の様にファイルごとにパスワードファイル(.htpasswd)を指定することができます。
 
.htpasswdに設定するパスワードを変えることで、ファイルごとにログインできる ID、PASSを変えることができ、よりセキュリティを高める設定をすることも可能となっています。(とは言え、こんな使い方する場面が思い浮かびませんが....ユーザごとにページを作る場合とか便利なのかも??)
 
————————————————-

————————————————-
 
これでも分かりますが、「.htpasswd」は、デフォルトで設定されるファイル名というだけであり、パスワードのファイル名は「.htpasswd」でなくても問題ないということですね。
 
 


 

「.htaccess」「.htpasswd」は見えないようにする設定

 
Basic認証を設定する「.htaccess」「.htpasswd」の 2ファイルは、非常に重要なファイルですので、その 2ファイル自体にアクセス制限を設定しておく方がいい場合もあります。
その場合は、下記の記述を上記の「.htaccess」の「<Files wp-login.php>」の前に記述を追記するといいでしょう。
 
————————————————-

————————————————-
 
ここで設定する「<Files…….」の設定部分が、先に説明したファイルに Basic認証を設定する部分と同じくファイル単位のアクセスの制限を設定する、という方法です。
記述の仕方が Basic認証と同じことが同じであることが分かるでしょう。
 
 
ちなみに、重要なファイルナのため「.htaccess」「.htpasswd」の 2ファイルにはアクセス制限をした方がいいと書きましたが、これらのファイルは非常に重要すぎるため、サーバ全体でアクセス制限をしている場合がほとんどです。
そのため、事前にこれらのファイルにアクセスをしてみて、「403 Forbidden」のエラーメッセージが出てくるようであれば、すでにアクセス制限の設定がされている状態ですので、わざわざ追加で設定をしない方がいいでしょう。
もしかするとせっかくアクセス制限がされているのに、間違って設定をしてしまうことで、アクセス制限が有効に機能しなくなる可能性もありますので。
 
 

この記事を書いた経緯

 
この記事は、もともと WordPressの管理画面のログイン URLに Basic認証を設定したい、と思ったところから始まっていまして、それに付随する形で、WordPressの管理画面のログインに絡むセキュリティの記事として下記の 3記事を書きました。
 「管理者のアカウント adminを変更する
 「WordPressの管理画面ログインURLの変更方法解説
 「WordPressの管理画面ログインURLファイルにBasic認証を設定する方法解説
 
そして、それに付随する特定のファイルに Basic認証の設定する、という部分だけを抜き出して記事にしたものがこの記事になりますので、Basic認証を設定する対象のファイルが「wp-login.php」という WordPressの管理画面のログインファイルになっているわけです。
 
Basic認証の設定は WordPressに限ったものではありませんが、WordPressの管理画面のログイン画面周りのセキュリティを高めたいという方は上記の記事を参考にしてみてください。
 
 

Basic認証関連の記事まとめ

 
Basic認証関連の記事もいろいろと書いていますので、あわせて参考にしてみてください。
 
 ロリポップで baserCMSを利用する際の Basic認証の設置には注意しましょう
 WordPressのログイン画面 URLを変更する 管理画面に Basic認証を設定する
 WordPressの管理画面ログインURLの変更方法解説
 WordPressの管理画面ログインURLファイルにBasic認証を設定する方法解説
 Basic認証をファイル単位・URL単位で設定する方法の解説
 ロリポップでWordPress+Basic認証で不具合発生!回避方法解説
 Basic認証の.htaccess、.htpasswd生成ツールと解説
 WP Basic AuthなどWordPressにBasic認証を設定するプラグインのまとめ
 WordPressのカテゴリ単位・フォルダ単位でBasic認証を設定する方法
 WordPressで特定のURL、ページ、ファイル単位でBasic認証を設定する方法

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Advanced Custom Fieldsの関数の全部の使い方を調べてみた

Advanced Custom Fieldsに用意されている関数を全て調べてみた。よく使うget_field、the_field以外にも多くの関数が用意されていて、フォームを作成することも可能。

Category OrderでWordPressのカテゴリを並替えよう

Category Orderは基本機能では並び替えができないカテゴリを並び替える機能を提供するプラグインです。ドラッグ&ドロップで並び替えができる簡単インターフェイスです。

Custom Post Type UIでカスタムタクソノミーを設定・バージョン1.4対応解説

カスタムタクソノミーをプラグインCustom Post Type UIを使って設定する方法の解説。バージョンアップにより設定する項目も増え続け、より柔軟な設定が可能に。

ショートコード+ウィジェットでサイドバーに人気記事を表示させる方法

WordPressのサイドナビゲーションに人気記事を編集する方法です。プラグインを使わずウィジェットにショートコードで任意のPostIDを指定することで編集する方法です。

BackWPupでバックアップ・全体バックアップ具体的設定例

BackWPupその7。ファイル、DB全体をバックアップする具体的事例での説明です。

WP Multibyte PatchでWordPressの管理画面のイタリック体を解消

管理画面の一部の文字がイタリック(斜体)になっているのはプラグイン「WP Multibyte Patch」が有効になっていないためです。日本語を使うには必ず有効化しましょう。

BackWPupでバックアップ・Jobの設定・保存先の情報設定

BackWPupその3。Jobのバックアップファイルの保存先の設定についての解説。

WordPressのパーマリンク設定の考え方

基本設定の一つであるパーマリンクの設定について解説。パーマリンクはURLを決定づける重要な項目ですので、設定の意味を理解して希望するURLになるよう設定しましょう。

WordPressのカテゴリの編集の解説

WordPressのカテゴリって何?というところから説明し、カテゴリを登録、編集する方法を解説します。また、カテゴリの順番を自由に変える方法も解説します。

WordPressの記事編集で文字が自動変換される要注意な文字列

記事を編集する際、入力した文字とは違う表示のされ方をする文字、アポストロフィ、ダブルクォート、円マーク、三点リーダ(…)など、その解説と対応方法です。