5

今日、私は次の問題に行き詰まりました。1.基本認証用にApacheを構成しました(有効なユーザーが必要です)。働いた。2. さらに、あるパス (私の場合は /idp) のリクエストを tomcat サーブレット (shibboleth IDP) に転送するように apache を構成しました。

その結果、shibboleth IdP (ECP プロファイル) から、「REMOTE_USER」が設定されていないことがわかりました (httpRequest.getRemoteUser() メソッドを使用してこれをチェックし、null を返しました)。

SetEnv や RewriteRule などの多くのことを試しましたが、成功しませんでした。

解決策は非常に単純ですが、見つけるのはかなり難しいです...そのため、他の人がその種の問題を解決するのを助けるために、ここに投稿することにしました.

よろしくステファン

4

1 に答える 1

12

わかりました、これが私の解決策です。Apache2によって行われた認証を信頼/受け入れるようにTomcatを構成する必要があることがわかりました...

これを行うには、Tomcat の server.xml (/etc/tomcat6/server.xml などにある必要があります) を編集し、AJP 接続用の -Tag を追加tomcatAuthentication="false"する必要があります。<Connector>コネクタ タグは次のようになります。

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"
   tomcatAuthentication="false" /> 

あとは tomcat を再起動するだけです...完了です。

お役に立てれば!;-)

ステファン

説明:

"tomcatAuthentication" -- "true に設定すると、Tomcat で認証が行われます。それ以外の場合、認証されたプリンシパルはネイティブ Web サーバーから伝達され、Tomcat での承認に使用されます。デフォルト値は true です。"

引用元: http://tomcat.apache.org/tomcat-5.5-doc/config/ajp.html

于 2012-12-06T17:24:00.890 に答える