如何在JBoss EAP 6.1中设置http头

如何在JBoss EAP 6.1中设置http头,jboss,http-headers,jboss6.x,x-frame-options,strict-transport-security,Jboss,Http Headers,Jboss6.x,X Frame Options,Strict Transport Security,我想在JBoss6.1.0中为x-frame选项和严格的传输安全设置http头 我一直在寻找合适的配置文件来添加这些头文件,我能够看到jboss 6.4、jboss 7的一些过程,但是我没有得到任何关于jboss 6.1的信息 这是在JBoss7中,我需要为JBoss6.1做同样的事情 在JBoss6.1中,我已经尝试了很多方法来识别正确的确认更改,但是我无能为力 请告诉我是否有人知道在JBoss6.1中这样做 提前感谢。如果您使用ApacheHttpd作为JBoss的代理,那么使用Hea

我想在JBoss6.1.0中为x-frame选项和严格的传输安全设置http头

我一直在寻找合适的配置文件来添加这些头文件,我能够看到jboss 6.4、jboss 7的一些过程,但是我没有得到任何关于jboss 6.1的信息

这是在JBoss7中,我需要为JBoss6.1做同样的事情

在JBoss6.1中,我已经尝试了很多方法来识别正确的确认更改,但是我无能为力

请告诉我是否有人知道在JBoss6.1中这样做


提前感谢。

如果您使用ApacheHttpd作为JBoss的代理,那么使用Header指令添加所有这些头非常容易。否则,您可以在自定义筛选器中设置所有这些头,并将其放置在相应web应用程序的lib文件夹中。

如果您使用Apache HTTPD作为JBoss的代理,则使用Header指令添加所有这些头非常容易。否则,您可以在自定义筛选器中设置所有这些标题,并将其放置在相应web应用程序的lib文件夹中。

此答案显示在中。因为它需要RedHat认证,我在这里发布了相同的答案

解决方案:

servlet过滤器可用于向响应添加额外的HTTP头。下面是一个使用Servlet 3.0
@WebFilter
的示例过滤器。使用注释无需配置
web.xml
即可启用过滤器

/*
 *  This is a sample servlet filter to set "X-Frame-Options" http header to 
 *  http response. 
 */

package com.redhat.jboss.support;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.annotation.WebFilter;

@WebFilter("/*")
public class AddCustomHeaderFilter implements Filter {

    /**
     * Take this filter out of service.
     */
    public void destroy() {
    }

    /**
     * @param request The servlet request we are processing
     * @param result The servlet response we are creating
     * @param chain The filter chain we are processing
     *
     * @exception IOException if an input/output error occurs
     * @exception ServletException if a servlet error occurs
     */
    public void doFilter(ServletRequest request, ServletResponse response,
                         FilterChain chain) throws IOException, ServletException {

      ((HttpServletResponse)response).setHeader("X-Frame-Options", "SAMEORIGIN"); 
      chain.doFilter(request, response);

    }


    /**
     * Place this filter into service.
     *
     * @param filterConfig The filter configuration object
     */
    public void init(FilterConfig filterConfig) throws ServletException {
    }

}
  • 编译
    AddCustomHeaderFilter.java
    后,将生成一个包 使用
    AddCustomHeaderFilter.class
    创建命名的
    com.redhat.jboss.support
  • 使用以下命令为
    AddCustomHeaderFilter.class
    创建一个jar 指挥部。它将生成一个jar
    AddCustomHeaderFilter.jar

    jar-cvf AddCustomHeaderFilter.jar com

  • 将此jar放入Web应用程序的
    Web-INF/lib
    文件夹中。它将在web应用程序中启用Servlet过滤器

注意:
AddCustomHeaderFilter.java
类中给出的示例适用于“SAMEORIGIN”。X-Frame-Options有以下可能的值:

  • 拒绝:页面不能显示在框架中,无论 网站正在尝试这样做
  • SAMEORIGIN:页面只能在同一页面上的一个框架中显示 原点与页面本身相同
  • 这个答案在本书中有所体现。因为它需要RedHat认证,我在这里发布了相同的答案

    解决方案:

    servlet过滤器可用于向响应添加额外的HTTP头。下面是一个使用Servlet 3.0
    @WebFilter
    的示例过滤器。使用注释无需配置
    web.xml
    即可启用过滤器

    /*
     *  This is a sample servlet filter to set "X-Frame-Options" http header to 
     *  http response. 
     */
    
    package com.redhat.jboss.support;
    
    import java.io.IOException;
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.annotation.WebFilter;
    
    @WebFilter("/*")
    public class AddCustomHeaderFilter implements Filter {
    
        /**
         * Take this filter out of service.
         */
        public void destroy() {
        }
    
        /**
         * @param request The servlet request we are processing
         * @param result The servlet response we are creating
         * @param chain The filter chain we are processing
         *
         * @exception IOException if an input/output error occurs
         * @exception ServletException if a servlet error occurs
         */
        public void doFilter(ServletRequest request, ServletResponse response,
                             FilterChain chain) throws IOException, ServletException {
    
          ((HttpServletResponse)response).setHeader("X-Frame-Options", "SAMEORIGIN"); 
          chain.doFilter(request, response);
    
        }
    
    
        /**
         * Place this filter into service.
         *
         * @param filterConfig The filter configuration object
         */
        public void init(FilterConfig filterConfig) throws ServletException {
        }
    
    }
    
    • 编译
      AddCustomHeaderFilter.java
      后,将生成一个包 使用
      AddCustomHeaderFilter.class
      创建命名的
      com.redhat.jboss.support
    • 使用以下命令为
      AddCustomHeaderFilter.class
      创建一个jar 指挥部。它将生成一个jar
      AddCustomHeaderFilter.jar

      jar-cvf AddCustomHeaderFilter.jar com

    • 将此jar放入Web应用程序的
      Web-INF/lib
      文件夹中。它将在web应用程序中启用Servlet过滤器

    注意:
    AddCustomHeaderFilter.java
    类中给出的示例适用于“SAMEORIGIN”。X-Frame-Options有以下可能的值:

  • 拒绝:页面不能显示在框架中,无论 网站正在尝试这样做
  • SAMEORIGIN:页面只能在同一页面上的一个框架中显示 原点与页面本身相同

  • 我曾尝试在自定义过滤器中添加这些标题,将其放置在lib中并映射到XML中,但仍然看不到添加的任何标题。我只收到如下响应:HTTP/1.1 404 Not Found正在为有效的上下文根添加头,我将jboas的上下文根设置为“/jbossadmin”。现在,我想为其他URL添加这些头,并且只为有效的上下文根添加头,我将jboas的上下文根设置为“/jbossadmin”。现在我还想为其他URL添加这些标题。例如,如果我使用out/jboassadmin/i执行curl-i,将得到一个404notfound,这里我需要添加标题。HTTP/1.1 404找不到服务器:apachecoyote/1.1 X-Powered-By:Servlet/3.0;JBossAS-6内容长度:0日期:Wed,2019年7月31日06:49:06 GMT是否仍要为这些其他URL添加标题?我已尝试在自定义筛选器中添加这些标题,将其放置在lib中,并将其映射到XML中,但仍然看不到添加的任何标题。我只收到如下响应:HTTP/1.1 404 Not Found正在为有效的上下文根添加头,我将jboas的上下文根设置为“/jbossadmin”。现在,我想为其他URL添加这些头,并且只为有效的上下文根添加头,我将jboas的上下文根设置为“/jbossadmin”。现在我还想为其他URL添加这些标题。例如,如果我使用out/jboassadmin/i执行curl-i,将得到一个404notfound,这里我需要添加标题。HTTP/1.1 404找不到服务器:apachecoyote/1.1 X-Powered-By:Servlet/3.0;JBossAS-6内容长度:0日期:Wed,2019年7月31日06:49:06 GMT是否还有其他URL的标题?谢谢@Abhijeet,我也在尝试。仅为有效的上下文根添加标题,我将jboas的上下文根设置为“/jbossadmin”。现在我还想为其他URL添加这些标题。例如,如果我使用out/jboassadmin/i执行curl-i,将得到一个404notfound,这里我需要添加标题。HTTP/1.1 404找不到服务器: