私は動作中の Kerberos SSO セットアップを持っています。mod_jk で apache と jboss を使用しています。Apache は、次の構成で auto-login.htm ページを (kerberos によって) 保護しています。
<Location /auto-login.htm>
AuthType Kerberos
AuthName "Kerberos Active Directory Login"
KrbMethodNegotiate on
KrbMethodK5Passwd on
KrbAuthRealms KRB.SOMEDOMAIN.COM
KrbServiceName HTTP/server.somedomain.com@KRB.SOMEDOMAIN.COM
Krb5Keytab /etc/krb/krb5.keytab
KrbVerifyKDC on
KrbAuthoritative on
require valid-user
#ErrorDocument 401 /login.htm
</Location>
これは 100% 機能し、Kerberos/SSO でログインして、Java アプリケーションで remote_user 変数を読み取ることができます。
問題は、ユーザーが Kerberos/SSO 経由でログインできなかった場合に、保護されていない login.htm にリダイレクトすることです。私が念頭に置いていた解決策は、401 ErrorDocument を設定することでしたが、上記のコードで #ErrorDocument 401 のコメントを外してこれを設定すると、ユーザー資格情報を要求するために 401 を返すことは本質的に Kerberos の一部であるため、常に login.htm にリダイレクトされます。 /SSO 認証プロセス。したがって、結果として、ユーザーは常に login.htm に行き着き、Kerberos/SSO ログイン プロセスを完了することはありません。
任意のヘルプまたは代替ソリューションをいただければ幸いです。
よろしくお願いします
ピエール