
Für unseren Kunden, ein bedeutendes belgisches Unternehmen mit Niederlassungen in den USA und China, boten wir an, ihre zu integrieren Azure Active Directory mit Redmine. Wir dachten: "Redmine hat eine native Unterstützung für LDAP, also sollte das kein Problem sein." Jedes Mal, wenn Sie sagen: „Das sollte kein Problem sein“, werden Sie sich freuen.
Das Azure Active Directory war damals relativ neu für unseren Kunden. Sie hatten ihre Benutzer erst kürzlich mit ADConnect mit Azure Active Directory (AAD) synchronisiert, also dachten sie daran, die Azure-Benutzerdatenbank für ein einmaliges Anmelden (SSO) innerhalb von Redmine zu verwenden. Die Alternative bestand darin, eine doppelte lokale Redmine-Benutzerdatenbank zu erstellen, was weit hergeholt erschien. Da unser Kunde mit Microsoft-Technologien vertraut ist, kam mir als erstes in den Sinn LDAP.
Sie gingen davon aus, dass es bei der Aktivierung von LDAP im Azure-Verzeichnis nur darum ging, einen Schalter umzulegen. Wer wusste, dass es nicht so war. Damit LDAP innerhalb von Azure funktioniert, musste unser Kunde einen zusätzlichen Azure Active Directory-Dienst einrichten. Um es kurz zu machen: Es stellte sich als zu kompliziert und teuer heraus.
Während des Prozesses fand unser Kunde heraus, dass Azure oAuth und Saml unterstützt, neuere Protokolle für die Benutzerauthentifizierung. Diese Protokolle stecken offenbar hinter "Login-Buttons", die jeder kennt: Einloggen mit Google & Einloggen mit Facebook.

Glücklicherweise gibt es ein Plugin namens redmine_omniauth_azure das macht den Trick. Wir haben es ohne Probleme in unserem Redmine installiert. Alles, was unser Kunde in Bezug auf die Einstellungen tun musste, war, den Anweisungen unter zu folgen https://github.com/Gucin/redmine_omniauth_azure. Unser Kunde musste auch eine App gemäß den Anweisungen unter registrieren https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app und fügen Sie eine Umleitungs-URL hinzu. Die Umleitungs-URL ist der Ort, an dem der Benutzer landet, nachdem er sich bei Azure angemeldet hat. In unserem Fall war es die Basis-Redmine-URL https://client.redmine-x.com.
Im Redmine-Plugin mussten wir die folgenden Felder einrichten, die wir von unserem Kunden erhalten haben.
Kunden ID:
Kundengeheimnis:
Mieter-ID:
Um die Einrichtung abzuschließen, mussten wir in der Lage sein, die Authentifizierung zu testen. Deshalb haben wir nach einem Testbenutzer innerhalb des Azure-Verzeichnisses gefragt. Bei der ersten Anmeldung mussten wir dem Testkonto eine MFA-Prüfung (Multi-Factor Authentication) hinzufügen, die wir verwendet haben https://www.office.com für die Erstanmeldung.

Danach bekamen wir immer noch einen Fehler nach der Anmeldung mit der Azure Active Directory. Das Problem war beim Erstellen von Redmine-Benutzerkonten. Sobald sich ein Benutzer zum ersten Mal mit Azure bei Redmine anmeldet, wird für ihn in Redmine ein Konto mit denselben Anmeldeinformationen wie in Azure erstellt. Das erfordert einige Einstellungen. Sie müssen die "Selbstregistrierung" unter https://client.redmine-x.com/settings?tab=authentication auf automatische Kontoaktivierung stellen. Wenn Sie die Kontrolle darüber benötigen, wer Konten in Ihrem Redmine erstellt, müssen Sie dies in ändern manuelle Kontoaktivierung, und alle Administratoren erhalten einen Link zur Aktivierung der neuen Konten.
Der Ablauf ist also:
- Benutzer klicken auf die Schaltfläche „Login via Azure“.
- Dann werden sie zu Azure umgeleitet, wo sie sich mit ihren Azure-Anmeldeinformationen anmelden
- Sie werden zurück zu Redmine umgeleitet und automatisch angemeldet
- Wenn Redmine auf „manuelle Kontoaktivierung“ eingestellt ist, erhalten alle Benutzer die Meldung „Ihr Konto wurde erstellt und wartet nun auf die Genehmigung durch den Administrator.“
Warnung: Wenn die Kontoaktivierung auf "manuelle Kontoaktivierung" eingestellt ist und der Benutzer versucht, sich erneut anzumelden, erhält er einen internen Fehler, da Redmine keine benutzerorientierte Fehlermeldung anzeigen kann.
Ein paar abschließende Bemerkungen:
- Alles wurde für eine bestimmte Redmine-URL eingestellt. Wenn Sie die URL in Zukunft ändern müssen, müssen Sie dies testen und auch alle URLs in Azure ändern
- Sie müssen Benachrichtigungen einrichten. Die Einstellungen befinden sich sowohl in Redmine https://client.redmine-x.com/settings?tab=notifications als auch auf dem Server in der Datei configuration.yml in /config. Die E-Mail-Adressen müssen übereinstimmen.
Das war also unsere Azure-Erfahrung. Wenn Sie so etwas brauchen, sind wir bereit, Ihnen zu helfen.
Möchten Sie ein NEUES Redmine-Erlebnis und Ihre Produktivität steigern?
Kostenlos testenTeilen Sie dies, wenn es Ihnen gefallen hat!
Werfen Sie einen Blick auf unsere Youtube Channel.