mod_auth_kerb の KrbVerifyKDC を on にできた

Mac を Active Directory に参加させたりして悦に入っているぐらいに SSO が大好物なわけで、当然、Apache の認証は mod_auth_kerb で行っている。
だが、mod_auth_kerb を使っていてちょっと困っていたことがあった。KrbVerifyKDC というパラメータoff にしないといけなかったことだ。


KrbVerifyKDC on | off (set to on by default)
This option can be used to disable the verification tickets against local keytab to prevent KDC spoofing atacks. It should be used only for testing purposes. You have been warned.
こんなことが書いてあるものを off にするのは非常に躊躇われたんだが、これを on にしていると Basic 認証が動作しなくなる*1という問題が (少なくとも僕のところでは) あって、やむを得ず off にしていた。
ところが、今日、なんとなく mod_auth_kerb のバージョンを上げてみたら、これが直った。今までは CentOS 5 の mod_auth_kerb-5.1-3.el5.i386.rpm を使っていたのを Fedora の開発版から取ってきた mod_auth_kerb-5.3-6.src.rpm に変えただけ((ただし、REMOTE_USER の値に @REALM.EXAMPLE.COM を付けないようにするパッチを独自に当てて使っている。))だ。
長年の懸案がすっきり解消して、非常にいい気分。

*1:mod_auth_kerb は、SPNEGO 認証だけでなく Basic 認証もサポートしている。Basic 認証の場合、クライアントが送ってきたユーザ名とパスワードを使って KDC に認証を試みる。