Skip to end of metadata
Go to start of metadata

Nazwa wtyczki Data utworzenia Data ostatniej aktualizacji Link do instalki Krótki opis Dział utrzymujący Dokumentacja dla klienta Typ licencji Typ wtyczki Id wtyczki
Plus SSO Authenticator 2023-02-23 2025-01-27 Link Wtyczka umożliwiająca logowanie do systemu za pomocą SSO Dev Core Płatna Wtyczka com.suncode.plugin-plus-sso-authenticator

Instalacja

Aby umożliwić logowanie za pomocą SSO, należy zainstalować i skonfigurować wtyczkę Plus SSO Authenticator.

Po prawidłowej konfiguracji, podczas wejścia na adres systemu PlusWorkflow użytkownik zostanie automatycznie przelogowany na stronę logowania do SSO. Aby zalogować się ręcznie do systemu należy wejść na adres systemu z dopiskiem /LoginManual.do. Będzie tam również opcja zalogowania się przez SSO za pomcą przycisku.

     Przykład: https://www.test.plusworkflow.pl/PlusWorkflow/LoginManual.do

 

Konfiguracja SSO - jest to konfiguracja systemu SSO dla rozwiązania Azure-EntraId.

SSO przeważnie konfiguruje nam klient po przesłaniu do niego danych opisanych niżej (entity id, reply url, SLO, certyfikaty) jako SAML ServiceProvider metadata descriptor xml (generowanie pliku opisane niżej).

Dodajemy aplikację za pomocą Microsoft Entra ID -> Aplikacje dla przedsiębiorstw -> Nowa aplikacja

Następnie wybieramy Utwórz własną aplikację

Po utworzeniu przechodzimy do danej aplikacji i wybieramy metodę logowania jednokrotnego SAML

 

Do skonfigurowania serwera SSO musimy klientowi przekazać dane:

Generowanie SAML ServiceProvider metadata descriptor'a w xml:

Generator metadanych dla klienta z parametrami niezbędnymi do skonfigurowania SSO po stronie IdP znajduje się w pliku "Suncode SAML SP metadata generator.html".

Suncode SAML SP metadata generator.html

Generowanie certyfikatu x.509 pem opisane niżej "Tworzenie keys store jks".

 

Konfiguracja połączenia do SSO z PlusWorkflow 

Po zainstalowaniu wtyczki w Administracja -> Konfiguracja systemu -> Konfiguracja wtyczek pojawi się opcja Plus SSO Authenticator.

W pierwszej zakładce SAML REQUEST (JSON) możemy:
- ustawić checkbox active, który oznacza czy logowanie przez SSO ma być aktywne. Jeżeli nie, to na formularzu logowania nie pojawi się przycisk logowania przez SSO.
- wybrać rozwiązanie autoryzacji SSO Solution

- podać nazwę źródła danych na podstawie którego ma być utworzony użytkownik w systemie jeżeli jeszcze nie istnieje Create user from datasource id (więcej szczegółów tutaj)

- disableSingleLogOut - pozwala wyłączyć wylogowanie przez SSO

- skonfigurować parametry wysyłane w requescie SAMLa

           Version: domyślnie "2.0"

           Issue instant date format: domyślnie  "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"

           Issuer: adres plusWorkflow/authentication/sso/id/{entity id podany do konfiguracji serwera sso}. Np: https://www.test.plusworkflow.pl/PlusWorkflow/api/authentication/sso/id/testId-if7-fi6-xh-c0

           Assertion Consumer Service URL: adres plusWorkflow/authentication/sso/login?provider=sso. Np: https://www.test.plusworkflow.pl/PlusWorkflow/api/authentication/sso/login?provider=sso

           ForceAuthn: domyślnie puste

           IsPassive: domyślnie puste

- skonfigurować dane do Key Store z kluczami do podpisywania wiadomości. Hasła do Key Store i klucza prywatnego zostaną zaszyfrowane i nie będzie można ich odszyfrować. Będą miały postać "enc:zaszyfrowane_hasło". Hasło do zaszyfrowania nie może zaczynać się od ciągu znaków "enc:".

 


Tworzenie key store jsk:

keytool -genkeypair -alias suncode -keyalg RSA -keysize 2048 -keystore mystore.jks -validity 365

CN=suncode,OU=IT,O=SUNCODE,L=POZNAN,ST=WP,C=PL

Wyciągnięcie cer z jsk do wgrania w SSO: keytool -exportcert -keystore mystore.jks -alias suncode -file mycertificate.cer

Opcjonalnie utworzenie pem do wgrania w SSO w Base64: openssl x509 -inform der -in mycertificate.cer -out publiccert.pem

 

W drugiej zakładc ENTITY DESCRIPTOR (XML) zapisujemy entity descriptor z certyfikatem(należy go pobrać i wkleić), który otrzymaliśmy po skonfigurowaniu SSO Azure.
     W Azure certyfikat znajduje się w następującym miejscu:


Uwaga! Każda modyfikacja konfiguracji wymaga restartu wtyczki.

Identyfikacja użytkowników

Zwracany identyfikator z SSO porównywany jest z polem userid w systemie PlusWorkflow.

Jeżeli SSO zwraca adres e-mail użytkownika, można użyć interceptora uwierzytelniania, aby umożliwić logowanie do systemu za pomocą adresu e-mail Interceptory uwierzytelniania.

 

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.