System-Erweiterungen
Mit der Konfiguration System-Erweiterungen wird festgelegt, welche Systemerweiterungen auf verwalteten Macs ohne Bestätigung durch den Benutzer geladen werden dürfen, welche Arten von Erweiterungen ein Hersteller installieren darf und welche Erweiterungen vor dem Deaktivieren oder Entfernen geschützt sind. Relution überträgt die Einstellungen als Profil mit dem Payload-Typ com.apple.system-extension-policy.
Systemerweiterungen laufen anders als Kernel-Erweiterungen (KEXTs) außerhalb des Kernels und lösen diese laut Apple seit macOS 10.15 schrittweise ab. Typische Beispiele sind VPN-Clients, Inhaltsfilter, Virenscanner und Treiber für Peripheriegeräte. Für Erweiterungen, die weiterhin als KEXT ausgeliefert werden, ist die Konfiguration Kernel-Erweiterungen → zuständig.
Voraussetzungen
- Die Konfiguration ist einmal pro Richtlinie möglich.
- Sie steht nur für Geräte mit Geräteregistrierung zur Verfügung, nicht für Geräte mit Benutzer-Einschreibung →.
- Die Konfiguration richtet sich an Macs ab macOS 10.15. Einzelne Optionen wertet macOS erst ab neueren Versionen aus (siehe die jeweiligen Abschnitte).
- Ein überwachtes Gerät ist nicht erforderlich.
Allgemein
Im Abschnitt Allgemein stehen folgende Optionen zur Verfügung. In Klammern steht jeweils der Schlüssel im Profil.
- Freigabe von Systemerweiterungen durch den Benutzer (
AllowUserOverrides, Standardwert: aktiv): Ist die Option aktiv, kann der Benutzer zusätzlich Systemerweiterungen freigeben, die nicht ausdrücklich über die Konfiguration erlaubt sind. Ist sie nicht aktiv, kann der Benutzer keine Systemerweiterungen freigeben, die nicht über ein Konfigurationsprofil erlaubt sind. Der Wert wird immer übertragen. - Erlauben Sie alle Systemerweiterungen, die mit diesen Teamidentifikatoren signiert sind (
AllowedTeamIdentifiers): Liste von Teamkennungen. Alle gültig signierten Systemerweiterungen dieser Hersteller sind ohne weitere Angabe erlaubt.
Eine Teamkennung darf entweder unter Erlauben Sie alle Systemerweiterungen, die mit diesen Teamidentifikatoren signiert sind oder im Abschnitt Erlaubte Systemerweiterungen stehen, nicht in beiden. Andernfalls erscheint der Hinweis In den zulässigen Teambezeichnern und den zulässigen Systemerweiterungen kann nicht derselbe Teambezeichner definiert sein. und die Konfiguration lässt sich nicht speichern.
Listen mit Team Kennung und Bundle IDs
Die Abschnitte Erlaubte Systemerweiterungen, Systemerweiterungen, die nicht aus der Benutzeroberfläche entfernt werden können, Systemerweiterungen, die nicht entfernt werden können und Systemerweiterungen, die entfernt werden können sind gleich aufgebaut. Jeder Eintrag ordnet einer Team Kennung eine Liste von Bundle IDs zu.
Über Hinzufügen öffnet sich der Dialog Neue Zuordnung der Team-Kennung hinzufügen mit folgenden Feldern:
- Team Kennung (Pflichtfeld): Teamkennung des Herstellers, mit der die Erweiterung signiert ist, z. B.
ABCDE12345. - Bundle IDs: Liste der Bundle-IDs der Systemerweiterungen dieses Herstellers, z. B.
com.example.app.network-extension.
Über das Kontextmenü eines Eintrags stehen Bearbeiten und Löschen zur Verfügung. Jede Teamkennung kann pro Abschnitt nur einmal angelegt werden; ein zweiter Eintrag wird mit dem Hinweis Die Team-Kennung existiert bereits abgelehnt. Weitere Bundle-IDs werden deshalb im bestehenden Eintrag ergänzt. Bleibt ein Abschnitt leer, wird der zugehörige Schlüssel nicht übertragen.
Erlaubte Systemerweiterungen
Schlüssel AllowedSystemExtensions. Einzelne Systemerweiterungen eines Herstellers werden über Teamkennung und Bundle-ID erlaubt. Diese Variante ist enger gefasst als die pauschale Freigabe über die Teamkennung im Abschnitt Allgemein.
Systemerweiterungen, die nicht aus der Benutzeroberfläche entfernt werden können
Schlüssel NonRemovableFromUISystemExtensions. Die eingetragenen Systemerweiterungen können laut Apple nicht über die Systemeinstellungen oder den Finder deaktiviert oder deinstalliert werden. macOS wertet den Schlüssel laut Apple ab macOS 15 aus.
Systemerweiterungen, die nicht entfernt werden können
Schlüssel NonRemovableSystemExtensions. Die eingetragenen Systemerweiterungen können laut Apple nicht deaktiviert oder deinstalliert werden, solange der Systemintegritätsschutz (SIP) aktiv ist. macOS wertet den Schlüssel laut Apple ab macOS 15 aus.
Systemerweiterungen, die entfernt werden können
Schlüssel RemovableSystemExtensions. Die eingetragenen Systemerweiterungen dürfen sich selbst entfernen: Eine App kann sie über die Schnittstelle OSSystemExtensionDeactivationRequest deaktivieren, ohne dass ein Administrator den Vorgang bestätigt. macOS wertet den Schlüssel ab macOS 12 aus.
Widersprüchliche Einträge
Derselbe Eintrag (gleiche Team Kennung mit denselben Bundle IDs) darf nicht gleichzeitig in zwei der folgenden Abschnitte stehen. Relution zeigt in diesem Fall einen Hinweis an und speichert die Konfiguration nicht:
- Systemerweiterungen, die nicht entfernt werden können und Systemerweiterungen, die entfernt werden können: Hinweis Die gleiche Team- und Bundle-Kennung kann nicht in den entfernbaren Systemerweiterungen und den nicht entfernbaren Systemerweiterungen definiert werden.
- Systemerweiterungen, die nicht entfernt werden können und Systemerweiterungen, die nicht aus der Benutzeroberfläche entfernt werden können: Hinweis Der gleiche Team- und Bündelbezeichner kann nicht in den nicht entfernbaren Systemerweiterungen der Benutzeroberfläche und den nicht entfernbaren Systemerweiterungen definiert werden.
Erlaubte Systemerweiterungstypen
Schlüssel AllowedSystemExtensionTypes. In diesem Abschnitt wird je Teamkennung festgelegt, welche Arten von Systemerweiterungen der Hersteller installieren darf. Über Hinzufügen öffnet sich ein Dialog mit folgenden Feldern:
- Team Kennung (Pflichtfeld): Teamkennung des Herstellers.
- Erlaubte Erweiterungsarten (Pflichtfeld, Mehrfachauswahl):
- Treiber (
DriverExtension): Treibererweiterungen für Hardware, z. B. auf Basis von DriverKit. - Netzwerk (
NetworkExtension): Netzwerkerweiterungen, z. B. für VPN-Clients oder Inhaltsfilter. - Endpunktsicherheit (
EndpointSecurityExtension): Erweiterungen für Sicherheitssoftware, z. B. Virenscanner.
- Treiber (
Auch hier ist jede Teamkennung nur einmal möglich. Bleibt der Abschnitt leer, wird der Schlüssel nicht übertragen und Relution schränkt die Erweiterungsarten nicht ein.
Teamkennung und Bundle-ID auslesen
Auf einem Mac, auf dem die Erweiterung bereits installiert ist, listet der Befehl systemextensionsctl list im Terminal alle Systemerweiterungen mit Teamkennung und Bundle-ID auf:
systemextensionsctl list
In der Ausgabe steht je Erweiterung die Teamkennung in der Spalte teamID und die Bundle-ID in der Spalte bundleID. Viele Hersteller nennen beide Werte außerdem in ihrer Dokumentation für MDM-Lösungen.
Besonderheiten
- Relution Decon: Ist auf einem Mac eine Konfiguration Relution Decon → aktiv, ergänzt Relution beim Übertragen die Teamkennung
6YCL5AN4F4unterAllowedTeamIdentifiers, damit die Netzwerkerweiterung von Decon laden kann. Enthält keine der Richtlinien des Geräts eine Konfiguration System-Erweiterungen, erzeugt Relution selbst eine mit dieser Teamkennung; Freigabe von Systemerweiterungen durch den Benutzer ist darin nicht aktiv. - Apple Configurator 2: Enthält eine Richtlinie bereits eine Apple-Configurator-2-Konfiguration mit dem Payload-Typ
com.apple.system-extension-policy, lässt sich die Konfiguration System-Erweiterungen dort nicht mehr hinzufügen, und umgekehrt (siehe Apple Configurator 2 Konfiguration →). - Herstellerverhalten: Wie macOS mehrere Profile mit diesem Payload-Typ zusammenführt und wann eine bereits geladene Erweiterung neu bewertet wird, entscheidet Apple.
Verwandte Themen
- Kernel-Erweiterungen → — Freigabe von Kernel-Erweiterungen (KEXTs), die nicht als Systemerweiterung vorliegen.
- Relution Decon (Inhaltsfilter) → — Inhaltsfilter, dessen Systemerweiterung Relution automatisch freigibt.
- Verfügbare Konfigurationen → — Alle Konfigurationen für macOS im Überblick.
- Apple Configurator 2 Konfiguration → — Eigene Profile mit Payloads, die Relution nicht als Formular anbietet.