Verstehen der Phasen der Durchsetzung von Softwareupdates von Apple
Das Erzwingen von Softwareupdates mit MDM enthält folgende fünf Hauptkomponenten:
MDM-Lösung
Gerät
Benutzer:in
Lookup-Dienst der Apple-Software
Apple Softwareupdate-Katalog
Phase 1
Die MDM-Lösung überprüft den Lookup-Dienst der Apple-Software regelmäßig auf neue Versionen. Falls eine neue gefunden wird, wird der Schlüssel SupportedDevices
des Katalogs verwendet und die Version wird mit der Liste der verwalteten Geräte verglichen, um zu bestimmen, bei welchen Geräten diese Version angewendet werden kann.
Die MDM-Lösung sollte zudem die Statusberichte softwareupdate.*
und device.operating-system.*
abonnieren, um automatische Updates abzurufen, wenn sich einer dieser Werte ändert.
Phase 2
Die MDM-Lösung erstellt eine Deklaration com.apple.configuration.softwareupdate.enforcement.specific
mit der erkannten Version und definierte TargetLocalDateTime
sowie optional DetailsURL
entsprechend der Anforderungen der Organisation. Anschließend sendet die MDM-Lösung eine Push-Mitteilung an das Gerät, um die Synchronisierung der Deklarationen anzustoßen. Weitere Informationen erhältst du unter Integrating Declarative Management auf der Apple Developer-Website.
Phase 3
Nachdem die Deklaration auf einem Gerät aktiv ist, wird der Apple Softwareupdate-Katalog kontaktiert, um die Download-URL abzurufen und im Falle, dass die Anforderungen erfüllt sind, anschließend den Download zu starten. Das Gerät zeigt Benutzer:innen im Anschluss die Mitteilung an und gibt folgendes an die MDM-Lösung zurück:
1. Ein Wert für „waiting“ in softwareupdate.install-state
, der anzeigt, dass der Vorgang zum Anfordern des Updates gestartet wurde.
2. Ein Wert für „downloading“ in softwareupdate.install-state
, der anzeigt, dass das Update auf das Gerät geladen wird.
Wenn dem Gerät ein Inhaltscachingdienst zur Verfügung steht, wird versucht, das Softwareupdate aus dem Inhaltscache zu laden.
Nachdem das Gerät das Update erfolgreich geladen hat, bereitet es das Softwareupdate zur Installation vor. Nachdem dieser Vorgang abgeschlossen ist, wird der Wert „prepared“ von softwareupdate.install-state
an die MDM-Lösung zurückgegeben.
Phase 4
Das Gerät befindet sich nun in der Mitteilungsphase. Je nachdem, wann die Installation erfolgen soll, werden in der Mitteilung verschiedene Texte und Optionen angezeigt.
Phase 5
Falls das Update vor dem Durchsetzungszeitpunkt noch nicht installiert wurde, startet das Gerät die Installation und sendet für softwareupdate.install-state
einen Wert für „installing“ an die MDM-Lösung. Bevor die Installation gestartet wird, kontaktieren Macs mit Apple Chips die MDM-Lösung, um ein ggf. verfügbares Bootstrap Token zu erhalten.
Wenn das Update erfolgreich war, wird das Gerät neu gestartet. Wenn das Update fehlschlägt, wird für softwareupdate.install-state
ein Wert von failed
gesendet. In beiden Fällen sendet das Gerät einen Statusbericht für softwareupdate.failure-reason
. Wenn das Update erfolgreich war, beträgt der Wert für den Schlüssel „count“ 0
.
Phase 6
Das Gerät sendet anschließend folgende Informationen an die MDM-Lösung. Je nach Update haben nicht all diese Objekte Werte, die zurückgegeben werden.
StatusDeviceOperatingSystemVersion: Ein Statusbericht mit der Betriebssystemversion des Geräts.
StatusDeviceOperatingSystemBuildVersion: Ein Statusbericht mit der Software-Build-ID des Geräts.
StatusDeviceOperatingSystemSupplementalBuildVersion: Ein Statusbericht mit der Betriebssystemversion des Geräts und Build-ID der schnellen Sicherheitsmaßnahme.
StatusDeviceOperatingSystemSupplementalExtraVersion: Ein Statusbericht der ID der schnellen Sicherheitsmaßnahme des Betriebssystems des Geräts.
Phase 7
Die MDM-Lösung hebt die Zuweisung der Gerätedeklaration auf und sendet eine Push-Mitteilung an das Gerät, damit die Synchronisierung initiiert wird. Nach der Synchronisierung entfernt das Gerät die Deklaration.