BASIC認証とorder deny,allowをあわせたアクセス制御

|

いつも忘れるので書いておこう。
ある場所からは認証なしでページ閲覧できて、
他の場所からは認証が必要になるというパターンの.htaccessの書き方。
もちろん、httpd.confなどに直接書いてもOKです。

【条件】
mod_access モジュールが有効になっていること
mod_auth モジュールが有効になっていること

○httpd.conf
AllowOverride Limit AuthConfig 

○.htaccess

# "Limit"ルール
#
# この書き方に違和感を覚える人もいるかもしれませんが、
# (特にルーターの設定をする人)
# ルーターのACLは上から評価していって、
# 適合するものがあったらその時点で評価は終了しますが、
# Apacheのこれは、Orderの順番で必ず両方を評価していき、
# 下位のACLが上位のACLを上書きしていきます。
# つまり、172.16.0.1の場合、"Deny from all"で拒絶対象となりますが
# 次の"Allow from 172.16."で救済されるわけです。
# 
Order Deny,Allow
Deny from all
Allow from 10.0.0.32/27 172.16. 192.168.0.1 .example.local

# # "AuthConfig"ルール # AuthUserFile /var/www/htpasswd AuthName "Secret Area" AuthType Basic require valid-user

# # Sastisfy any だと"Limit"と"AuthConfig"どちらかにパスすればOKです。 # これを Satisfy all とすると、 # "Limit"と"AuthConfig"両方の条件を満たさないとOKとなりません。 Satisfy any

このブログ記事について

このページは、くわぞうが2006年5月14日 11:46に書いたブログ記事です。

ひとつ前のブログ記事は「GetifをつかってMIBからOIDを調べる」です。

次のブログ記事は「グループポリシー(セキュリティポリシー)を手動で適用させる」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.1