it-swarm.com.de

Wie beschränke ich den Zugriff nach IP-Adresse mit Tomcat?

Weiß jemand, ob Tomcat den Zugriff auf bestimmte Anwendungen nach IP-Adresse einschränken kann (wie .htaccess von Apache)? 

28
SMSM

Sie fügen eine Valve zur Context in context.xml (insbesondere org.Apache.catalina.valves.RemoteAddrValve) hinzu. Siehe die Dokumentation zu Remote Host Filters

26
skaffman

Dies ist ein Beispiel:  

in\Apache-Tomcat-7.0.33\conf\server.xml:

<Engine name="Catalina" defaultHost="localhost">
    ...
    ...
    ...
    <Valve className="org.Apache.catalina.valves.RemoteAddrValve"
        allow="10\.132\.77\.55|10\.132\.76\.120|10\.132\.77\.47"/>
    ...
</Engine>
23

In Tomcat 7 können Sie es im web.xml konfigurieren. 

Wenn es für alle Web-Apps gilt, können Sie es in Tomcat7/conf/web.xml konfigurieren. Wenn es nur für eine Web-App ist, können Sie es in der Tomcat7/webapps/$(WEB_APP)/WEB-INF/web.xml konfigurieren.

Die Konfiguration verwendet einen RemoteAddrFilter-Filter. Es gibt ein Beispiel in Container Provided Filters .

4
Ascatgz

in Tomcat 9 können Sie es unter Pfad konfigurieren: Apache-Tomcat-9.0.14\webapps\manager\META-INF\context.xml

0
TJ Season

Um eine Zugriffsbeschränkung für Ihre Webanwendung für bestimmte IP-Adressen einzurichten, fügen Sie folgende Zeichenfolge in /opt/Tomcat/webapps/ROOT/META-INF/context.xml ein:

<Context antiJARLocking="true" path="/">
 <Valve className="org.Apache.catalina.valves.RemoteIpValve" />
 <Valve className="org.Apache.catalina.valves.RemoteAddrValve" deny="{IP_address}" />
</Context>

Hier ist die Anleitung, wie man dies macht via Jelastic Panel.

0
Tetiana