Shibbolethベースの認証を実装するGWTアプリケーションを作成しようとしています。最終的には "プロダクションモード"で提供する必要があるため、Tomcat7を使用してアプリケーションを実行することを選択しましたが、クライアントはApache2に接続し、Apache2をAJP経由で(mod_proxy_ajp
を使用して)Tomcatに転送します。GWTサーブレットからAJPリクエストデータにアクセスする
アプリケーションを処理する基本的な作業は機能します。しかし、私はShibbolethによって設定された環境変数に何らかの形でアクセスする必要があります。 the Shibboleth documentationによれば、環境変数は接頭辞がAJP_
(接頭辞が削除されている)の場合Tomcatに転送されるので、Shibbolethを設定した環境変数にその接頭辞を追加するように設定しますすべての環境変数を出力するPHPスクリプトを使用して確認しています)。 mod_proxy_ajp
documentationがそれをフレーズとして - - AJPリクエストがを属性として
トラブルは、彼らはTomcatを達するのではなく提供されることになっている場合、環境変数はもう環境変数として利用できないことです。
どうやら、属性のこれらの種類は、サーブレット内から
getThreadLocalRequest().getSession().getAttribute("uid")
ようなものを使用してアクセスすることになっています。私のPHPスクリプトではAJP_uid
という環境変数がリストされていますが、上記の呼び出しではnull
が返されますが、環境変数AJP_uid
と同じ値が返されるはずです。
接頭辞がなんらかの理由で削除されなかったが、運がない場合は、uid
ではなく、上記の呼び出しをAJP_uid
で試してみました。
私は間違っていますか?
リクエストでセッションではなくgetAttributeを直接呼び出そうとしましたか? –
@ThomasBroyer私は今持っていなかったし、それは完璧に働いた。本当にありがとう! あなたのクレジットを奪い取ることなく、この質問に答えてマークする方法を教えてください。 – koala
ああ、私は本当に気にしない、ちょうどあなた自身の答えを受け入れる。 –