Zentrale Benutzerverwaltung mit MediaWiki
30. Oktober 2017
Die Anbindung an einen zentralen Authentifizierungsserver gehört heute zum Standard eines jeden Unternehmenswikis. In der folgenden Einführung erklären wir die wichtigsten Hintergründe, Abläufe und Begriffe und klären die 10 wichtigsten Fragen zu LDAP und Active Directory.
Ab einer bestimmten Größe verwalten Unternehmen Benutzer und Benutzergruppen in einem zentralen Verzeichnis. Natürlich kann auch MediaWiki an ein solches Verzeichnis mit Hilfe von LDAP angebunden werden und das Leben von Administratoren deutlich vereinfachen.
Anja Ebersbach erläutert Grundlagen und aktuelle Entwicklungen …
1. Was ist LDAP und was ist das AD?
Das Lightweight Directory Access Protocol (LDAP) ist ein Netzwerkprotokoll, also ein bestimmtes Austauschformat von Daten – in unserem speziellen Fall zwischen dem Wiki und einem zentralen Benutzerverzeichnis. Es ist mit einer standardisierten Sprache wie z. b. SQL vergleichbar. So wie man bestimmte Datenbanken wie MySQL mit SQL ansprechen kann, gibt es eben auch Benutzerverzeichnisdienste, die über LDAP gesteuert werden können.
Das Active Directory ist der Benutzerverzeichnisdienst von Microsoft, in dem die konkrete Rechteverwaltung eines Unternehmens liegt und welches wiederum eine LDAP-Schnittstelle zur Verfügung stellt.
Es gibt mehrere Alternativen zu Microsofts AD, besonders im Open Source Bereich, wie z. B. Apache Directory Server, Novell eDirectory oder OpenLDAP. So lange diese Systeme das LDAP-Protokoll unterstützen, stellt eine Anbindung auch hier keine größere Hürde dar.
2. Warum sollte ein Wiki über LDAP an eine zentrale Benutzerverwaltung angebunden werden?
Das ist zum einen sinnvoll, weil die Benutzerverwaltung dann nicht separat im Wiki organisiert wird, sondern die Zugänge zentral und einheitlich geregelt werden können. So darf zum Beispiel der Nutzer Soundso einer bestimmten Gruppe deshalb auch im Wiki nur die für diese Gruppe relevanten Sachen sehen oder eben nicht sehen.
Zum anderen kann der User in diesem Fall dann auch sein unternehmensweites Passwort nutzen um sich in das Wiki einzuloggen, muss sich also nur einmal den Nutzernamen und das Passwort merken. Dies ist eine nützliche Geschichte, vor allem, wenn man im Unternehmen mit Passwort-Policies zu tun hat, die die User zwingen, ihr Passwort häufig zu ändern.
3. Was ist Single-Sign-On?
Dies ist eine weitere hilfreiche Funktion, die implementiert werden kann, wenn eine Anbindung des Wikis mittels LDAP bereits vorgenommen wurde: Der User muss sich dann nur einmal am Firmennetzwerk anmelden und ist automatisch im Wiki eingeloggt, d.h. er hat nicht nur ein einziges Passwort sondern spart sich auch die Eingabe dieses Passworts in der Eingabemaske des Wikis.
4. Wie läuft eine Anmeldung über ein angebundenes Wiki ab?
Im ersten Schritt wird der Benutzer authentifiziert, das heißt, Benutzername und Passwort werden abgefragt und es wird überprüft, ob die Eingaben stimmen. Wenn ja, erhält der Benutzer Zugang zum Wiki.
Danach erfolgt der zweite Schritt in Form der Autorisierung: Man schaut, wie der Pfad des Nutzers aufgebaut ist, welche Attribute er hat, und daraus werden zum Beispiel die Gruppen, die Sprache, die E-Mailadresse und zusätzliche Attribute gezogen, mit denen dann – quasi von der „Zentrale“ aus – die Wikinutzer verwaltet werden.
Manchmal genügt den Wiki-Nutzern die Authentifizierung bereits. Die Verwaltung der Nutzer und ihrer Berechtigungen muss dann allerdings im Wiki vorgenommen werden.
5. Was sind Gruppenrechte? Können Gruppenrechte aus dem LDAP/AD übernommen werden?
Sowohl im Wiki als auch im zentralen Benutzerverzeichnis werden die Berechtigungen der User (z. B. Lese oder Schreibrechte) über Gruppen definiert, denen die jeweiligen Nutzer zugeordnet werden. Bei einer Anbindung des Wikis ist es empfehlenswert, dass die Gruppen aus der „Zentrale“ übernommen werden und im Wiki dann mit dem speziellen Rechteset, wie z. B. das Löschen von Wiki-Artikeln, versehen werden. Ist diese Übernahme nicht erwünscht, kann die Verwaltung der Nutzerrechte auch weiterhin im Wiki erledigt werden.
6. Gibt es auch Nachteile bei der Anbindung eines Wikis, z. B. sicherheitstechnischer Natur?
Die Anbindung greift nur rein lesend auf den Verzeichnisdienst (z.B. auf das AD) zu und die Informationen, die zwischen Wiki-Server und Verzeichnis-Server laufen, werden über sichere Verbindungen abgefragt und nicht direkt nach draußen gegeben. Natürlich birgt jede Anbindung an externe Systeme das Risiko zusätzlicher Sicherheitslücken, aber die getroffenen Vorkehrungen zum Schutz entsprechen den gängigen Standards und ein Missbrauch der Daten ist nicht zu erwarten.
Das organisatorische Argument, das gegen eine LDAP-Anbindung spricht, wiegt in vielen Fällen schwerer: Je nachdem, wie das Unternehmen strukturiert ist, wird die Benutzerverwaltung des Wikis in zentrale Hände gelegt. Und ein Verzeichnis-Server ist natürlich ein sensibles Instrument. Das heißt, typischerweise hat dann nicht jeder einfach Zugriff, auch nicht die einzelnen Abteilungen, sondern lediglich ein bestimmter Administrator, der dann die Benutzer anlegt, die Rechte anlegt und so weiter. Und das bedeutet, dass man für das Anlegen von einem Benutzer einen Prozess anstoßen muss, der gegebenenfalls sehr aufwändig und langwierig sein kann. Das ist einfach eine Frage der Verfasstheit eines Unternehmens. Wenn es unproblematisch ist und schnell bearbeitet wird, ist das kein Thema.
7. Inwieweit muss das MediaWiki selbst auf die Anbindung vorbereitet werden?
Das MediaWiki benötigt eine Extension, die mit dem Verzeichnis-Server kommuniziert. Die Basis-Installation von MediaWiki kann das nicht. Sie stellt höchstens so genannte Hooks zur Verfügung. Dies sind ausgewiesene Stellen im Code, an die man die verschiedenen Authentifizierungserweiterungen (auch für andere Systeme wie z. B. OpenID, WordPress etc.) anhängen kann. Besagte LDAP-Erweiterung wurde bereits von der Community entwickelt, steht auf mediawiki.org zur Verfügung und muss installiert werden bevor die Anbindung erfolgt.
8. Was sind die größten Schwierigkeiten und Hürden bei einer Anbindung?
Die Unternehmen besitzen zum Teil sehr komplex aufgebaute Benutzerverzeichnisse. Ein stets gleich geformter Pfad eines Nutzers, nach z. B. Accountname, Abteilung, Ländername und Domain ist relativ einfach anzubinden. Aber die Benutzervereichnisse der Firmen sind häufig nach anderen Kriterien aufgebaut worden oder historisch gewachsen. Dann ergeben sich z. B. schwierige Anforderungen, in denen Nutzer aus den verschiedensten Orten Zugriff auf das Wiki bekommen sollen, und da müssen wir uns überlegen, was sind die distinktiven Kriterien, die diese Nutzer identifizieren. Oder das Unternehmen hat einen Sammelbenutzer (also einen Account, den mehrere natürliche Personen nutzen), der im Wiki in einzelne User aufgelöst werden soll.
Insgesamt sollte die Abfrage nach den Nutzern, die sich anmelden können, möglichst zielgenau formuliert sein. Gerade bei großen internationalen Unternehmen braucht man dafür einen Ansprechpartner auf der Kundenseite, der die lokalen Verzeichnisdienste gut kennt und uns die signifikanten Attribute, die man abfragen sollte, benennen kann. Ansonsten kann die Performanz leiden.
Eine weitere Herausforderung stellt die Verteilung der Nutzerverwaltung auf verschiedenen Servern dar, wenn z. B. eine Firmenfusion stattgefunden hat und die Nutzer aller involvierten Unternehmen (mit verschiedenen Verzeichnissen und Servern) auf das Wiki zugreifen sollen. Hier kann man zum Beispiel mit einer Vorabfrage in Form einer Weiche klären, von welcher Organisation der User kommt und welcher Server dementsprechend vom Wiki angesteuert werden soll.
9. Welche Informationen benötigt Hallo Welt! vor Beginn der Anbindung?
Wir brauchen natürlich die Adresse und den Pfad zum Verzeichnis-Server („LDAP-Server“) und typischerweise einen sogenannten Proxynutzer. Das ist ein (nicht-realer) Nutzer, dessen Passwort möglichst nie ausläuft und der die Aufgabe und die Berechtigung hat, alle Informationen über bestimmte Nutzer aus dem Verzeichnisdienst zu lesen – er übernimmt quasi die Kommunikation mit dem Verzeichnisdienst.
10. Sind technische Vorkenntnisse für die Anbindung notwendig?
Auf jeden Fall. Im Prinzip sollte eine solche Anbindung nur von einem Experten in Angriff genommen werden. Oder zumindest von jemandem, der bereits Erfahrungen im Bereich LDAP und AD besitzt.
Teilen Sie diesen Beitrag!
Sofern nicht anders angegeben, sind die News auf dieser Website lizensiert unter Creative Commons Attribution 4.0 International Lizenz. |