当前位置: 首页 > 知识库问答 >
问题:

如何使用SecurityWrapperRequest获取pathInfo?

司寇灵均
2023-03-14

我正在将esapi安全筛选器应用到我的应用程序中,正在使用conf.properties文件中的属性启用/禁用此安全筛选器。当它被禁用时,它工作得很好,但当它被启用时,我无法访问我的应用程序,这里是我的代码:


    if(this.owaspSecurityEnabled) 
    {

                // this is necessary on every call
                ESAPI.httpUtilities().setCurrentHTTP(servletRequest, servletResponse);

                // doFilter by wrapping the request and the response to the 
                // ESAPI safe HttpServletRequest and  HttpServletResponse  
                request = new SecurityWrapperRequest(servletRequest);
                response = new SecurityWrapperResponse(servletResponse);
    }

我已经调试了这个问题,但无法解决它。当Request.getPathInfo()被启用时,我将其作为“”获取,当它被禁用时,我将返回路径。

如何解决这个问题,请帮助我。提前谢谢。

共有1个答案

訾渝
2023-03-14

找到了我的问题的解决方案,它是用espai.properties文件中的regrular Expression

"Validator.HTTPPath=^[a-zA-Z0-9.\\-_]*$" changed to "Validator.HTTPPath=^[a-zA-Z0-9.\\-_\/]*$"

谢谢。

 类似资料:
  • 我有一些url。我想从url指向的html中获取所有href,从所有获取的hrefs中获取所有href(递归)。关键是我想设置“递归”的深度。例如,如果深度=1,我只需要来自超文本标记语言的href。如果深度=2,我需要来自超文本标记语言的hrefs(假设为list1)和来自list1的每个href的hrefs,依此类推 以下是我使用jsoup得到的结果: 我应该如何修复递归条件以使其正确?

  • 问题内容: 我在访问SimpleXML对象的部分时遇到问题。当我整个对象时,我得到正确的输出,而当我其余对象(嵌套标签)时,我得到正确的输出,但是当我遵循docs和时 ,我得到一个空对象,尽管事实是第一个清楚地表明,存在要输出的属性。 任何人都知道我在这里做错了/如何进行这项工作? 问题答案: 您可以通过在XML节点上调用attribute()函数来获取XML元素的属性。然后,您可以var_dum

  • 问题内容: 我正在运行jstat -gc(来自OpenJDK): 如何阅读: 用过的堆 堆大小 最大堆 从此输出,就像VisualVM所示? 问题答案: 有关一般参考,请参见https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jstat.html。 当前堆大小将是所有以“ C”结尾的字段的总和-S0C,S1C,EC,OC(Metas

  • 我正在创建一个fetchBill函数。分配https://randomapi.com/api/006b08a801d82d0c9824dcfdfdfa3b3c到一个api变量。它使用浏览器的fetch函数向api发出HTTP请求。它在一个函数中使用箭头函数。然后调用fetch函数,并在将其转换为JSON后返回响应。使用另一个。然后调用第一个函数,该函数将JSON数据传递给displayCartTo

  • 问题内容: 我正在尝试使用Flask访问用户代理,但是我找不到有关它的文档,或者它没有告诉我。 问题答案: 您还可以使用包含以下属性的对象,这些属性是基于useragent字符串创建的: 平台(Windows,Linux,MacOS等) 浏览器(chrome,firefox,msie等) 版 语言 字串()

  • 问题内容: 我想用动态表创建Jasper报告。 例如: 用户1-5张桌子 用户2-3张桌子 用户3-6桌 我尝试使用列表选项,但是我的表不可见,并且页面数正在增加。 杰森数据。 是我的报表数据集,是列表数据,也是我要在表中显示的数据。 注意 如果我删除 并把 然后,使用空值创建两个表。 问题答案: 对主报表的查询将其保留为空白(并保留mainDataSet节点) 将字段定义为 该传递给 因此指向