Dla naszego klienta, znaczącej belgijskiej firmy z oddziałami w USA i Chinach, zaproponowaliśmy integrację ich Azure Active Directory w Redmine. Pomyśleliśmy: „Redmine ma natywną obsługę LDAP, więc nie powinno to stanowić problemu”. Za każdym razem, gdy mówisz „to nie powinno być problemem”, czeka cię uczta.
Połączenia Azure Active Directory był wtedy stosunkowo nowy dla naszego klienta. Dopiero niedawno zsynchronizowali swoich użytkowników z Azure Active Directory (AAD) za pomocą ADConnect, więc pomyśleli o użyciu bazy danych użytkowników platformy Azure do logowania jednokrotnego (SSO) w Redmine. Alternatywą było utworzenie zduplikowanej lokalnej bazy danych użytkowników Redmine, która wydawała się naciągana. Ponieważ nasz klient jest zaznajomiony z technologiami Microsoft, pierwszą rzeczą, jaka przyszła mu do głowy, było: LDAP.
Założyli, że aktywacja LDAP w katalogu Azure polegała na przełączeniu przełącznika. Kto wiedział, że nie. Aby usługa LDAP działała na platformie Azure, nasz klient musiał skonfigurować dodatkową usługę Azure Active Directory. Krótko mówiąc: okazało się to zbyt skomplikowane i drogie.
Podczas tego procesu nasz klient dowiedział się, że platforma Azure obsługuje nowsze protokoły oAuth i Saml do uwierzytelniania użytkowników. Protokoły te najwyraźniej kryją się za „przyciskami logowania”, które wszyscy znają: zaloguj się przez Google i zaloguj się przez Facebooka.
Na szczęście istnieje wtyczka o nazwie redmine_omniauth_azure to załatwia sprawę. Zainstalowaliśmy go w naszym Redmine bez żadnych problemów. Wszystko, co nasz klient musiał zrobić w zakresie ustawień, to postępować zgodnie z instrukcjami na https://github.com/Gucin/redmine_omniauth_azure. Nasz klient również musiał zarejestrować aplikację zgodnie z instrukcją na https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app i dodaj adres URL przekierowania. Adres URL przekierowania to miejsce, w którym użytkownik trafia po zalogowaniu się do platformy Azure. W naszym przypadku był to podstawowy adres URL Redmine https://client.redmine-x.com.
We wtyczce Redmine musieliśmy ustawić następujące pola, które otrzymaliśmy od naszego klienta.
Identyfikator klienta:
Tajemnica klienta:
Identyfikator najemcy:
Aby zakończyć konfigurację, musieliśmy być w stanie przetestować uwierzytelnianie. Dlatego poprosiliśmy o użytkownika testowego w katalogu Azure. Przy pierwszym logowaniu musieliśmy dodać czek MFA (Multi-Factor Authentication) do konta testowego, więc zastosowaliśmy https://www.office.com do pierwszego logowania.
Po tym nadal pojawia się błąd po zalogowaniu się za pomocą Azure Active Directory. Rozwiązanie problemu zajęło nam sporo czasu i chętnie pomożemy Ci w procesie integracji.
Więc przepływ jest:
- Użytkownicy klikają przycisk „Zaloguj się przez Azure”
- Następnie zostają przekierowani na platformę Azure, gdzie logują się przy użyciu swoich poświadczeń platformy Azure
- Zostają przekierowani z powrotem do Redmine i automatycznie się logują
- Jeśli Redmine jest ustawione poprawnie, wszyscy użytkownicy otrzymają wiadomość „Twoje konto zostało utworzone i oczekuje teraz na zatwierdzenie przez administratora”.
Zintegruj platformę Azure z Redmine płynnie dzięki Michaelowi z RedmineX
Bądźmy w kontakcieostrzeżenie: jeśli użytkownik spróbuje zalogować się ponownie, otrzyma błąd wewnętrzny, ponieważ Redmine nie może wyświetlić komunikatu o błędzie zorientowanego na człowieka. My wiedzieć jak to rozwiązać i będzie chętnie Ci pomogę.
Kilka uwag końcowych:
- Wszystko zostało ustawione dla konkretnego adresu URL Redmine. Jeśli chcesz zmienić adres URL w przyszłości, musisz to przetestować, a także zmienić wszystkie adresy URL na platformie Azure
- Musisz skonfigurować powiadomienia. Obydwa ustawienia znajdują się w Redmine
https://client.redmine-x.com/settings?tab=notifications
oraz na serwerze w pliku konfiguracyjnym.yml w katalogu /config. Adresy e-mail muszą się zgadzać.
Więc to było nasze doświadczenie z Azure. Jeśli potrzebujesz czegoś takiego, jesteśmy gotowi Ci pomóc.
Czy chcesz NOWE doświadczenie Redmine i zwiększyć swoją produktywność?
Uzyskaj DARMOWĄ wersję demonstracyjnąUdostępnij to, jeśli Ci się spodobało!
Spójrz na nasze Youtube Channel.