Konfiguracja komunikacji portal – serwis i zmiana na protokół NetTCP

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2021 R5 oraz 2022 R3 i powyżej, autor: Dominika Skórko

 

Wprowadzenie

 

W wersji WEBCON BPS 2021 R5 i 2022 R3 wprowadzono możliwość konfiguracji połączenia między portalem a serwisem. Dotychczas komunikacja taka odbywała się jedynie za pośrednictwem protokołu HTTP zabezpieczonego interfejsem SSPI. Obecnie użytkownik ma możliwość zmiany typu komunikacji na protokół NetTCP zabezpieczony generowanymi automatycznie certyfikatami.

 

Konfiguracja

  

Podczas instalacji WEBCON BPS domyślnie wybieraną metodą komunikacji jest protokół HTTP, a na etapie tym nie ma możliwości jej konfiguracji. Użytkownik może jednak zmienić metodę komunikacji po zakończeniu instalacji.

 

Aby przejść do konfiguracji połączenia, w oknie instalacji należy kliknąć opcję „Narzędzia do zarządzania systemem”.

 

 

Z listy narzędzi znajdującej się po prawej stronie wybierz „Konfiguracja połączenia Portal-Serwis”. W oknie narzędzia zaznacz opcję „Komunikacja TCP – automatycznie generowane certyfikaty”. Aby wygenerować certyfikaty zabezpieczające połączenie za pośrednictwem protokołu NetTCP, kliknij przycisk „Wygeneruj certyfikaty” znajdujący się po prawej stronie. Utworzony zostanie komplet certyfikatów (dla każdego z serwisów osobno oraz jeden wspólny dla wszystkich interfejsów zewnętrznych portalu).

Po kliknięciu przycisku „Zapisz” nastąpi ponowne załadowanie konfiguracji serwisu i odświeżenie pamięci podręcznych, nie ma zatem konieczności ręcznego restartowania serwisu, ani resetowania puli aplikacji w portalu. Należy jedynie poczekać na zakończenie tych operacji – może to potrwać kilka minut.

 

 

Certyfikaty zachowują ważność przez 20 lat od momentu wygenerowania. Po tym czasie należy je ponownie wygenerować. Pole „Common Name” każdego z certyfikatów serwisu uzupełniane jest adresem hosta serwisu WCF (bez portu), natomiast w przypadku certyfikatu portalu w polu tym wstawiana jest wartość „PortalCertificate”. Wszystkie certyfikaty przechowywane są w konfiguracyjnej bazie danych – certyfikaty serwisów w postaci binarnej w tabeli „Services” w specjalnej kolumnie, natomiast certyfikat portalu przekonwertowany do postaci base64 w parametrach globalnych.

 

Rzeczą, na którą należy zwrócić uwagę, są adresy hostów, w tym porty wykorzystywane do  komunikacji. W trakcie instalacji nie ma możliwości ich konfiguracji, a domyślną wartością zarówno dla serwisu WCF, jak i serwisu licencji, w komunikacji za pośrednictwem protokołu HTTP jest rozdzielona znakiem dwukropka nazwa serwisu i liczba 8002 oznaczająca wykorzystywany port. Taki adres zostanie zarejestrowany dla skonfigurowanego konta serwisu.

 

 

W przypadku komunikacji TCP zmiana numeru portu w polu „Adres hosta serwisu licencji” z 8002 na inny wymaga jego ręcznego zarejestrowania za pomocą wpisywanej w wiersz poleceń komendy „netsh http add urlacl url=<adres> user=<nazwa użytkownika w formacie NetBios>”, np. „netsh http add urlacl url=http://+:8002/WorkFlow/WCFService/ user=webcon\svc.bps”. (W komunikacji za pośrednictwem protokołu HTTP powyższa rejestracja jest wymagana po zmianie dowolnego z obu adresów). Po wybraniu komunikacji TCP numer portu w nazwie adresu hosta WCF jest domyślnie zmieniany na „58002”. Dzieje się tak, ponieważ w tym przypadku serwis licencji i serwis WCF muszą korzystać z innych portów. Dla tego typu komunikacji nie ma konieczności rejestrowania adresu dla serwisu WCF. Po zaznaczeniu opcji HTTP port ponownie zmieni wartość na 8002, aby nie było potrzeby ponownej rejestracji adresu.

Wybrany typ komunikacji jest logowany przy starcie serwisu do EventLogu.

 

 

Konfigurację połączenia można sprawdzić również w WEBCON BPS Designer Studio. Aby to zrobić, należy kliknąć przycisk „Konfiguracja systemu” znajdujący się w prawym dolnym rogu, a następnie w drzewie wyboru zaznaczyć opcję „Konfiguracja serwisów”. W otwartym oknie dostępne są trzy pola z parametrami serwisu.

 

 

Podsumowanie

 

Alternatywny sposób komunikacji poprzez protokół NetTCP pozwala w bezpieczny sposób nawiązywać połączenia między portalem a serwisem w sytuacji, gdy występują problemy z interfejsem SSPI zabezpieczającym protokół HTTP. Użycie generowanych automatycznie certyfikatów pozwala na pracę na kilku maszynach w środowiskach bez domeny i wyklucza błędne konfiguracje wspomnianych środowisk oraz systemu uwierzytelniającego.