2011-10-17 13 views
21

Aby przeprowadzić test konfiguracji protokołu SSL pod Tomcat, czy to wszystko jest obowiązkowe?Czy wymagana jest konfiguracja ograniczająca bezpieczeństwo Tomcat?

To poniżej linii pochodzi z website:

Aby to zrobić dla naszego testu, każdą aplikację, która została już z powodzeniem wdrożony w Tomcat i pierwsza do niego dostęp za pośrednictwem protokołu HTTP i HTTPS, aby sprawdzić, czy to działa dobrze. Jeśli tak, otwórz web.xml tej aplikacji i po prostu dodać ten fragment XML przed web-app kończy tj </web-app>:

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>securedapp</web-resource-name> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <user-data-constraint> 
     <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint> 
</security-constraint> 

Czy ta konfiguracja jest obowiązkowe do zrobienia wewnątrz pliku web.xml ??

+0

Ten blok może być umieszczony w '$ {CATALINA_HOME}/conf/web.xml', jeśli chcesz go zastosować do wszystkiego. – Paul

Odpowiedz

35

Nie, to nie jest konieczne. Oznacza to, że Twoja aplikacja internetowa jest dostępna przez HTTPS (i niedostępna przez HTTP).

Jeśli pominiesz znacznik <transport-guarantee>CONFIDENTIAL</transport-guarantee> (lub cały <security-constraint>), twoja aplikacja będzie dostępna zarówno przez HTTP, jak i HTTPS. Jeśli Twój web.xml zawiera <transport-guarantee>CONFIDENTIAL</transport-guarantee> Tomcat automatycznie przekierowuje żądania do portu SSL, jeśli spróbujesz użyć protokołu HTTP.

Należy pamiętać, że domyślna konfiguracja Tomcat nie włącza złącza SSL, należy włączyć je ręcznie. Aby uzyskać szczegółowe informacje, sprawdź numer SSL Configuration HOW-TO.

+0

jest to możliwe, że numer portu pozostaje taki sam i tylko przekierowuje do https? – shzyincu

+0

Mam adres URL https://pen.srv.co.uk:8082/pentaho/Home, działa dobrze, ale chcę, aby użytkownik próbował przekierować na adres https ze strony innej niż https http na tym samym porcie 8082, czy to możliwe? – shzyincu

+0

@shzyincu: Przepraszam, nie mogę ci pomóc, myślę, że powinieneś zadać to jako nowe pytanie. – palacsint

4

Jeśli zaznaczysz bliżej The blog wyjaśnia dalej:

Każdy zasób w aplikacji mogą być dostępne tylko z HTTPS być to serwlety lub JSP. Termin CONFIDENTIAL jest terminem, który mówi serwerowi, aby aplikacja działała pod numerem SSL. Jeśli chcesz wyłączyć tryb SSL dla tej aplikacji, po prostu włącz, nie usuwaj fragmentu. Po prostu ustaw wartość jako NONE zamiast CONFIDENTIAL.

Powiązane problemy