.htaccess で特定のファイルのみにBasic認証を設定する方法
今回の記事は、以前旧ブログから転載してきた.htaccessによるBasic認証のかけ方の続編です。
.htaccess とは
Webサーバー(Apache)の挙動を、ディレクトリ単位で指定するための設定ファイルです。
「.htaccess」という名前のテキストファイルを、該当ディレクトリにFTPでアップロードしたり、TelnetやSSH等でログインして、vi 等のエディタで直接作成・編集すればOKです。
.htaccess を設置すると、そのディレクトリと、その下層に位置する全てのディレクトリに、.htaccess で指定した設定が反映されます。
Basic認証とは
特定のディレクトリやファイルに対するアクセスに対して、CGI等の動的なコンテンツを用いることなく、ユーザー名とパスワードを要求して認証を行うことのできる手法です。
Webサーバー側の機能として提供される認証方法なので、プログラミング等の知識を必要とせず、比較的簡単にユーザー認証を行なうことが出来ます。
Basic認証のかけられたディレクトリやファイルにアクセスすると、ユーザー名とパスワードを入力するためのダイアログが表示され、正しいユーザー名とパスワードを入力しないと、そのディレクトリやファイルを閲覧することができません。
ディレクトリ単位での、基本的なBasic認証のかけ方に関しては、前述の記事.htaccessによるBasic認証のかけ方を参照のこと。
今回は、さらにもう一件、先日旧ブログから転載してきた記事、特定のファイルに対するアクセス制限と組み合わせて、「特定のファイルのみに Basic認証をかける」という応用編です。
特定のファイルのみに Basic認証をかける
例えば、今ご覧になっているこのブログを管理している Movable Type をはじめとする、Web上で管理を行なうCMSの管理用CGI。
当然ながら、インターネット上で管理していますから、管理者用のログインフォームには、URLさえわかれば誰でもアクセスできるわけです。
もちろん、そこから先の画面には、ユーザー名やパスワードを入力してログインするので、誰でも見られるわけではないですが、この管理者用のプログラムだけに Basic認証をかけることができれば、よりセキュリティの強度は高まります。
その他にも、サイトの構成上の都合によって、ディレクトリ単位ではなく、ファイル単位で Basic認証をかけたい、というケースは、意外とあるかと思います。
ちょっとおさらいしておくと、まず基本的な Basic認証のかけ方は、
AuthUserFile /home/amethyst/data/pass/password.dat AuthName "Input Your Name And Password" AuthType Basic require valid-user
こんな感じです。
それぞれの項目の詳細については、.htaccessによるBasic認証のかけ方を参照してください。
そして、基本的なファイル単位でのアクセス制限の方法は、
<Files filename>
order deny,allow
deny from all
</Files>
という感じです。
こちらも詳細は、特定のファイルに対するアクセス制限を参照してください。
ここでのミソは、
- 「require」で指定したユーザーに対して Basic認証を行う
- 「<Files>~</Files>」で指定したファイルに対してアクセス制限を行なう
という2点です。
つまり、該当ディレクトリ内のファイルの中で「admin.cgi」というCGIスクリプトだけに Basic認証をかけたい、という場合、
AuthUserFile /home/amethyst/data/pass/password.dat
AuthName "Input Your Name And Password"
AuthType Basic
<Files admin.cgi>
require valid-user
</Files>
と書けば良いわけです。
- 関連するブログ記事
-
- 現在位置
- TOP > Web制作技術 > .htaccess > .htaccess で特定のファイルのみにBasic認証を設定する方法
- 前のブログ記事
- 自作のエラードキュメント表示方法 [2007年10月23日 01:22]
- 次のブログ記事
- 「アンチ・セカンドライフ」と「アンチ・セカンドライフ・ブーム」は分けて考えなきゃいけない [2007年11月18日 23:59]
コメント(23)
AuthUserFile /home/amethyst/data/pass/password.dat
AuthName "Input Your Name And Password"
AuthType Basic
<Files admin.cgi>
require valid-user
</Files>
上記の方法ではその該当ディレクトリ内全てのファイルにBASIC認証がかかってしまいます。
Web公開の設定をしていて、Basic認証に関して参考にさせて頂きました・・・!
ありがとうございました。
Hello!
Thank you for the work you have put into your nice blog. We will bookmark to your blog because it is very informational. We love the site and will come back to see your new posts.
I am genuinely thankful to the owner of this website who has shared this fantastic piece of writing at at this place.
I prefer to study this kind of material. Nicely written information in this post, the quality of content is fine and the conclusion is lovely. Things are very open and intensely clear explanation of issues
I am so pleased I found this blog, I really got you by an accident, while I was searching for something else. The story and blog you have published is very interesting as well as informatics, Thanks for sharing such type of informatics thing.
I have found so many interesting thing in your blog and I really love that. Keep up the good work!
Amazing! Its definitely great paragraph, I've got considerably clear idea about from this post.
ebvrhf http://paydayloansdpa.com/ payday loans
Hello!
xmremloe http://buyviagrarrr.com/ buy viagra
yydmnj http://cheapviagrarsa.com/ buy cheap viagra
vurzhk
tlnpff utdndwkj
eophhqra [url=http://ggtoxd.com/]trqdzw[/url]
jabqdsqg http://htaaoh.com/
Hello!
Hello!
Hello!
Hello!
Hello!
Sildenafil best price viagra 100mg relaxes muscles bring about in the walls of blood vessels and increases blood spring to particular areas of the body.
コメントする