Authentifizierung vs. Federation vs. SSO

U-Bahn des Lebens 8/52 / Dennis Skley

Authentifizierung. Föderation. Single Sign On (SSO). Ich habe diese Konzepte schon oft erwähnt. Ich habe nicht wirklich formal definiert, was diese Begriffe bedeuten, obwohl ich sie in meinem gesamten Schreiben oft verwendet habe - diese Konzepte sind eng miteinander verwandt.

Authentifizierung: Prozess, bei dem eine Entität (der Principal) einer anderen Entität (dem System) ihre Identität nachweist.

Single Sign On (SSO): Kennzeichen eines Authentifizierungsmechanismus, der sich auf die Identität des Benutzers bezieht, der für den Zugriff über mehrere Dienstanbieter verwendet wird.

Föderation: Gemeinsame Standards und Protokolle zum Verwalten und Zuordnen von Benutzeridentitäten zwischen Identitätsanbietern in verschiedenen Organisationen (und Sicherheitsdomänen) über Vertrauensbeziehungen (in der Regel über digitale Signaturen, Verschlüsselung und PKI hergestellt).

Erstens ist Identity and Access Management (IAM) das Management von Identitätsproblemen innerhalb einer IT-Organisation. Der Begriff IAM kann sich auf das Team oder die Verantwortlichkeiten des Teams beziehen. Im Idealfall handelt es sich bei IAM um ein zentrales Team, das jedoch aufgrund der Geschichte, der Politik oder der Organisationsstruktur nicht immer möglich ist. Die nächstbeste Option besteht darin, ein zentrales Team für alle Business-to-Business- (B2B), Business-to-Consumer- (B2C) und Business-to-Employee-Anliegen (B2E) zu haben. Nur allzu oft übernimmt jede einzelne Gruppe ihre eigenen IAM-Aufgaben - dies schafft zusätzliche Hürden für die Übernahme von Federation und SSO in einer Organisation. IAM kann die Authentifizierung von Benutzern und Systemen, die Autorisierung dieser Benutzer und Systeme, die Bereitstellung von Benutzern, die Prüfung von Identitätssystemen, die Verwaltung von Benutzer-Repositorys (beispielsweise LDAP oder Active Directory), Kennwortrichtlinien und andere Aspekte umfassen.

Authentifizierung

Die Bereitstellung von Authentifizierungsdiensten ist eine Kernaufgabe von IAM. Die Authentifizierung ist das allgemeinste der drei im Beitragstitel genannten Konzepte. In einem früheren Beitrag auf thinkmiddleware.com habe ich Folgendes als Definition der Authentifizierung angegeben. Authentifizierung ist der Vorgang, bei dem eine Entität (der Auftraggeber) einer anderen Entität (dem System) ihre Identität nachweist. Der Principal kann ein Computerprogramm (ein Stapeljob, der beispielsweise im Hintergrund ausgeführt wird), ein Endbenutzer (ein Mensch), ein Computersystem, eine Hardware, ein Mobilgerät oder andere exotische Dinge sein. Für unsere Zwecke ist das System ein beliebiges Computersystem, bei dem der Anrufer identifiziert werden muss, bevor der Zugriff gewährt wird. Oft befindet sich dieses System auf einem Server, manchmal auf einem Gerät (Mobiltelefon, Desktop, Laptop, Tablet), manchmal auf einem Gerät in einem Browser sein. Der Principal stellt dem System Anmeldeinformationen zur Verfügung, die vom System mithilfe eines Identitätssystems (einschließlich User Repository, Federation Server oder eines anderen) authentifiziert werden müssen. Berechtigungsnachweise sind vertrauliche Informationen, die den Kunden eindeutig identifizieren und in verschiedenen Formen vorliegen können:

  • Benutzer-ID und Passwort
  • Digitale Unterschrift
  • X509v3-Clientzertifikat
  • PIN # + Zufallszahl von einem FOB, Google Authenticate oder einer ähnlichen Technologie.

Der Vollständigkeit halber enthält ein Benutzer-Repository Informationen zu Benutzern (Principals), ihren Anmeldeinformationen, Gruppen, Gruppenmitgliedschaften und anderen Benutzerattributen. Ein LDAP-Server oder Active Directory ist ein typisches Beispiel für ein Benutzerrepository. Detaillierte Beschreibungen dieser Konzepte finden Sie hier. Ich habe zuvor in einem früheren Beitrag Federation Server und Identity Provider definiert.

Einmalige Anmeldung

Single Sign On (SSO) ist ein Merkmal eines Authentifizierungsmechanismus, der sich auf die Identität des Benutzers bezieht, der für den Zugriff über mehrere Dienstanbieter verwendet wird. SSO ermöglicht die Verwendung eines einzelnen Authentifizierungsprozesses (der von einem einzelnen Identitätsanbieter, Directory Server oder einem anderen Authentifizierungsmechanismus verwaltet wird) auf mehreren Systemen (Dienstanbietern) in einer einzelnen Organisation oder in mehreren Organisationen. Dieser einzelne Authentifizierungsmechanismus könnte sein:

  • ein LDAP-Server, Active Directory, eine Datenbank oder ein ähnlicher Verzeichnisserver
  • Ein System, das ein vertrauenswürdiges Token generiert und zur Authentifizierung an Anwendungen weitergibt.
  • Manchmal wird der Begriff SSO verwendet, um die Anmeldung bei Anwendungen mit einem Kennwortmanager zu beschreiben.
  • Vor 2005 bedeutete SSO möglicherweise, dass ein gemeinsamer Satz von Anmeldeinformationen auf mehreren Systemen verwendet wurde (möglicherweise mit einem asynchronen Kennwortsynchronisierungssystem). Diese Anmeldeinformationen mussten jedoch vom Benutzer angegeben werden, um sich bei jedem einzelnen System anzumelden In einigen Kontexten ist dies wahrscheinlich immer noch der Fall.
  • Föderation wie unten beschrieben.

Single Sign On (SSO) befasst sich mit der Authentifizierung und der technischen Interoperabilität der beteiligten Akteure, um systemübergreifend die gemeinsamen Anmeldeinformationen bereitzustellen.

Eine Directory Server-basierte SSO-Lösung für mehrere Anwendungen sieht in etwa wie im folgenden Diagramm aus.

SSO über einen gemeinsamen Verzeichnisserver

Ein weiteres SSO-Beispiel sind N Service Provider (SPs) in einer Organisation, die einem einzelnen Identity Provider (IdP) vertrauen (dies ist eigentlich ein Identitätsverbund, siehe nächster Abschnitt).

N SPs, die einem einzelnen IdP vertrauen

Föderation

Federated Identity Management ist eine Unterdisziplin von IAM, wird jedoch in der Regel von denselben Teams unterstützt. Föderation ist eine Art von SSO, bei der die Akteure mehrere Organisationen und Sicherheitsdomänen umfassen.

Aus der WS-Federation-Spezifikation (eines der zahlreichen SSO-Protokolle, die den Verbund ermöglichen) geht hervor, dass das Ziel des Verbunds darin besteht, die Freigabe von Sicherheitsprinzipalidentitäten und -attributen über Vertrauensgrenzen hinweg gemäß festgelegten Richtlinien zu ermöglichen. Dies ist eine gute Beschreibung von Verband im Allgemeinen; Dazu gehören gemeinsame Standards und Protokolle zum Verwalten und Zuordnen von Benutzeridentitäten zwischen Identitätsanbietern in verschiedenen Organisationen (und Sicherheitsdomänen) über Vertrauensbeziehungen (in der Regel über digitale Signaturen, Verschlüsselung und PKI hergestellt). Föderation ist die Vertrauensbeziehung, die zwischen diesen Organisationen besteht. Es geht darum, wo die Anmeldeinformationen des Benutzers tatsächlich gespeichert werden und wie vertrauenswürdige Dritte sich anhand dieser Anmeldeinformationen authentifizieren können, ohne sie tatsächlich zu sehen.

Die Verbundbeziehung kann über eines von mehreren verschiedenen Protokollen hergestellt werden, einschließlich (aber nicht beschränkt auf):

  • SAML1.1
  • SAML2
  • WS-Federation
  • OAuth2
  • OpenID Connect
  • WS-Trust
  • Verschiedene proprietäre Protokolle

Föderation kann viele Formen annehmen. Innerhalb einer Organisation (Abteilungen, Geschäftsbereiche) könnten die Muster wie folgt aussehen:

  • N Service Provider (SPs) innerhalb einer Organisation, die einem einzelnen Identity Provider (IdP) vertrauen - siehe Diagramm im letzten Abschnitt.
  • N SPs in mehreren Organisationen, die einem einzelnen Drittanbieter-IdP vertrauen
N SPs in mehreren Organisationen, die einem einzelnen Drittanbieter-IdP vertrauen
  • N IDPs innerhalb einer Organisation, denen ein SP vertraut.
N IDPs innerhalb einer Organisation, denen ein SP vertraut
  • N IDPs in einer Organisation, die einem einzelnen IDP vertrauen
N IDPs in einer Organisation, die einem einzelnen IDP vertrauen
  • N SPs (nennen wir sie API-Anbieter) in mehreren Organisationen, die einem einzelnen IDP vertrauen, der dann von einem gemeinsamen System (z. B. einem API-Gateway) als vertrauenswürdig eingestuft wird
N SPs in mehreren Organisationen, die einem einzelnen IDP vertrauen, der wiederum von einem gemeinsamen System (API-Gateway) als vertrauenswürdig eingestuft wird
  • Identity Broker (IdP, der die Beziehungen zwischen verwaltet) mit N SPs und N IdPs, die mehrere Organisationen mit verbundenen Verbundbeziehungen umfassen.
Identity Broker-Muster mit N SPs und N IdPs

Ab 2017 sollte die Endbenutzerauthentifizierung Single Sign On mit einem bekannten Identity Provider-Produkt im Unternehmensbereich umfassen. Das gilt meist auch in anderen Zusammenhängen. Ebenso sollte SSO im Unternehmensbereich mit Akteuren außerhalb der lokalen Organisation Verbundbeziehungen einschließen. Die Verwendung von Verbundbeziehungen zwischen Systemen in verschiedenen Organisationen sollte sinnvoll sein.

Bild: Subway of Life 8/52 / Dennis Skley