Nody HTTP i SSL

Autor: Marcin Kasiński
21.01.2011 13:24:00 +0200

HTTPInput - konfiguracja noda

Parametr noda HTTPInput mówiący o tym, że obsługuje on komunikacje szyfrowaną to Use HTTPS w zakładce Basic. Niestety tylko to nie wystarczy do bezproblemowej obsługi zapytań SSL. Należy jeszcze odpowiednio skonfigurować broker za pomocą komendy mqsichangeproperties . Te operacje to: Włączenie obsługi SSL

mqsichangeproperties [brokerName] -b httplistener 
-o HTTPListener -n enableSSLConnector -v true

Ustawienie pliku z bazą certyfikatów

mqsichangeproperties [brokerName] -b httplistener 
-o HTTPSConnector -n keystoreFile -v [plik z bazą kluczy]

Ustawienie hasła do pliku z bazą certyfikatów

mqsichangeproperties [brokerName] -b httplistener 
-o HTTPSConnector -n keystorePass -v [hasło do pliku z bazą kluczy]

Ustawienie portu, na którym nasłuchuje broker na połączenia SSL

mqsichangeproperties [brokerName] -b httplistener 
-o HTTPSConnector -n port -v numer portu

Przykład:

mqsichangeproperties MBBROKER -b httplistener -o HTTPSConnector -n port -v 7090

mqsichangeproperties MBBROKER -b httplistener -o HTTPListener -n enableSSLConnector -v true

mqsichangeproperties MBBROKER -b httplistener -o HTTPSConnector -n keystoreFile -v d:/keystore/itzone.jks

mqsichangeproperties MBBROKER -b httplistener -o HTTPSConnector -n keystorePass -v XXXXXX

HTTPRequest - konfiguracja noda

Aby móc komunikować się za pomocą SSL z brokera będąc klientem (HTTPRequest) należy najpierw skonfigurować bazę certyfikatów, tzn. określić jakim certyfikatem broker będzie się przedstawiał oraz jakie certyfikaty są dla niego wiarygodne w tego typu komunikacji (od brokera). Standardowa baza certyfikatów znajduje się w pliku %MQSI_FILEPATH%\jre\lib\security\cacert . Jest to baza w formacie JKS i można ją zarządzać za pomocą standardowego narzędzia JAVA keytool lub z narzędzia okienkowego. Początkowe hasło do tego pliku to changeit i jak sama nazwa wskazuje należy ja jak najszybciej zmienić. Parametry noda HTTPRequest dotyczące połączenia szyfrowanego znajdują się w zakładce SSL. Znajduje się tam parametr Protocal . Przyjmuje on następujące wartości:

  • SSLUżywa protokołu SSLv3, a jeśli się nie uda SSLv2
  • SSLv3Używa tylko protokołu SSLv3
  • TLSUżywa tylko protokołu TLS

Kolejny parametr Allowed SSL Ciphers określa sposób kodowania podczas połączenia szyfrowanego. Jeśli tej wartości nie wprowadzimy broker przyjmie wartość domyślną, tj. wszystkie możliwe sposoby akceptowane przez JVM brokera. Dalej należy tylko i wyłącznie w polu Web Service URL podać odpowiedni adres URL zasobu wymagającego szyfrowanej komunikacji (prefix adresu https://).


powrót
Zachęcam do przedstawienia swoich uwag i opinii w polu komentarzy.

Komentarze

Dodaj Komentarz