如何使用 Apache TomEE 读取网络服务器环境变量?

How to read webserver environment variables using Apache TomEE?

我计划在我的应用程序中使用 Shibboleth SSO 服务提供商,这在 here 中有说明。提到,登录成功后,用户信息可以

"read from the webserver environment, e.g. with $_SERVER['mail'] in PHP".

如何使用 TomEE 在 Java 中完成此操作?

我将 Apache Web 服务器与 Tomcat 结合使用,以便将 servlet 请求转发到 Tomcat。甚至可以访问 Apache 环境吗?

根据mod_proxy_ajp的documentation

Environment variables whose names have the prefix AJP_ are forwarded to the origin server as AJP request attributes (with the AJP_ prefix removed from the name of the key).

因此,假设您将 Shibboleth SP 配置为将 SAML 属性解码为网络服务器环境变量 "mail",在您的应用程序代码中,您可以使用

获取该值
request.getAttribute("AJP_mail")