Einführung in die Gesamtauthentifizierung mit Apple-Geräten
Organisationen nutzen häufig die Gesamtauthentifizierung (single sign-on, SSO), die dafür entwickelt wurde, das Benutzererlebnis bei der Anmeldung bei Apps und Websites zu optimieren. Durch die Gesamtauthentifizierung wird ein einheitlicher Authentifizierungsprozess für den Zugriff auf mehrere Apps oder Systeme verwendet, bei dem Benutzer ihre Identität nicht erneut nachweisen müssen. Anstatt die Anmeldedaten eines Benutzers (z. B. sein Passwort) zu speichern und es für jede App und jedes System wiederzuverwenden, nutzt SSO das in der ursprünglichen Authentifizierung bereitgestellte Token, was Benutzern den Eindruck eines Einmalpasswort-Konzepts vermittelt.
Die Gesamtauthentifizierung wird beispielsweise durchgeführt, wenn du dich im Unternehmensnetzwerk bei Active Directory anmeldest und dann nahtlos auf deine Unternehmensanwendungen und -websites zugreifen kannst, ohne erneut dein Passwort eingeben zu müssen. Alle Apps und Systeme sind so konfiguriert, dass sie Active Directory bei der Identifizierung von Benutzern und der Bereitstellung von Gruppenmitgliedschaften vertrauen. Gemeinsam bauen sie eine Sicherheitsdomain auf.
Kerberos
Kerberos ist ein beliebtes Authentifizierungsprotokoll für die Gesamtauthentifizierung (SSO) in großen Netzwerken. Es ist auch das Standardprotokoll von Active Directory. Kerberos funktioniert plattformübergreifend, verwendet Verschlüsselung und bietet Schutz vor Replay-Angriffen. Es kann Passwörter, Zertifikatsidentitäten, Smart Cards, NFC-Geräte oder andere Produkte für die Hardware-Authentifizierung zum Authentifizieren von Benutzern verwenden. Der Server, der Kerberos ausführt, wird als KDC (Key Distribution Center) bezeichnet. Apple-Geräte müssen den KDC-Server über eine Netzwerkverbindung kontaktieren, um Benutzer zu authentifizieren.
Kerberos funktioniert in internen oder privaten Netzwerken einer Organisation, da alle Clients und Server eine direkte Verbindung zum KDC aufweisen. Clients, die sich nicht im Unternehmensnetzwerk befinden, müssen ein VPN (Virtual Private Network) verwenden, um eine Verbindung herzustellen und sich zu authentifizieren. Kerberos ist nicht ideal für cloud- oder internetbasierte Apps geeignet. Das liegt daran, dass diese Anwendungen keine direkte Verbindung mit dem Unternehmensnetzwerk nutzen. Für cloud- oder internetbasierte Apps ist die moderne Authentifizierung (siehe unten) geeigneter.
Bei der Integration in eine Active Directory-Umgebung priorisiert macOS Kerberos für alle Authentifizierungsaktivitäten. Wenn sich ein Benutzer mit einem Active Directory-Account bei einem Mac anmeldet, wird ein Kerberos Ticket Granting Ticket (TGT) von einem Active Directory-Domaincontroller angefordert. Wenn der Benutzer in der Folge einen Dienst oder eine App der Domain nutzt, der die Kerberos-Authentifizierung unterstützt, wird anhand des TGT ein Ticket für den betreffenden Dienst angefordert, sodass sich der Benutzer nicht erneut authentifizieren muss. Wenn eine Richtlinie in Kraft ist, die bewirkt, dass zum Beenden des Bildschirmschoners das Passwort eingegeben werden muss, versucht macOS nach einer erfolgreichen Authentifizierung das TGT-Ticket zu erneuern.
Damit Kerberos-basierte Server korrekt funktionieren, müssen die DNS-Datensätze (Domain Name System) für Forward- und Reverse-Lookups exakt sein. Die Systemzeit spielt ebenfalls eine wichtige Rolle, da der Zeitunterschied zwischen einem beliebigen Server und einem Client maximal fünf Minuten betragen darf. Es empfiehlt sich daher, die Uhrzeit und das Datum mithilfe eines NTP-Dienstes (Network Time Protocol) wie time.apple.com automatisch einstellen zu lassen.
Moderne Authentifizierung mit Gesamtauthentifizierung (SSO)
Die moderne Authentifizierung umfasst eine Reihe von Web-basierten Protokollen für die Authentifizierung, die von Cloud-Anwendungen verwendet wird. Hierzu gehören beispielsweise SAML 2.0, OAuth 2.0 (iOS 16, iPadOS 16.1, visionOS 1.1 oder neuer sowie Open ID Connect (OIDC). Diese Protokolle funktionieren über das Internet und die Verbindungen sind mithilfe von HTTPS verschlüsselt. SAML2 wird häufig zum Föderieren zwischen dem Netzwerk einer Organisation und Cloud-Anwendungen verwendet. Für das Überschreiten von vertrauenswürdigen Domains wird die Föderation verwendet, z. B. beim Zugriff auf Cloud-Anwendungen von deinen Domains vor Ort.
Hinweis: Um die Vorteile von OAuth 2.0 zu nutzen, muss die MDM-Lösung die serverseitige Unterstützung von OAuth 2.0 mit dem jeweiligen Identitätsanbieter (IdP), der für die Nutzung mit der Benutzerregistrierung unterstützt werden soll, implementiert werden.
Die Gesamtauthentifizierung mit diesen Protokollen variiert je nach Anbieter und Umgebung. Beispielsweise funktioniert bei der Verwendung von Active Directory Federation Services (AD FS) im Netzwerk einer Organisation AD FS mit Kerberos bei Gesamtauthentifizierung. Bei der Authentifizierung von Clients über das Internet können Browser-Cookies verwendet werden. Protokolle für die moderne Authentifizierung haben keinen Einfluss auf die Methode, die Benutzer zum Nachweis der Identität verwenden. Viele dieser Protokolle werden gemeinsam mit der Multi-Faktor-Authentifizierungsverfahren wie SMS-Codes verwendet, wenn die Authentifizierung auf unbekannten Clients durchgeführt wird. Einige Anbieter stellen Zertifikate auf dem Gerät bereit, um bekannte Geräte zu identifizieren und den Authentifizierungsprozess zu unterstützen.
Identitätsanbieter können die Gesamtauthentifizierung (SSO) in iOS, iPadOS, macOS und visionOS 1.1 durch die Nutzung von Erweiterungen für die Gesamtauthentifizierung unterstützen. Mit diesen Erweiterungen können Identitätsanbieter Protokolle für die moderne Authentifizierung für ihre Benutzer implementieren.
Unterstützte Apps
iOS, iPadOS und visionOS 1.1 bieten flexible Unterstützung für die Gesamtauthentifizierung. Dies gilt für jede App, die die Klasse NSURLSession
bzw. URLSession
für die Verwaltung von Netzwerkverbindungen und die Authentifizierung verwendet. Apple stellt allen Entwicklern diese Klassen zur Verfügung, damit sie Netzwerkverbindungen nahtlos in ihre Apps integrieren können.
Jede Mac-App, die die Kerberos-Authentifizierung unterstützt, kann mit der Gesamtauthentifizierung verwendet werden. Dies gilt für viele der in macOS integrierten Apps (z. B. Safari, Mail und Kalender) und für Dienste wie Dateifreigabe, Bildschirmfreigabe und SSH. Auch viele Apps anderer Hersteller unterstützen Kerberos, zum Beispiel Microsoft Outlook.
Gesamtauthentifizierung konfigurieren
Du kannst die Gesamtauthentifizierung mithilfe von Konfigurationsprofilen konfigurieren, die entweder manuell installiert oder mit einer MDM-Lösung verwaltet werden. Die SSO-Payload ermöglicht eine flexible Konfiguration. Die Gesamtauthentifizierung kann für alle Apps genutzt werden oder alternativ nach App-Kennung und/oder Dienst-URL eingeschränkt werden.
Beim Vergleich eines Musters mit dem Präfix einer angeforderten URL wird ein einfacher Abgleich von Zeichenfolgenmustern verwendet. Dabei müssen die Muster entweder mit https:// oder mit http:// beginnen und sie dürfen keine abweichenden Port-Nummern aufweisen. Endet das URL-Abgleichmuster nicht mit einem Schrägstrich (/), wird ein Schrägstrich angehängt.
Beispielsweise stimmt „https://www.betterbag.com/“ mit „https://www.betterbag.com/index.html“, nicht aber mit „http://www.betterbag.com“ oder „https://www.betterbag.com:443/“ überein.
Ein einzelner Platzhalter kann auch verwendet werden, um fehlende Subdomains anzugeben. So stimmt z. B. „https://*.betterbag.com/“ mit „https://store.betterbag.com/“ überein.
Mac-Benutzer können die Informationen ihrer Kerberos-Tickets mit der App „Ticket-Viewer“ anzeigen und verwalten; diese App befindet sich im Ordner „/System/Library/CoreServices/“. Ergänzende Informationen kannst du durch Klicken auf das Menü „Ticket“ und Auswahl der Option „Diagnose-Informationen“ anzeigen. Sofern es das Konfigurationsprofil zulässt, haben Benutzer außerdem die Möglichkeit, Kerberos-Tickets mit den folgenden Befehlszeilenprogrammen anzufordern, anzuzeigen bzw. zu zerstören: kinit
, klist
und kdestroy
.