Mit der Integration von Kopano Konnect in den Single-Sign-on-Verbund von Univention Corporate Server steht eine weitere Option zur Verfügung, mit der Nutzern über ein einmaliges, initiales Login mit ihrem Benutzernamen und Passwort Zugriff auf unterschiedlichste Applikationen, die mit UCS integriert werden, zu geben.
Die beiden Authentifizierungsstandards SAML (Security Assertion Markup Language) und OpenID Connect stehen schon länger für die Authentifizierung von Nutzern an UCS zur Verfügung. Bisher hat es sich bei den beiden Technologien aber um voneinander getrennte Welten gehandelt. Wenn ein Teil der Web-Dienste SAML und ein anderer Teil OpenID Connect für die Authentifizierung gegen das Identity Management von UCS nutzt, war es notwendig, dass sich Anwender in Umgebungen mit mehreren Diensten zweimal einloggen. Mit Unterstützung des Teams von Kopano konnten wir eine Erweiterung der App „OpenID Connect IDP“ im App Center veröffentlichen, die die beiden Standards miteinander integriert und so ein einziger Authentifkations-Vorgang durch die Endanwender ausreichend ist.

Ich möchte Ihnen kurz erklären, wie ein Single Sign-on grundsätzlich mit UCS funktioniert. Anschließend erkläre ich Ihnen das Zusammenspiel von Kerberos, SAML und OpenID Connect und zeige, welche Funktionen die neue Implementierung von Kopano Konnect für UCS-Nutzer mitbringt.

Was bedeutet „Single Sign-on“

Bei einem Single Sign-on meldet sich der oder die Anwender*in beispielsweise am Desktop-Rechner in der Domäne an und kann anschließend direkt auch auf andere Dienste wie Datei- und Druckserver zugreifen. Die Anwender*innen muss sich also nur einmalig gegenüber einer Entität (Server) authentifizieren (z. B. durch Passworteingabe oder andere Faktoren) und der SSO-Mechanismus übernimmt anschließend transparent im Hintergrund die Authentifizierung gegenüber weiteren Diensten.

 

Graphic about Single Sign on with UCS

 

In der Regel bekommt der oder die Anwender*in nach der erfolgten Authentifizierung ein als Ticket, Token oder Cookie bezeichnetes Datenpaket, das für eine begrenzte Dauer („Session“) als Zugangsschlüssel für die Authentifizierung an den weiteren Diensten dient. Der SSO-Mechanismus speichert den Zugangsschlüssel und stellt sicher, dass der Schlüssel zum richtigen Zeitpunkt vorgelegt wird. Die Nutzer*innen müssen so ihren Benutzernamen und ihr Passwort nur einmal eingeben.

SAML und OpenID – Single Sign-on dezentral und webbasiert

OpenID und SAML sind dezentrale, webbasierte Single-Sign-on-Systeme, bei denen sich die Anwender*innen bei einem Identity Provider (IDP) authentifiziert haben müssen, um anschließend auf die angebundenen Dienste – sogenannten Service Provider (SP) – wie z. B. Websites zugreifen zu können.
Am Authentifizierungsdienst erhält der Browser der Anwender*in einen zeitlich befristet gültigen Session-Cookie, mit dem er oder sie Zugriff auf die integrierten internen und externen Dienste erhält. Die Absicherung erfolgt dabei über die Signatur des Session-Cookies, die auf vorher zwischen IDP und SP ausgetauschten Schlüsseln bzw. Zertifikaten basiert.

Kerberos – netzwerkbasiertes Single-Sign-on-Protokoll

Kerberos wiederum ist ein Single-Sign-on-Protokoll, das darauf ausgelegt ist, dass die beteiligten Systeme im gleichen Netzwerk verbunden sind. Ein Client authentifiziert sich beim Kerberos-Server und erhält ein Ticket (TGT – Ticket Granting Ticket). Mit diesem Ticket können anschließend weitere Tickets für verschiedene Dienste abgerufen werden.



Integration der SSO-Lösungen SAML, Kerberos und OpenID Connect

Wie eingangs beschrieben integriert UCS bereits seit längerem die Standards Kerberos, SAML und OpenID Connect. Die Kerberos-Anmeldung ist dabei Bestandteil der Anmeldung an einem in der UCS-Domäne betriebenen System, beispielsweise einem Windows- oder macOS-Desktop. Das SSO per Kerberos erlaubt dann bereits den einfachen Zugriff auf Server im internen Netz, beispielsweise auf Datei- und Druckdienste.
Hat sich ein Nutzer erfolgreich über Kerberos authentifiziert (also: hat sie oder er sich bereits am Arbeitsplatz in der UCS-Domäne angemeldet und so ein Kerberos-Ticket erhalten), erlaubt die Integration auch den direkten Zugriff auf per SAML angebundene Webanwendungen. Beispiele dazu finden Sie in verschiedenen Blogartikeln z. B. zum Single Sign-on mit Nextcloud, Webuntis, O365 oder G-Suite. Greift der Nutzer auf den Dienst zu, fordert der Dienst den SAML Identity Provider (IDP) von UCS auf, den Nutzer zu authentifizieren. Hat der Nutzer bereits ein Ticket aus der Kerberos-Authentifikation, wird dieses vom Browser an den SAML IDP geschickt und vermeidet die erneute Eingabe von Benutzername und Passwort. Dieses Feature ist nicht standard und muss von den UCS-Administratoren aktiviert werden.

OpenID Connect IDP „Kopano Konnect“ als neue App im Univention App Center

Seit letzter Woche gehört zu diesem „Single-Sign-on-Verbund“ der OpenID Connect IDP „Kopano Konnect“, den Sie als UCS App aus dem App Center in Ihre UCS-Umgebung integrieren können. Greift der Anwender auf einen gegen OpenID Connect konfigurierten Dienst z. B. Kopano Meet zu, leitet der OpenID Connect Identity Provider die Authentifikationsanfrage an den SAML Identity Provider in UCS weiter – der OpenID Connect Identity Provider übernimmt dabei die Rolle des SAML Service Provider (SP). War die Authentifikation gegen den SAML Identity Provider erfolgreich, ist der Zugriff auf den angebundenen Service gestattet. Der SAML Identity Provider wiederum kann eine Prüfung auf das Kerberos-Ticket durchführen.

 

Abbildung: SSO über openID Connect Identity Provider - Ablauf Authentifizierung mit UCS

 

Die Abläufe sind für den Anwender dabei völlig transparent: der erste Zugriff auf eine Anwendung fordert zu einer Authentifikation auf. Danach stehen alle Anwendungen zur Verfügung – beispielsweise direkt nach einem Klick in das UCS-Portal.
Durch diese Integration der verschiedenen Authentifizierungsprotokolle hat Univention Corporate Server einen weiteren wichtigen Schritt in Richtung „Hyperintegration-Plattform“ gemacht, da sich noch mehr Anwendungen noch komfortabler und mit durchgehendem Single Sign-on ohne Technologiebruch bedienen lassen.

UCS Core Edition jetzt kostenfrei einsetzen!

Zum Downloadbereich
Ingo Steuwer

Ingo Steuwer beschäftigt sich seit 1999 mit Linux und ist seit 2004 bei Univention. Als Head of Product Management liegt sein Fokus auf der Weiterentwicklung von UCS.

Was ist Ihre Meinung? Hinterlassen Sie einen Kommentar!

Kommentare

  1. Hallo,

    der obige Blog erklärt ja bereits wie SSO mit verschiedenen Clients genutzt werden kann (und mit Kopano Meet funktioniert es ja sogar direkt „out of the box“), für diejenigen die den SAML/OIDC Login ebenfalls mit der Kopano WebApp nutzen wollen haben wir ein kleines Skrpt zusammengestellt, welches dies automatisch konfiguriert.

    Das Skript befindet sich unter https://github.com/Kopano-dev/ucs-oidc-webapp/ und benötigt bis auf die oben genannten Apps nur noch git.

    Antworten

Schreibe einen Kommentar zu Felix Bartels (Kopano) Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert