Zum Hauptinhalt springen

macOS-Dienstkonto

How the Level service account works on Apple Silicon Macs, why it exists, and how to manage it manually.

Einführung

Auf Apple Silicon Macs (M1/M2/M3) erstellt Level ein dediziertes Dienstkonto zur Unterstützung des Patch-Managements. Dieses Konto ist erforderlich, damit Level FileVault entsperren und Updates ohne eine interaktive Benutzersitzung installieren kann.

Es wird automatisch während der Agent-Installation erstellt. Wenn Sie die Eingabeaufforderung bei der Installation übersprungen haben oder es später verwalten möchten, können Sie dies über die Befehlszeile tun.


Was das Dienstkonto ist

Das Level-Dienstkonto ist ein Systemkonto mit einem einzigen Zweck: der Installation von Updates. Es ist in keiner praktischen Hinsicht ein Benutzerkonto.

  • Keine Administratorrechte

  • Keine Anmelderechte (kein Home-Verzeichnis, keine Shell)

  • Im Anmeldefenster und unter „Benutzer & Gruppeneinstellungen

  • Wenn FileVault aktiviert ist, ist das Konto beim Start sichtbar und kann das Laufwerk entsperren

  • Wird automatisch entfernt, wenn der Level-Agent deinstalliert wird

ℹ️ HINWEIS: Das Dienstkonto ist ausschließlich für Apple Silicon. Intel Macs benötigen es nicht, da der Patch-Management-Ablauf auf Intel kein Entsperren von FileVault beim Start erfordert.


Manuelle Einrichtung

Wenn das Dienstkonto nicht während der Installation erstellt wurde, führen Sie diesen Befehl auf dem Zielgerät aus:

/usr/local/bin/level --create-service-account

Sie werden nach einem Administrator-Benutzernamen und -Passwort gefragt. Diese Anmeldedaten gehören zu einem vorhandenen Systemadministrator auf dem Gerät — sie werden verwendet, um die Erstellung des Dienstkontos zu autorisieren, nicht um dessen Passwort festzulegen.

💡 TIPP: Für skriptbasierte oder MDM-basierte Einrichtung übergeben Sie die Anmeldedaten als Flags, um die interaktive Eingabeaufforderung zu überspringen:

Beispiel

/usr/local/bin/level --create-service-account --admin-name=adminuser --admin-password=adminpass

CLI-Referenz

ℹ️ HINWEIS: Alle Dienstkonto-Optionen sind ausschließlich für Apple Silicon. Das Ausführen auf einem Intel Mac hat keine Auswirkungen.

Alle Optionen erfordern den vollständigen Pfad zur Level-Agent-Binärdatei: /usr/local/bin/level

Option

Beschreibung

--check-service-account

Prüft, ob ein Level-Dienstkonto auf diesem Gerät vorhanden ist

--create-service-account

Erstellt ein neues Level-Dienstkonto

--delete-service-account

Entfernt das Level-Dienstkonto

--admin-name=

Administrator-Benutzername für --create-service-account (nicht interaktiv)

--admin-password=

Administrator-Passwort für --create-service-account (nicht interaktiv)

⚠️ WARNUNG: Das Löschen des Dienstkontos mit --delete-service-account verhindert, dass Level Updates auf diesem Gerät installiert, bis das Konto neu erstellt wird.


macOS Secure Tokens

Warum schlägt --create-service-account mit „The provided admin credentials are valid, but the account lacks a secure token" fehl?

Auf Apple Silicon Macs (und Intel Macs mit FileVault) erfordert macOS, dass das Administratorkonto, das die Erstellung eines anderen Kontos autorisiert, einen SecureToken. Das Level-Dienstkonto benötigt einen SecureToken, damit es FileVault beim Start entsperren kann, und Apple erlaubt einem Administrator ohne SecureToken nicht, einem anderen Konto einen Token zu erteilen. Wenn die Administratoranmeldedaten, die Sie an --create-service-account keinen SecureToken haben, schlägt der Agent mit diesem Fehler fehl obwohl diese Anmeldedaten ansonsten gültige Administratoranmeldedaten sind.

Dies tritt am häufigsten auf, wenn das Administratorkonto durch eine Jamf PreStage-Registrierung (oder eine andere MDM-Vorabregistrierung) ohne Bootstrap-Token-Hinterlegung erstellt wurde — diese Konten sind echte Administratoren, erhalten aber nicht automatisch einen SecureToken.

Wie überprüfe ich, ob ein Administratorkonto einen SecureToken besitzt?

sysadminctl -secureTokenStatus <adminuser>

Wenn die Ausgabe ENABLEDkann dieses Konto --create-service-account. Wenn es DISABLEDmüssen Sie entweder einen anderen Administrator verwenden oder diesem zuerst einen SecureToken erteilen.

Wie erhalte ich einen SecureToken für das Administratorkonto, das ich verwenden möchte?

Es gibt drei gängige Vorgehensweisen, abhängig vom Zustand des Geräts:

  1. Setup-Assistent (am saubersten, für neue Geräte). Der erste interaktive Benutzer durch den Setup-Assistenten erhält automatisch einen SecureToken. Wenn das der Administrator ist, den Sie für die Level-Bereitstellung verwenden möchten, ist keine weitere Aktion erforderlich.

  2. Bootstrap-Token über MDM (empfohlen für Flottenbereitstellungen). Konfigurieren Sie die Vorabregistrierung Ihres MDM so, dass ein Verwaltetes lokales Administratorkonto mit aktivierter Bootstrap-Token-Hinterlegung. In Jamf wird dies in der PreStage-Registrierung unter Kontoeinstellungen. Das MDM erteilt diesem Administrator dann bei der Registrierung einen SecureToken, und Sie können seine Anmeldedaten an --create-service-account nicht interaktiv.

  3. Token von einem vorhandenen SecureToken-Inhaber erteilen. Wenn das Gerät bereits ein anderes Konto mit einem SecureToken hat (oft das ursprüngliche Endbenutzerkonto), verwenden Sie es einmalig, um Ihrem Administrator einen Token zu erteilen:

    sudo sysadminctl -secureTokenOn <adminuser> -password <adminpw> \
    -adminUser <tokenholder> -adminPassword <tokenholderpw>


    Danach <adminuser> wird einen SecureToken haben und für --create-service-account zukünftig verwendet werden kann.

Ich habe eine Flotte ohne einen Administrator mit SecureToken bereitgestellt. Was nun?

Führen Sie für jedes Gerät sysadminctl -secureTokenStatus für die lokalen Administratorkonten aus, um eines zu finden, das einen SecureToken hat (häufig der ursprüngliche Setup-Assistenten-Benutzer). Verwenden Sie dieses Konto, um entweder --create-service-account direkt auszuführen oder Ihrem Standard-Bereitstellungsadministrator einen SecureToken zu erteilen (Option 3 oben), damit zukünftige Vorgänge nicht interaktiv sind. Beheben Sie bei neuen Registrierungen das zugrunde liegende Problem, indem Sie die Bootstrap-Token-Hinterlegung in der MDM-Vorabregistrierung aktivieren.

Gilt das auch für Intel Macs?

Ja, auf jedem Mac mit aktiviertem FileVault. Auf Apple Silicon ist SecureToken unabhängig vom FileVault-Status praktisch erforderlich. Das Symptom und die Lösung sind auf beiden Architekturen identisch.

Falls gewünscht, kann ich auch einen Docs-PR mit diesem FAQ-Abschnitt im jeweiligen Repo/CMS öffnen, das den Artikel hostet — zeigen Sie mir einfach, wo.


Häufig gestellte Fragen

  • Warum benötigt Level ein Dienstkonto nur zum Installieren von Updates? macOS erfordert, dass FileVault entsperrt ist, bevor das System beim Start Updates installieren kann. Das Dienstkonto gibt Level eine Möglichkeit, diese Entsperrung ohne eine interaktive Benutzersitzung durchzuführen.

  • Werden meine Benutzer dieses Konto sehen? Nein. Das Dienstkonto ist im Anmeldefenster und unter Systemeinstellungen → Benutzer & Gruppen. Es erscheint nur auf dem FileVault-Entsperrbildschirm beim Start auf Geräten mit aktiviertem FileVault.

  • Ich habe die Anmeldedaten-Eingabeaufforderung während der Installation abgewiesen. Muss ich das Konto einrichten? Nur wenn Sie möchten, dass Level das Patch-Management auf diesem Gerät übernimmt. Führen Sie --create-service-account manuell einrichten oder über Ihr Bereitstellungswerkzeug verteilen. Überwachung, Fernsteuerung und andere Funktionen funktionieren ohne es.

  • Kann ich die Erstellung von Dienstkonten im großen Maßstab automatisieren? Ja — verwenden Sie --admin-name= und --admin-password= Flags, um Anmeldedaten nicht interaktiv zu übergeben. Diese können als Teil eines Post-Installations-Skripts in Ihrem MDM oder Bereitstellungswerkzeug übergeben werden.

  • Was passiert mit dem Dienstkonto, wenn ich Level deinstalliere? Es wird automatisch als Teil des Deinstallationsprozesses entfernt.

Hat dies deine Frage beantwortet?