[PHP-users 20424]Re: phpによる基本認証について

T.Suzuki t_suzuki @ kenwood-eng.co.jp
2004年 2月 18日 (水) 14:12:03 JST


初めまして,本日より参加の 鈴木@KEGと申します.

山口さん wrote:
> ちょっと前に行われた、IEのセキュリティパッチの影響で、
> 基本認証がうまく出来なくなってしまい困っております。
同じ状況で,対応作業を行った事があります.
参考になればと思い,その時採用した方法を紹介します.

> <環境>
> PHP4.1.2 + Postgres7.1.3 + 1.3.27
> 
> 1.ウェブフォームからユーザーID、パスワードを入力してもらう
> 2.データベース内のユーザー情報を基に認証を行う
> 3.認証OKの場合は、特定ディレクトリへリダイレクト
>   ⇒ ユーザID毎にディレクトリは違う
>   ⇒ NGの場合には画面上にエラーメッセージ表示
> 4.各ディレクトリは、.htaccessにて基本認証を行っている。

Apache のモジュールに,mod_auth_cookieというのがあります.
http://raburton.lunarpages.com/apache/mod_auth_cookie/

Basic認証をCookieを使用して行うModuleですが,
これを使用しただけです.

--- インストール方法 ---
Apache 1.3の方にはMakefileがありませんが,Apache 2.0から取得出来る
Makefileを使用して問題ありませんでした.
後はドキュメントを参考にModuleを有効にして下さい.

> http://username:userpass@xxxxx.co.jp/xxxxx/index.html
URL埋め込みでBasic認証を行っているページへリダイレクトする前で,
次のようなCookieを発行します.

<?php
  setcookie ("Login", "username:userpass", -1, "/", ".xxxxx.co.jp");
?>

.htaccess に,mod_auth_cookieに必要な設定を加えます.
#-----
AuthType Basic
AuthName "Please enter username and password"
AuthUserFile /hoge/httpd/.htpasswd
AuthGroupFile /dev/null
<Limit GET POST>
require valid-user
</Limit> 
#-----

以上です.
過去ログを参照して反応したので,スレッドが繋がらない&遅い
かもしれませんが.参考になれば幸いです.
 -----------------------------------------
      鈴木 徹 (SUZUKI Toru)
      KENWOOD ENGINEERING CORPORATION
      E-mail:t_suzuki @ kenwood-eng.co.jp
 -----------------------------------------


PHP-users メーリングリストの案内