11 Konfiguracja SAML z Okta
Ta sekcja opisuje, jak skonfigurować Okta, aby umożliwić uwierzytelnianie SAML 2.0 dla Zabbix.
Konfiguracja Okta
1. Przejdź do https://okta.com i zarejestruj się lub zaloguj na swoje konto.
2. W interfejsie Okta przejdź do Applications → Applications
i naciśnij przycisk "Add Application"
(
).
3. Naciśnij przycisk "Create New App"
(
).
W okienku wybierz Platform: Web, Sign on method: SAML 2.0 i
naciśnij przycisk "Create".

4. Wypełnij pola na karcie General settings (pierwsza karta, która się pojawi) zgodnie z preferencjami i naciśnij "Next".
5. Na karcie Configure SAML wprowadź poniższe wartości, a następnie naciśnij "Next".
- W sekcji GENERAL:
- Single sign on URL:
https://<your-zabbix-url>/ui/index_sso.php?acs
Checkbox Use this for Recipient URL and Destination URL powinien być zaznaczony. - Audience URI (SP Entity ID): zabbix
Zauważ, że ta wartość będzie używana w ramach potwierdzeniu SAML jako unikalny identyfikator dostawcy usług (jeśli się nie zgadza, operacja zostanie odrzucona). Można podać URL lub dowolny ciąg znaków w tym polu. - Default RelayState:
Pozostaw to pole puste; jeśli wymagane jest niestandardowe przekierowanie, można je dodać w Zabbix w ustawieniach Administracja → Użytkownicy. - Wypełnij inne pola zgodnie z preferencjami.
- Single sign on URL:
https://<your-zabbix-url>/ui/index_sso.php?acs

Jeśli planujesz używać zaszyfrowanego połączenia, wygeneruj prywatne i publiczne certyfikaty szyfrowania, a następnie prześlij publiczny certyfikat do Okta. Formularz przesyłania certyfikatu pojawi się, gdy Assertion Encryption zostanie ustawione na Encrypted (kliknij Show Advanced Settings, aby znaleźć ten parametr).
- W sekcji ATTRIBUTE STATEMENTS (OPTIONAL) dodaj
atrybut z:
- Name: usrEmail
- Name format: Unspecified
- Value: user.email

6. Na następnej karcie wybierz "I'm a software vendor. I'd like to integrate my app with Okta" i naciśnij "Finish".
7. Teraz przejdź do karty Assignments i naciśnij przycisk "Assign", a następnie wybierz Assign to People z rozwijanego menu.

8. W okienku, które się pojawi, przypisz utworzoną aplikację osobom, które będą używać SAML 2.0 do uwierzytelniania w Zabbix, a następnie naciśnij "Save and go back".
9. Przejdź do karty Sign On i naciśnij przycisk "View Setup Instructions". Instrukcje konfiguracji zostaną wyświetlone na nowej karcie; pozostaw tę kartę otwartą podczas konfigurowania Zabbix.

Konfiguracja Zabbix
1. W Zabbix przejdź do ustawień SAML w sekcji Administracja → Uwierzytelnianie i skopiuj informacje z instrukcji konfiguracji Okta do odpowiednich pól:
- Identity Provider Single Sign-On URL → URL usługi SSO
- Identity Provider Issuer → ID jednostki IdP
- Atrybut użytkownika → Attribute name (usrEmail)
- ID jednostki SP → Audience URI
2. Pobierz certyfikat podany na stronie instrukcji konfiguracji Okta do folderu ui/conf/certs jako idp.crt i ustaw uprawnienia 644, uruchamiając:
chmod 644 idp.crt
Zwróć uwagę, że jeśli zaktualizowałeś Zabbix do wersji 5.0 z wcześniejszej wersji, będziesz musiał ręcznie dodać te linie do pliku zabbix.conf.php (znajdującego się w katalogu //ui/conf//):
// Used for SAML authentication.
$SSO['SP_KEY'] = 'conf/certs/sp.key'; // Ścieżka do twojego klucza prywatnego.
$SSO['SP_CERT'] = 'conf/certs/sp.crt'; // Ścieżka do twojego klucza publicznego.
$SSO['IDP_CERT'] = 'conf/certs/idp.crt'; // Ścieżka do klucza publicznego IdP.
$SSO['SETTINGS'] = []; // Dodatkowe ustawienia
Zobacz ogólne instrukcje Uwierzytelniania SAML po więcej szczegółów.
3. Jeśli Assertion Encryption zostało ustawione na Encrypted w Okta, checkbox "Zapewnienia" parametru Szyfruj powinien być zaznaczony również w Zabbix.

4. Naciśnij przycisk "Zaktualizuj", aby zapisać te ustawienia.
Aby zalogować się za pomocą SAML, nazwa użytkownika w Zabbix powinna odpowiadać adresowi e-mail w Okta. Te ustawienia można zmienić w sekcji Administracja → Użytkownicy w interfejsie WWW Zabbix.