Każde osobne logowanie to kolejne hasło do zresetowania i kolejne konto do zamknięcia, gdy ktoś odchodzi. Logowanie jednokrotne (SSO) SAML łączy Twój system zarządzania nauczaniem z dostawcą tożsamości, dzięki czemu ludzie logują się do szkoleń swoim kontem służbowym, a dostęp podąża za Twoim katalogiem. Oto jak działa SAML, jak wygląda konfiguracja z Microsoft Entra ID, Okta lub Google Workspace i co sprawdzić przed uruchomieniem.
Jak działa logowanie jednokrotne SAML
SAML (Security Assertion Markup Language) 2.0 to otwarty standard przekazywania informacji o logowaniu między dwoma systemami, które sobie ufają. LMS nigdy nie widzi hasła danej osoby: kieruje ją do Twojego dostawcy tożsamości, który sprawdza, kim jest, z wymaganym przez Ciebie uwierzytelnianiem wieloskładnikowym, i odsyła ją z podpisanym oświadczeniem.
| Pojęcie | Co oznacza |
|---|---|
| Dostawca tożsamości (IdP) | System, który uwierzytelnia Twoich ludzi, taki jak Entra ID, Okta lub Google Workspace. |
| Dostawca usługi (SP) | Aplikacja, do której ludzie się logują: Twój LMS. |
| Asercja (assertion) | Podpisane oświadczenie XML z IdP: kim jest osoba, kiedy się zalogowała oraz atrybuty, takie jak e-mail i imię i nazwisko. |
| Entity ID | Unikalna nazwa każdej ze stron, często wyglądająca jak adres URL, ale będąca tylko identyfikatorem. Musi być dokładnie taka sama. |
| ACS URL | Assertion Consumer Service URL: adres LMS, który odbiera odpowiedź IdP. |
| Certyfikat podpisujący | IdP podpisuje swoim kluczem prywatnym; LMS weryfikuje podpis publicznym certyfikatem IdP i odrzuca sfałszowane lub zmienione asercje. |
| Metadane | Plik XML łączący entity ID, punkty końcowe i certyfikaty, gotowy do zaimportowania. |
Asercje są krótkotrwałe i wskazują swojego odbiorcę (entity ID dostawcy usługi). SP odrzuca wszystko, co wygasło lub było przeznaczone dla innej aplikacji.
Dlaczego SSO warto stosować w LMS
- Żadnych dodatkowych haseł. Ludzie używają swojego codziennego konta, a Twoje uwierzytelnianie wieloskładnikowe (MFA) i zasady dostępu obejmują także szkolenia.
- Nowi pracownicy szybko dostają dostęp. Przypisz aplikację LMS do grupy, a nowi pracownicy z tej grupy mogą zalogować się już pierwszego dnia.
- Odchodzący tracą dostęp u źródła. Wyłącz kogoś w katalogu, a nie rozpocznie nowej sesji w LMS. SAML kontroluje logowanie, a nie samo konto, więc w ramach procesu odejścia z firmy zarchiwizuj także konto w LMS.
Tworzenie kont just-in-time
Przy provisioningu just-in-time (JIT) LMS tworzy konto przy pierwszym logowaniu danej osoby, na podstawie atrybutów asercji, więc nie ma listy użytkowników do zaimportowania. Otocz to zabezpieczeniami:
- Ogranicz to do własnych domen e-mail, aby źle skonfigurowana aplikacja lub konto gościa nie tworzyły przypadkowych użytkowników.
- Nadawaj nowym kontom najniższą rolę, a uprawnienia administratora przyznawaj świadomie.
- Dopasowuj osoby według stałego identyfikatora, jeśli Twój IdP potrafi go przesłać, ponieważ adresy e-mail się zmieniają.
Logowanie inicjowane przez SP a inicjowane przez IdP
- Inicjowane przez SP: osoba otwiera LMS, który wysyła żądanie uwierzytelnienia do IdP, a IdP przesyła swoją odpowiedź metodą POST na ACS URL. Działa z zakładek i linków w e-mailach i uchodzi za bezpieczniejszy przepływ, ponieważ odpowiedź dotyczy żądania wysłanego przez LMS.
- Inicjowane przez IdP: osoba klika kafelek aplikacji w Microsoft My Apps, na swoim pulpicie Okta lub w menu aplikacji Google, a IdP wysyła na ACS URL niezamówioną odpowiedź.
Możesz oferować oba; przetestuj każdy.
Konfiguracja SAML SSO krok po kroku
Kolejność jest wszędzie mniej więcej taka sama:
- Zaplanuj zakres: kto korzysta z SSO, które grupy dostają aplikację, które domeny e-mail są dozwolone i który atrybut identyfikuje każdą osobę.
- Utwórz połączenie w LMS i zanotuj jego entity ID oraz ACS URL.
- Utwórz aplikację SAML w swoim IdP z tymi wartościami, wybierz format NameID i dodaj atrybuty: e-mail, imię i nazwisko.
- Przypisz użytkowników lub grupy; osoby nieprzypisane są zwykle odrzucane.
- Przekaż LMS dane IdP: adres URL metadanych, plik metadanych albo entity ID IdP, adres logowania i certyfikat podpisujący.
- Zmapuj atrybuty na nazwy, które Twój IdP faktycznie wysyła.
- Przetestuj, potem włącz i poinformuj ludzi o zmianach.
Uwagi o dostawcach
Dokładne ekrany znajdziesz w dokumentacji swojego dostawcy. Warto wiedzieć:
- Microsoft Entra ID: użyj aplikacji przedsiębiorstwa spoza galerii (non-gallery enterprise application), a nie rejestracji aplikacji, która nie oferuje SAML. Nazwy atrybutów (claimów) to długie identyfikatory URI, więc skopiuj je dokładnie. Object ID to dobry stały identyfikator. Dla osób bez skrzynki pocztowej claim e-mail może być pusty; można go zastąpić nazwą UPN (user principal name), jeśli jest prawdziwym adresem.
- Okta: utwórz integrację aplikacji SAML 2.0. Nazwy instrukcji atrybutów (attribute statements) nadajesz samodzielnie, więc muszą dokładnie odpowiadać mapowaniu w LMS, także wielkością liter. Wewnętrzny identyfikator użytkownika Okta jest dobrym stałym identyfikatorem.
- Google Workspace: dodaj niestandardową aplikację SAML i pobierz jej plik metadanych. Aplikacja startuje jako wyłączona, więc włącz ją dla właściwych jednostek organizacyjnych lub grup. Typowa konfiguracja identyfikuje osoby po podstawowym adresie e-mail, więc uwzględnij zmienione i ponownie używane adresy.
Lista kontrolna testów
Przed uruchomieniem sprawdź to w prywatnym oknie przeglądarki:
- Istniejący użytkownik loguje się, zaczynając od LMS, a potem ponownie z kafelka aplikacji.
- Nowy użytkownik w Twojej domenie dostaje konto z właściwą rolą.
- Osoba nieprzypisana do aplikacji zostaje odrzucona.
- Osoba spoza dozwolonych domen zostaje odrzucona.
- E-mail, imię i nazwisko docierają poprawnie.
- Administrator nadal może wejść przez ścieżkę awaryjną.
Częste pułapki
Rozbieżność zegarów (clock skew)
Jeśli zegary IdP i LMS różnią się o więcej, niż toleruje LMS, poprawne asercje są odrzucane jako jeszcze nieważne lub już wygasłe. Dotyczy to głównie własnych serwerów tożsamości, więc dbaj o synchronizację ich zegarów.
Wymiana certyfikatu
Certyfikaty podpisujące IdP wygasają, a jeśli LMS nie ufa nowemu, każde logowanie przestaje działać jednocześnie. Wpisz datę wygaśnięcia do kalendarza. Jeśli Twój LMS potrafi ufać dwóm certyfikatom, dodaj tam najpierw nowy, a potem aktywuj go w IdP; w przeciwnym razie przełącz obie strony jednocześnie w spokojnym momencie. Przetestuj od razu.
Mapowanie atrybutów
Nazwy atrybutów są zwykle dopasowywane dokładnie: LMS oczekujący email nie zaakceptuje Email. Sprawdź też identyfikator. Przejściowy NameID zmienia się przy każdej sesji, a adres e-mail może się zmienić; trwały NameID lub niezmienny atrybut ID jest stabilny. Jeśli ludzie są dopasowywani po adresie e-mail, zarchiwizuj konto odchodzącej osoby, zanim jej adres zostanie przydzielony komuś innemu.
Niezgodność domeny e-mail
Katalogi często zawierają osoby, których nazwa logowania nie jest adresem e-mail, wykonawców w innych domenach i pracowników przejętych firm, którzy wciąż używają starych. Jeśli LMS ogranicza konta do określonych domen, zostaną odrzuceni. Wypisz wszystkie domeny przed uruchomieniem.
Jak robi to Acadenix
SAML SSO jest dostępne w planie Gold, wraz z przewodnikami krok po kroku dla Entra ID, Okta i Google Workspace.
- Test, a potem aktywacja. Zapisujesz dane swojego IdP jako wersję roboczą, uruchamiasz Test configuration (Przetestuj konfigurację), logując się u swojego dostawcy, i dopiero wtedy aktywujesz. Brak claima e-mail jest zgłaszany wraz z nazwami claimów, które Twój dostawca faktycznie przesłał.
- Zmiany etapowe. Nowy certyfikat lub tenant wprowadzasz jako aktualizację konfiguracji, a bieżąca konfiguracja działa, dopóki jej nie aktywujesz.
- JIT w granicach Twoich domen. Osoba bez konta dostaje konto kursanta przy pierwszym logowaniu, tylko jeśli jej e-mail należy do domen rejestracyjnych Twojej organizacji, a tę funkcję można wyłączyć. Gdy ktoś, kto ma już konto w Acadenix, po raz pierwszy loguje się przez Twój IdP, Acadenix wysyła mu e-mailem jednorazowy kod potwierdzający powiązanie. Dzieje się to raz dla każdej osoby.
- Oba sposoby wejścia. Ludzie zaczynają od Twojej strony logowania, która może od razu przekierować do IdP albo pokazać przycisk, lub z kafelka w My Apps, Okta albo Google.
- Jedno połączenie, jedna organizacja. Połączenie SAML nie przechodzi na organizacje podrzędne swojego właściciela, co ma znaczenie dla grup z wieloma lokalizacjami.
- Ścieżka awaryjna. Jeśli Twój IdP nie działa, administratorzy nadal mogą się zalogować jednorazowym kodem wysłanym e-mailem, a tej opcji nie można wyłączyć.
Obok SAML ludzie mogą logować się kodem wysłanym e-mailem albo kontem Google, Microsoft lub LinkedIn. Więcej na naszej stronie o bezpieczeństwie.
Najważniejsze wnioski
- Wymień się entity ID, ACS URL i metadanymi, a następnie zmapuj stały identyfikator i zweryfikowany e-mail.
- Ogranicz konta just-in-time do własnych domen i najniższej roli.
- Przed uruchomieniem przetestuj oba przepływy logowania, odmowy dostępu i ścieżkę awaryjną.
- Wpisz do kalendarza datę wygaśnięcia certyfikatu i archiwizuj konta w LMS osób, które odeszły.
Chcesz połączyć Acadenix ze swoim dostawcą tożsamości? Porównaj plany na naszej stronie cennika lub porozmawiaj z nami o swojej konfiguracji.


