Open-Source Zwei-Faktor-Authentifizierung mit privacyIDEA

Autor / Redakteur: Cornelius Kölbel* / Stephan Augsten

Obwohl Zwei-Faktor-Authentifizierung oft aus der Cloud kommt, besteht die Gefahr, sich an einen Anbieter oder eine Technologie zu binden. Mit privacyIDEA, das in diesem Beitrag näher vorgestellt wird, behalten Unternehmen ihre Flexibilität.

Anbieter zum Thema

Dank der Open-Source-Idee kann man mit privacyIDEA für eine flexible Multi-Faktor-Authentifizierung sorgen.
Dank der Open-Source-Idee kann man mit privacyIDEA für eine flexible Multi-Faktor-Authentifizierung sorgen.
(Bild: privacyIDEA)

Der IT-Security-Markt ist seit jeher in Bewegung. Die Hersteller versuchen, alle Aspekte der IT-Sicherheit abzubilden, um alles aus einer Hand anbieten zu können. Unternehmen werden gekauft und verschmolzen. Die neuen Produktportfolios müssen konsolidiert werden.

Bisweilen erfolgreiche Produkte fallen dem zum Opfer. So wird bspw. der Verkauf der Zwei-Faktor-Lösung Safeword 2008 im Herbst eingestellt. Die McAfee-OTP-Lösung, die von Nordic-Edge übernommen wurde, ist bereits End-of-Life. Zusätzlich bieten viele Hersteller Authentifizierungslösungen nur noch in der Cloud an.

Das NIST (National Institute of Standards and Technologies) schreibt in der überarbeiteten Digital Authentication Guideline, dass SMS nicht mehr für Zwei-Faktor-Authentifizierung herangezogen werden sollte. Es ist Bewegung im Markt für Zwei-Faktor-Authentifizierung. Daher sollte die IT-Abteilung bei der Wahl eines entsprechenden Systems auf Folgendes achten.

Ein Produkt sollte sich nicht alleine auf eine einzelne Authentifizierungstechnologie (wie in diesem Fall SMS) verlassen. Treten Probleme (technischer oder politischer Natur) mit dieser Technologie auf, so kann eine aufwändige Migration hin zu einem anderen Produkt eines anderen Herstellers notwendig werden.

Cloud-basierte Authentifizierungssysteme sind auf den ersten Blick attraktiv. Doch auch diese bauen oft nur auf eine Technologie – meist eine App – was sie für die gerade dargestellte Problematik anfällig macht. Migrationen von ausgerollten Authentisierungsgeräten oder Apps eines Anbieters zu einem anderen sind nicht möglich.

Ein erfolgreiches Produkt ist nicht nur für die Kunden attraktiv. Auch größere Mitbewerber interessieren sich für eine solche Software. Meist nur aus dem Grund, sich den Kundenstamm zu sichern, wird das entsprechende Unternehmen gekauft, um die Kunden zu übernehmen und das Produkt zunächst ins Portfolio zu integrieren.

Doch besteht wie eingangs dargestellt die Gefahr, dass das ursprüngliche Produkt schließlich der Konsolidierung des Produktportfolios zum Opfer fällt. Ideal ist also ein Produkt, das verschiedene Authentifizierungstechnologien unterstützt, mitwächst und nicht Gefahr läuft, durch einen Merger vom Markt zu verschwinden.

Mit privacyIDEA ist eine Open-Source Lösung am Markt erhältlich, die von all den oben genannten Problemen nicht betroffen ist. Das System unterstützt viele verschiedene Authentifizierungstechnologien und verhindert dadurch auch den Vendor-Lock-In im Bereich der Authentisierungsgeräte. Die Open-Source-Lizenz stellt sicher, dass die Software nicht willkürlich vom Markt verschwinden kann.

Die Idee hinter privacyIDEA

Als Open-Source-Projekt zur Mehr-Faktor-Authentifizierung soll privacyIDEA das Problem der Abhängigkeit von einem einzelnen Hersteller lösen. Beim Einsatz von privacyIDEA steht dem Unternehmen prinzipiell die Wahl frei, von wem sie Support für ihre Installation beziehen. Somit kann die Software nicht aus dem Markt gekauft werden.

Die große Bewegung auch im Bereich der Authentifizierungslösungen geht hin zu Cloud-Diensten. Dies ist nicht immer eine glückliche Wahl für einen Authentifizierungsdienst. Deswegen ist privacyIDEA dazu gedacht, on premise betrieben zu werden. Trotzdem eignet es sich aufgrund seines Designs auch gut für Provider. Somit kann die Lösung wahlweise auch gehostet betrieben werden.

Da die Lösung außerdem nicht mit einem Token-Hersteller verbunden ist, muss man sich bei privacyIDEA auch nicht auf die Nutzung eines Token-Typs oder einer einzelnen Technologie beschränken. Vielmehr lässt das System dem Anwender bei der Wahl des Support-Dienstleisters, der Installationsart und der Token freie Hand.

Integration von privacyIDEA

Zunächst einmal wird privacyIDEA zentral als Authentifizierungsserver im Netzwerk installiert. Es sammelt Benutzer aus bestehenden Benutzerquellen wie LDAP, Active Directory, SQL, einfachen Dateien oder SCIM. Optional kann der Administrator die Benutzer auch direkt in der Lösung verwalten.

Den Benutzern werden nun unterschiedliche Authentifizierungsgeräte zugeordnet. Alle Aufgaben innerhalb der Open-Source-Lösung lassen sich über eine REST API automatisieren. Dies hilft auch bei größeren Rollout-Szenarien. Individuelle Workflows können so leicht umgesetzt werden.

Als Open-Source-Lösung unterstützt privacyIDEA verschiedenste Authentifizierungsmechanismen.
Als Open-Source-Lösung unterstützt privacyIDEA verschiedenste Authentifizierungsmechanismen.
(Bild: privacyIDEA)

Über REST API, PAM, RADIUS, SAML oder individuelle Plug-ins ist es möglich, beliebig viele Applikationen wie Desktop Login, SSH Login, VPN und Firewalls oder Webapplikationen für die Authentifizierung mit einem zweiten Faktor anzubinden.

Struktur von privacyIDEA

Diese Flexibilität wird durch einen konsequent modularen Aufbau erreicht: Benutzerquellen, Logging und Audit, Token und Event-Handler sind als Module realisiert. Kommt ein neuer Authentifizierungsmechanismus auf den Markt, so lässt sich dieser durch die Implementierung eines neuen Token-Moduls leicht integrieren.

Bereits heute werden eine Vielzahl an Token-Typen unterstützt. Dazu zählen unter anderem HOTP und TOTP als Hardware-Token oder Smartphone App (bpsw. Google Authenticator oder FreeOTP), Yubikey in allen Modi, SMS, Email, SSH Keys, X.509-Zertifikate, TiQR, Sicherheitsfragen und Vier-Augen-Token.

Seit Kurzem verfügt privacyIDEA über ein Event-Handler-Framework. Neue Aktionen wie das Versenden von Benachrichtigungsmails können an beliebige Ereignisse gebunden werden. Die möglichen Aktionen lassen sich wiederum über neue Module erweitern. Auch neue Audit-Module lassen sich einbinden, auch wenn privacyIDEA von Haus aus ohnehin ein kryptographisch gesichertes Audit-Log schreibt.

privacyIDEA speichert alle Informationen in eine SQL-Datenbank. Die sensiblen Informationen sind verschlüsselt. Das Datenbankschema ist dokumentiert, so dass auch auf Datenbankebene ein Vendor-Lock-In vermieden ist.

Migration hin zu privacyIDEA

Die Migration eines bestehenden Zwei-Faktor-Systems hin zu privacyIDEA ist sanft und einfach möglich. Dazu definiert der Administrator in der neuen Lösung eine Richtlinie, die alle Authentifizierungsanfragen für Benutzer, die bisher keinen Token in privacyIDEA besitzen, an das alte Authentifizierungssystem weiterleitet.

Mit privacyIDEA soll eine möglichst sanfte Migration gewährleistet werden.
Mit privacyIDEA soll eine möglichst sanfte Migration gewährleistet werden.
(Bild: privacyIDEA)

privacyIDEA schreibt auch diese weitergeleiteten Anfragen ins Audit-Log, so dass schon hier zentral alle Authentifizierungen protokolliert werden. Nach und nach können so die Token ausgerollt bzw. bestehende Token migriert werden. Das kann der Administrator oder die Benutzer selbst machen. Wenn alle Benutzer im neuen System einen Token haben, kann der Administrator das alte System abschalten.

Fazit

Mit privacyIDEA ist ein bewährtes, offenes System verfügbar, das sich leicht auf verschiedenen Linux-Distributionen installieren lässt. Eine Migration kann schnell und sanft durchgeführt werden. Unter http://privacyidea.readthedocs.io findet sich eine ausführliche Dokumentation.

* Cornelius Kölbel war in den Bereichen Verschlüsselung und starke Authentisierung viele Jahre als Berater tätig und implementierte Lösungen auf Basis marktüblicher Produkte. Bereits seit 1994 beschäftigt er sich mit Open-Source-Projekten, nach 2010 war er Produktmanager eines quelloffenen Zwei-Faktor-Produkts. 2014 rief er das Open-Source Projekt „privacyIDEA“ ins Leben und gründete die NetKnights GmbH.

(ID:44268145)