Generelle Informationen

Was ist ADFS?

Active Directory Federation Services (ADFS) ist ein von Microsoft bereitgestellter Dienst, der Single Sign-On (SSO) über Organisationsgrenzen hinweg ermöglicht. Er fungiert als Identity Provider (IdP), der Benutzeridentitäten aus dem Active Directory Ihrer Organisation als SAML-Token an externe Anwendungen wie nele.ai weitergibt – ohne dass Passwörter übertragen werden müssen.

Für die Einrichtung werden erweiterte Kenntnisse über SAML 2.0, Single-Sign-On und über Ihren Identity Provider vorausgesetzt. Der Login kann nach dem hier beschriebenen Initialisieren über den Administrationsbereich von nele.ai unter „SSO" eingerichtet werden. Da Nutzer- und Administrationsbereich in derselben Anwendung zusammengeführt sind, ist dieser Bereich ausschließlich für Mitglieder mit entsprechender Administratorberechtigung sichtbar.

Mitglieder, die über Single-Sign-On automatisch einen nele.ai-Account erhalten, werden nicht automatisch gelöscht oder deaktiviert. Diese Mitglieder können bei Bedarf manuell über die Mitgliederverwaltung entfernt werden.

Voraussetzungen: Stellen Sie vor Beginn sicher, dass folgende Anforderungen erfüllt sind:

  • Ein laufender ADFS-Server (empfohlen: Windows Server 2012 oder neuer)
  • Administrationszugang sowohl zum ADFS-Server als auch zum nele.ai Administrationsbereich
  • Ein gültiges SSL-Zertifikat für Ihre ADFS-Instanz
  • Klarheit über die Netzwerktopologie Ihres ADFS:
    • Ist der Metadata-Endpunkt aus dem Internet erreichbar (z. B. über einen Web Application Proxy)?
    • Kann der ADFS-Server selbst ausgehend auf externe URLs zugreifen?
    • Diese beiden Aspekte sind unabhängig voneinander und bestimmen, welche Konfigurationsoptionen in den folgenden Schritten für Sie infrage kommen.

Schritt 1: ADFS-Metadaten bereitstellen

Bevor Sie nele.ai konfigurieren, benötigen Sie die Metadaten Ihres ADFS-Servers.

Wenn der Metadata-Endpunkt Ihres ADFS aus dem Internet erreichbar ist (empfohlen):

Die Metadata XML URL Ihres ADFS-Servers folgt in der Regel dem Schema:

https://[ihr-adfs-server]/federationmetadata/2007-06/federationmetadata.xml

Notieren Sie sich diese URL - Sie benötigen sie im nächsten Schritt. Wichtig ist hierbei nicht, ob der ADFS-Server selbst aktiv ins Internet kommunizieren kann, sondern dass nele.ai als externer Dienst diesen Endpunkt von außen erreichen kann (z. B. über einen Web Application Proxy/AD FS Proxy oder eine entsprechende Firewall-Freigabe).

Hinweis: Sie können prüfen, ob die Metadaten korrekt und von außen abrufbar sind, indem Sie diese URL von einem Gerät außerhalb Ihres internen Netzwerks (z. B. über eine mobile Datenverbindung) im Browser öffnen. Bei korrekter Konfiguration wird eine XML-Datei angezeigt. Erscheint eine Fehlermeldung oder ist die Seite nicht erreichbar, wenden Sie sich an Ihren Serveradministrator.

Wenn der Metadata-Endpunkt nicht von außen erreichbar ist:

Exportieren Sie die Metadata XML-Datei direkt von Ihrem ADFS-Server und halten Sie diese zum Upload bereit.

Schritt 2: nele.ai – SSO konfigurieren und Metadata XML abrufen

Navigieren Sie im Administrationsbereich zum Menüpunkt „SSO". Wählen Sie dort unter den Konfigurationstypen (1) die zu Ihrer Umgebung passende Option aus:

Konfiguration über Metadata XML URL (2) (empfohlen):

Tragen Sie die in Schritt 1 notierte Metadata XML URL Ihres ADFS-Servers ein. Diese Option steht nur zur Verfügung, sofern der Metadata-Endpunkt Ihres ADFS-Servers aus dem Internet erreichbar ist. Diese Variante wird empfohlen, da nele.ai die Metadaten in regelmäßigen Abständen automatisch abruft und so Zertifikatserneuerungen ohne manuelles Eingreifen übernehmen kann (siehe Hinweis am Ende dieses Dokuments).

Konfiguration über Metadata XML Datei (3):

Falls der Metadata-Endpunkt nicht von außen erreichbar ist, laden Sie die in Schritt 1 exportierte Metadata XML-Datei stattdessen direkt hoch. Beachten Sie, dass in diesem Fall keine automatische Aktualisierung stattfindet und die Datei bei Zertifikatswechseln manuell erneut hochgeladen werden muss.

Klicken Sie anschließend auf Speichern. Die Konfigurationsdaten werden automatisch übernommen.

Kopieren Sie im Anschluss die von nele.ai generierte Metadata XML (4) bzw. deren URL – Sie benötigen diese für die nachfolgende Konfiguration auf ADFS-Seite.

Schritt 3: ADFS – Relying Party Trust einrichten

Ein Relying Party Trust ist der Eintrag in ADFS, der festlegt, welcher externen Anwendung (hier: nele.ai) vertraut wird und welche Benutzerinformationen an sie weitergegeben werden dürfen.

Wechseln Sie zu Ihrem ADFS-Server und öffnen Sie die AD FS-Verwaltungskonsole. Navigieren Sie zum Ordner Vertrauensstellungen der vertrauenden Seite und legen Sie über einen Rechtsklick einen neuen Eintrag an. Es öffnet sich ein Konfigurationsassistent – klicken Sie auf Weiter.

Wählen Sie bei der Datenquelle die zu Ihrer Umgebung passende Import-Option:

Wenn der ADFS-Server ausgehend auf die nele.ai-URL zugreifen kann:

Daten über die vertrauende Seite, die online oder in einem lokalen Netzwerk veröffentlicht wurden, importieren - Geben Sie die Metadata XML URL von nele.ai ein, die Sie in Schritt 2 kopiert haben. Diese Option erfordert eine ausgehende Internetverbindung des ADFS-Servers selbst und ist unabhängig davon, ob der ADFS-Metadata-Endpunkt von außen erreichbar ist.


Wenn keine ausgehende Verbindung möglich ist:

Daten über die vertrauende Seite aus einer Datei importieren - Wählen Sie die heruntergeladene Metadata XML-Datei von nele.ai aus.

Klicken Sie auf Weiter und vergeben Sie unter Anzeigename eine aussagekräftige Bezeichnung für den neuen Eintrag, z. B. nele.ai. Klicken Sie erneut auf Weiter - die übrigen Einstellungen werden automatisch aus dem XML übernommen.

Wählen Sie im weiteren Verlauf Allen Benutzern den Zugriff auf diese vertrauende Seite gestatten und klicken Sie auf Weiter.

Hinweis: Diese Einstellung gewährt zunächst allen Benutzern Zugriff. Falls Sie den Zugriff auf bestimmte Active Directory-Gruppen einschränken möchten, kann diese Zugriffsregel nachträglich über einen Rechtsklick auf den Eintrag unter Edit Access Control Policy angepasst werden.

Auf den darauffolgenden Übersichtsbildschirmen können Sie Ihre Einstellungen überprüfen. Lassen Sie beim abschließenden Schritt das Häkchen bei Dialogfeld ‚Anspruchsausstellungsrichtlinie bearbeiten‘ öffnen gesetzt, damit sich das Fenster für die Claim-Regeln automatisch öffnet. Falls es sich nicht automatisch öffnen sollte, können Sie den Eintrag per Rechtsklick auswählen und Anspruchsausstellungsrichtlinie bearbeiten… manuell aufrufen.

Schritt 4: Claim Rules konfigurieren

Claim Rules legen fest, welche Benutzerinformationen (sogenannte Claims, z. B. E-Mail-Adresse oder Benutzername) aus dem Active Directory ausgelesen und als Teil des SAML-Tokens an nele.ai weitergegeben werden. Für nele.ai werden zwei Regeln benötigt: eine zum Auslesen der E-Mail-Adresse und eine zur Umwandlung in das erwartete SAML-Format (Name ID).

Erstellen Sie im Claim-Rules-Fenster zunächst eine erste Regel:

  1. Klicken Sie auf Regel hinzugügen und wählen Sie als Regelvorlage LDAP-Attribute als Ansprechpartner senden. Klicken Sie auf Weiter.
  2. Wählen Sie unter Attributspeicher den Eintrag Active Directory aus.
  3. Wählen Sie in der linken Spalte (LDAP Attribute) E-Mail Adressen und in der rechten Spalte (Ausgehender Anspruchtyp) ebenfalls E-Mail-Adresse aus.
  4. Bestätigen Sie mit Fertig stellen.

Legen Sie anschließend eine zweite Regel an:

  1. Klicken Sie erneut auf Regel hinzufügen und wählen Sie diesmal Eingehenden Anspruch transformieren. Klicken Sie auf Weiter.
  2. Nehmen Sie folgende Einstellungen vor:
    1. Eingehender Anspruchtyp: E-Mail-Adresse
    2. Ausgehender Anspruchtyp: Name-ID
    3. Ausgehendes Name-ID-Format: E-Maill
  3. Behalten Sie die Standardeinstellung Alle Ansprüche weiterleiten bei und bestätigen Sie mit Fertig stellen.

Klicken Sie abschließend auf OK, um den Editor zu schließen.

Schritt 5: Gruppen übermitteln (Pflichtschritt)

Damit Nutzer beim automatischen Login den passenden SSO-Gruppen zugeordnet werden können, muss zusätzlich zu den Claim Rules aus Schritt 4 eine eigene Regel zur Gruppenübermittlung eingerichtet werden. Über SSO-Gruppen lassen sich Nutzer im Administrationsbereich von nele.ai gebündelt verwalten und einheitlich mit denselben Einstellungen versehen.

Öffnen Sie dazu erneut das Fenster Anspruchsausstellungsrichtlinie bearbeiten… für die betroffene Vertrauensstellung (falls bereits geschlossen: AD FS-Verwaltung → Vertrauensstellungen der vertrauenden Seite → betroffene Anwendung markieren → rechts „Anspruchsausstellungsrichtlinie bearbeiten…" auswählen). Klicken Sie auf „Regel hinzufügen" und wählen Sie als Vorlage „Ansprüche mit einer benutzerdefinierten Regel senden". Vergeben Sie einen aussagekräftigen Namen für die Regel und fügen Sie den passenden Regeltext ein.

Einzelne Gruppen gezielt übermitteln

Mit folgender Regel wird eine einzelne, konkret ausgewählte Gruppe anhand ihrer SID übermittelt:

c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value == "ID der Gruppe, die übertragen werden soll"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/groups", Value = c.Value, Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, ValueType = c.ValueType);

Ersetzen Sie ID der Gruppe, die übertragen werden soll durch die tatsächliche SID der gewünschten Active-Directory-Gruppe. In diesem Fall wird die SID selbst übermittelt und im Administrationsbereich von nele.ai angezeigt.

Möchten Sie stattdessen einen aussagekräftigen, frei wählbaren Namen anstelle der SID übermitteln, verwenden Sie folgende Variante:

c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value == "ID der Gruppe, die übertragen werden soll"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/groups", Value = "Name zur Übermittlung");

Mehrere Gruppen anhand eines Namensmusters übermitteln

Alternativ können auch alle Gruppen eines Nutzers übermittelt und anschließend gefiltert werden. Dazu sind zwei aufeinanderfolgende Regeln notwendig:

Regel 1 – überträgt zunächst alle Gruppen des Nutzers in einen Zwischenwert:

c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"] => add(store = "Active Directory", types = ("http://tmp/groups"), query = ";tokenGroups;{0}", param = c.Value);

Regel 2 – schränkt die Übermittlung auf Gruppen ein, deren Name einem bestimmten Muster entspricht. Im folgenden Beispiel werden nur Gruppen übermittelt, deren Name mit „nele-" beginnt:

c:[Type == "http://tmp/groups", Value =~ "^(?i)nele-"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/groups", Value = c.Value);

Passen Sie das Namensmuster in Regel 2 entsprechend Ihrer eigenen Gruppenbenennung in Active Directory an.

Klicken Sie abschließend auf OK, um den Editor zu schließen und die konfigurierten Regeln zu speichern.

Abschluss und Test

Eine erfolgreiche Konfiguration können Sie über die Login-URL im SSO-Bereich des Administrationsbereichs testen. Rufen Sie diese URL auf – bei korrekter Einrichtung werden Sie zu Ihrem Identity Provider weitergeleitet, wo Sie sich mit Ihren Zugangsdaten anmelden können.

Nach erfolgreichem Login werden Sie auf eine Übersichtsseite weitergeleitet, auf der Sie unter anderem wählen können, ob Sie sich in die Desktop-App oder die Web-App einloggen möchten. Alternativ können Sie dort nele.ai für verschiedene Betriebssysteme herunterladen.

Hinweis zur Zertifikatserneuerung: nele.ai kann Zertifikate nur dann automatisch aktualisieren, wenn der Metadata-Endpunkt Ihres ADFS-Servers dauerhaft aus dem Internet erreichbar ist (Konfiguration über Metadata XML URL, siehe Schritt 1 und 2). Wurde stattdessen die Metadata XML-Datei manuell hochgeladen, findet keine automatische Aktualisierung statt – in diesem Fall laufen die Zertifikate irgendwann ab und Benutzer können sich nicht mehr anmelden. Beheben Sie dies rechtzeitig, indem Sie entweder die aktuelle Metadata XML von nele.ai im ADFS erneut importieren oder die aktuelle Metadata XML Ihres ADFS-Servers in nele.ai neu hochladen.