如何使用IP过滤器保护Orbeon Form Runner?

时间:2016-05-31 23:44:55

标签: java orbeon

documentation here描述了如何使用IP过滤器保护Form Runner。我按照以下说明操作:

  1. 将urlrewrite-3.2.0.jar放入Orbeon Forms WEB-INF / lib文件夹
  2. 在Orbeon Forms WEB-INF / web.xml
  3. 中配置过滤器
        <filter>
            <filter-name>UrlRewriteFilter</filter-name>
            <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>UrlRewriteFilter</filter-name>
            <url-pattern>/*</url-pattern>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
        </filter-mapping>
    
    1. urlrewrite.xml配置放在Orbeon WEB-INF文件夹
    2.     <?xml version="1.0" encoding="utf-8"?>
          <urlrewrite>
              <rule>
                  <condition type="remote-addr" operator="notequal">0:0:0:0:0:0:0:1%0</condition>
                  <condition type="remote-addr" operator="notequal">127.0.0.1</condition>
                  <set type="status">403</set>
                  <to type="temporary-redirect" last="true">/unauthorized</to>
              </rule>
          </urlrewrite>
      

      如果我从localhost访问此URL,它可以正常工作:

      http://myserver.mydomain.com/orbeon/fr/

      如果我从其他地方访问它,我无法访问Form Runner,这很好,但重定向无法正常工作。我最终被重定向到以下不包含应用程序上下文的URL,所以我得到了404。

      http://myserver.mydomain.com/unauthorized

      我尝试将temporary-redirect的值更改为/%{context-path}/unauthorized,但之后我被重定向到http://orbeon/unauthorized。我也试过%{context-path}/unauthorized,但后来我得到了太多的重定向&#34;错误。

      知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

我能够让IP过滤器只返回403而不重定向URL。就我而言,这是更可取的。

to>null</to>

我在这里的示例列表中找到了var listOfTasks = [["Hi", "Hello", "12:00"],["Hey there", "What's up?", "3:17"]]http://tuckey.org/urlrewrite/manual/4.0/guide.html