码头-每个连接器的ipaccess?

时间:2019-04-10 22:46:34

标签: ssl jetty

假设我正在码头上启用ipaccess模块:

jetty-ipaccess.xml

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_3.dtd">

<!-- =============================================================== -->
<!-- The IP Access Handler -->
<!-- =============================================================== -->

<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Call name="insertHandler">
<Arg>
<New id="IPAccessHandler" class="org.eclipse.jetty.server.handler.IPAccessHandler">
    <Set name="white">
     <Array type="String">
     <Item>127.0.0.1</Item>
     <Item>192.168.1.168</Item>    
     </Array>
    </Set>
    <Set name="whiteListByPath">false</Set>
</New>
</Arg>
</Call>
</Configure>

然后我用jetty/home/start.jar --add-to-start=ipaccess

启用它

但是我希望此过滤器仅适用于http连接器。我不希望它应用于我的https连接器。

如何配置它,使其仅影响http模块,而不影响https模块?

注意:在Jetty 10中,此ipaccess模块​​已替换为另一个模块:

https://github.com/eclipse/jetty.project/commit/3a4da94e1a69ee4c9cd3c936f50d58ee3440188e

1 个答案:

答案 0 :(得分:1)

答案是不可能的,因为仅当您使用Jetty的编程版本时,才可以分配IPAccessHandler或InetAccessHandler。不是以start.jar开头时。

因此我创建了问题:https://github.com/eclipse/jetty.project/issues/3562

我创建了一个PR来解决此问题:https://github.com/eclipse/jetty.project/pull/3572

然后gregw@github接受了它,并在这里https://github.com/eclipse/jetty.project/pull/3576

一旦在9.4.x版本中,我将被全部设置。