Apacheウェブサーバを使用して、ちょっと複雑だったり高機能な認証を行おうとすると、とたんに面倒なことになります。もちろん、CGIやPHPのプログラムを使用して、特定の条件を満たすときにだけ要求されたコンテントを吐き出すようにすることはできます。しかしこの方法では、Apacheウェブサーバの持つ重要な機能がいくつも使用できません。これら使用できない機能には、ファイルの部分取り出し(HTTP/1.1)、言語のネゴシエーション、HTTP出力ストリームの圧縮などが含まれます。それだけでなく、MIMEコンテントタイプの付与さえも、そのCGIやPHPのプログラムで行わなくてはなりません。
このApacheモジュールは非常に小さくてシンプルではありますが、これらの問題を解決します。また、認証の仕組みが非常に簡素化されます。
このApacheモジュールは、Apacheの機能である基本認証の認証と承認のロジックの部分を、外部のプログラムで処理できるようにします。この外部プログラムとしては、CGIやPHPなど、Apacheに動的なコンテント生成を可能にするものであれば、なんでも使用することができます。
このApacheモジュールは、Apache付属の標準のモジュールと同じように記述されています。このため、DSOモジュール(動的ロード)としても、コンパイル時の組み込み(静的リンク)としても利用することができるはずです。今回のリリースでは、DSOモジュールとして利用するためのMakefileを含めました。通常のUnix系OSでは、以下のように操作するだけで使用できます。
% make % su # make install
このバージョンでは、解説文書やサンプルが不足しています。申し訳ありません。このモジュールによって提供されるApache設定ディレクティブについては、「mod_auth_script.c」の一番最初の大きなコメントを参照してください(ただし英語)。
このモジュールがお役に立てれば幸いです。コメント、バグレポート、サジェスチョンなどをお待ちしています。また、実際のウェブアプリケーションで便利に機能した実例を教えていただければ、とても嬉しく思います。
金本 茂
株式会社アクセンス・テクノロジー
sgk at ppona.com
("at"を"@"に置き換えてください)
協力してくださる方を募集しています。解説文書の執筆(日本語・英語)、サンプルコードの作成など、お手伝いいただけるとうれしいです。メールをお待ちしています。