Domanda

Devo disabilitare l'amplificatore PUT, DELETE &; TRACE richieste HTTP sul mio Application Server, Apache Tomcat 6.0.

Tutte le altre fonti, che ho cercato fino ad ora, mi hanno indirizzato verso il parametro limite in httpd.conf , quindi vorrei mettere in evidenza che non sto usando Apache Web Server, e le richieste vengono gestite direttamente da Tomcat, quindi non c'è httpd.conf in figura.

Per favore, suggerisci come devo fare su Tomcat?

È stato utile?

Soluzione

All'interno di WEBINF, aggiungi puoi aggiungere un vincolo di sicurezza:

<security-constraint>
     <web-resource-collection>
          <web-resource-name>Forbidden</web-resource-name>
          <url-pattern>/blah/*</url-pattern>
          <http-method>PUT</http-method>
          <http-method>DELETE</http-method>
          <http-method>TRACE</http-method>
     </web-resource-collection>
     <auth-constraint>
          <role-name>empty_role</role-name>
     </auth-constraint>
</security-constraint>

In alternativa, puoi fare queste due cose:

In server.xml, modifica l'elemento <connector>, aggiungi un attributo: allowTrace="false". Quindi modificare il DefaultServlet: $ CATALINA_HOME / conf / web.xml

<servlet>
    <servlet-name>default</servlet-name>
    <servlet-class>
        org.apache.catalina.servlets.DefaultServlet
    </servlet-class>
    <!-- blah blah blah -->
    <init-param>
        <param-name>readonly</param-name>
        <param-value>true</param-value>
    </init-param>
</servlet>

Altri suggerimenti

La risposta sta nelle specifiche del servlet. Osservando l'API per il servlet: http://java.sun.com/products/servlet/2.5/docs/servlet-2_5-mr2/javax/servlet/http/HttpServlet.html vedrai che diversi metodi gestiscono diverso tipo di richieste HTTP. Inoltre, esiste una grande funzionalità chiamata filtri che può essere utilizzata per avvolgere del codice attorno a servlet e filtri.

Quindi le soluzioni sono:

  • Modifica il servlet per supportare solo do and get; o
  • Crea un filtro per cancellare quell'altro tipo di richieste.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top