Apache HTTP サーバ バージョン 2.0
説明: | テキストファイルを用いたユーザ認証 |
---|---|
ステータス: | Base |
モジュール識別子: | auth_module |
ソースファイル: | mod_auth.c |
互換性: | 2.1 より前のバージョンでのみ使用可能 |
プレインテキストのパスワードファイルとグループファイルを検査して
ユーザを探すことで、HTTP 基本認証でアクセス制限できるようにします。
似たような機能で、もっと大きなスケーラビリティを持ったものは、
mod_auth_dbm
で提供されています。
また、HTTP ダイジェスト認証は mod_auth_digest
で提供されています。
説明: | 認証と承認プロセスを、 より低いレベルのモジュールに移行させるかどうかを設定する |
---|---|
構文: | AuthAuthoritative On|Off |
デフォルト: | AuthAuthoritative On |
コンテキスト: | ディレクトリ, .htaccess |
上書き: | AuthConfig |
ステータス: | Base |
モジュール: | mod_auth |
AuthAuthoritative
ディレクティブで明示的に Off
に設定すると、
与えられた認証ユーザ ID に対してユーザ ID がない
またはルールがない場合に、
認証と承認の両方のプロセスが、
より低いレベルのモジュール (Configuration
と
modules.c
ファイルで定義) に移行するようにできます。
ユーザ ID がある、かつまたは、ルールが指定されている場合は、
通常のパスワードとアクセスチェックが適用されて、
認証に失敗すると "Authentication Required" 応答が返されます。
ですから、二つ以上のモジュールのデータベースで同一の
ユーザ ID が現われたり、
または、正しい Require
ディレクティブが二つ以上のモジュールで現われたりした場合は、
一つ目のモジュールが認定を行って、AuthAuthoritative
の設定に関わらず、
アクセスは移行しません。
一般的な使用法は、mod_auth_dbm
,
mod_auth_msql
, mod_auth_anon
といったデータベースモジュールの一つと組み合わせることです。
これらのモジュールは多くのユーザ資格検査を提供してくれます。
しかし、少数の (管理者関連の) アクセスは
AuthUserFile
で良く保護された、より低レベルに移行するようにします。
デフォルトでは、制御は移行しません。そして、未知のユーザ ID や ルールがあっても "Authentication Required" 応答が返されます。 ですから、このディレクティブ設定しないことでシステムの安全を維持できて、また、 NCSA 準拠の挙動を強制できます。
ユーザが自分自身で作成した
.htaccess ファイルで認証できるようにすることの影響を
考慮に入れておいてください。そして、
それが本当に希望の挙動であるかどうかを検討してください。
一般的に言って、mSQL といったデータベースのセキュリティ保護よりも、
単純に一つのファイル .htpasswd のセキュリティを保護する方が容易です。
AuthUserFile
と
AuthGroupFile
は、
ウェブサーバのドキュメントツリーの外側に保管する
ようにしてください。保護しようとしているディレクトリ以下には、
置かないで下さい。そうしないと
AuthUserFile
と
AuthGroupFile
はダウンロードできてしまいます。
説明: | 認証に使用するユーザグループの一覧が格納されている、 テキストファイルの名前を設定する |
---|---|
構文: | AuthGroupFile file-path |
コンテキスト: | ディレクトリ, .htaccess |
上書き: | AuthConfig |
ステータス: | Base |
モジュール: | mod_auth |
AuthGroupFile
ディレクティブは、
認証に使用するユーザグループの一覧が格納されている、
テキストファイルの名前を設定します。
file-path はグループファイルへのパスです。
もし絶対パスでなければ、
ServerRoot
からの相対パスとして扱われます。
グループファイル各行は、グループ名、コロン、そして スペース区切りでそのメンバーのユーザ名を記述します。
mygroup: bob joe anne
大きなファイルを探索するのは、非常に効率が悪いという点に
注意してください。そのような場合は、
AuthDBMGroupFile
の方がずっと良い性能を発揮します。
AuthGroupFile
は、
ウェブサーバのドキュメントツリーの外側に
保管するようにしてください。
保護しようとしているディレクトリ以下には、置かないで下さい。
そうしないと AuthGroupFile
は
ダウンロードできてしまいます。
説明: | 認証に使用するユーザとパスワードの一覧が格納されている、 テキストファイルの名前を設定する |
---|---|
構文: | AuthUserFile file-path |
コンテキスト: | ディレクトリ, .htaccess |
上書き: | AuthConfig |
ステータス: | Base |
モジュール: | mod_auth |
AuthUserFile
ディレクティブは、
ユーザ認証のためのユーザとパスワードの一覧を格納した
テキストファイルの名前を設定します。file-path
はユーザファイルへのパスです。
もし絶対パスでなければ
(つまり スラッシュで始まらないパスであれば)
、ServerRoot
からの相対パスとして扱われます。
ユーザファイルの各行には、ユーザ名、コロン、
暗号化したパスワードを記述します。
同一ユーザ ID が複数回登録された時は、mod_auth
は
パスワードの検証には最初の登録を使用します。
バイナリ配布の一部としてインストールされるか、
あるいは src/support
にある
htpasswd
ユーティリティで、このパスワードファイルをメインテナンスします。
詳細は man ページをご覧頂くとして、
簡単には:
初期 ID username
で、Filename
というパスワードファイルを生成します。
次のコマンドを発行するとパスワードが要求されます:
htpasswd -c Filename username
パスワードファイル Filename
に、username2
を追加したり修正したりします:
htpasswd Filename username2
(訳注: 非常に多くのユーザを登録すると大きなファイルになりますが)
大きなテキストファイルを検索するのは非常に効率が悪い
ということに注意してください。そのような必要のある時は、
AuthDBMUserFile
を代わりに使ってください。
AuthUserFile
は、ウェブサーバのドキュメントツリーの外側に保管するようにしてください。
保護しようとしているディレクトリ以下には、置かないで下さい。
そうしないと AuthUserFile
は
ダウンロードできてしまいます。