XFA über MDM vorinstallieren Enterprise plan
XFA ist dafür gemacht, vom Team selbst installiert zu werden, das Sie absichern wollen. Die Leute installieren es selbst, nach einer Einladung über Awareness oder bei einer Anmeldung, die durch Enforcement geschützt ist. Für die meisten Organisationen ist das der gesamte Rollout.
Eine Organisation, die ihre Geräte bereits zentral betreut, kann XFA stattdessen über ein MDM vorinstallieren und verbinden, sodass es bereitsteht, sobald sich jemand anmeldet. Das funktioniert mit Intune, Configuration Manager, Jamf oder jedem anderen System, das ein Paket installieren und einen Befehl als angemeldeter Benutzer ausführen kann.
Wann Sie vorinstallieren
Installieren Sie vorab, wenn einer dieser Punkte zutrifft:
- Sie betreuen diese Geräte bereits zentral, und XFA zu einem bestehenden Rollout hinzuzufügen ist weniger Aufwand, als die Leute darum zu bitten, es selbst zu installieren.
- Sie wollen die Checks von XFA vom ersten Tag an, ohne darauf zu warten, dass jede Person eine Einladung annimmt. Das hilft, wenn die Checks den Zugriff auf etwas steuern.
- Sie lösen sich von MDM-basierten Zugriffsregeln und wollen die Gerätechecks von XFA neben Ihrem MDM laufen lassen, bevor Sie sich auf sie verlassen. Beginnen Sie mit Von einem MDM zu XFA wechseln.
Trifft nichts davon zu, ist eine Einladung schneller eingerichtet und leichter rückgängig zu machen.
XFA neben Ihrem MDM betreiben
XFA läuft neben Ihrem MDM und tritt nicht in Konkurrenz dazu.
- XFA greift nicht in das Betriebssystem ein. Es setzt keine Einstellungen, verteilt keine Richtlinien und löscht keine Geräte. Es prüft den Sicherheitsstatus des Geräts und kann den Benutzer warnen oder den Zugriff auf geschützte Anwendungen blockieren. Ihr MDM macht weiter, was es bisher macht.
- Es installiert sich für den Benutzer, nicht für die Maschine, und braucht auf dem Gerät selbst keine Administratorrechte. Die Verteilung über Ihr MDM ist bequem, aber nicht nötig. Dasselbe Paket installiert sich auch, wenn eine Person es herunterlädt.
- Es muss nicht Ihr einziger Agent sein. Ein Gerät kann von Ihrem MDM verwaltet und gleichzeitig von XFA geprüft werden; XFA meldet, was es findet, statt einzugreifen.
- Ein Gerät kann zu mehr als einer Organisation gehören. Eine Organisation zu entfernen lässt die anderen unberührt, und deshalb entfernt das Offboarding eine Affiliation und nicht die Anwendung.
Der Installationsbefehl
Welches System Sie auch nutzen, das ist der Befehl, den es ausführt.
Unter Windows ist das Enrollment-Token eine ganz normale MSI-Eigenschaft:
msiexec /i XFA.msi /qn ENROLLMENT_TOKEN=<your-enrollment-token>
Das ist der komplette Befehl für eine ganze Flotte. XFA liest die Adresse jedes Geräts aus dem Verzeichnis, am Befehl ändert sich also pro Person nichts.
EMAIL ist eine optionale zweite Eigenschaft für die Installation auf einem einzelnen Gerät, bei dem Sie wissen, wem es gehört. Sie setzt genau eine Adresse, ein Rollout über die Flotte würde damit also jedes Gerät als diese Person verbinden:
msiexec /i XFA.msi /qn ENROLLMENT_TOKEN=<your-enrollment-token> EMAIL=person@example.com
Unter macOS kann ein Paket keine Argumente entgegennehmen, deshalb wird das Token stattdessen über ein Konfigurationsprofil mit der Preference-Domain com.xfa.desktop und dem Schlüssel EnrollmentToken ausgeliefert. Email ist ein optionaler zweiter Schlüssel. Verteilen Sie XFA.pkg zusammen damit.
Installieren Sie, solange die Person angemeldet ist. Das Paket installiert als root, wie jedes macOS-Paket, und übergibt die Anwendung dann an denjenigen, der gerade an der Konsole sitzt. Ein Mac, der am Anmeldefenster steht, bekommt so eine Anwendung, die root gehört und die sein Benutzer weder starten noch aktualisieren kann. Nutzen Sie in Jamf den Trigger Login. Weisen Sie die App in Intune einer Benutzergruppe statt einer Gerätegruppe zu, damit sie installiert wird, während diese Person angemeldet ist.
Kann Ihr System eines von beidem, kann es XFA verteilen, auch wenn es unten nicht aufgeführt ist.
Pakete
| Paket | Plattform |
|---|---|
| XFA.msi | Windows, x64 und ARM64 |
| XFA-arm64.msi | Windows, nur natives ARM64 |
| XFA.pkg | macOS, Apple Silicon und Intel |
Nutzen Sie XFA.msi für alle Windows-Geräte. Auf ARM64 läuft es per Emulation, und XFA ersetzt sich automatisch durch die native Version. Verteilen Sie XFA-arm64.msi nur an eine ARM64-Gerätegruppe, wenn Sie von der ersten Minute an nativ laufen wollen.
Diese Links zeigen immer auf die aktuelle Version, Ihr Rollout muss also nicht angepasst werden, wenn XFA eine neue Version veröffentlicht.
Die Pakete sind signiert, und der Signierende ist bei jeder Version derselbe. Prüft Ihr Werkzeug den Herausgeber, legen Sie die Identität von XFA fest, statt jede gültige Signatur zu akzeptieren:
- macOS:
Developer ID Application: XFA (89ZG68UL25)(Team ID89ZG68UL25). - Windows: das Authenticode-Zertifikat mit
XFAals Subject Common Name. Lesen Sie den vollständigen Herausgeber aus einer heruntergeladenenXFA.msimitGet-AuthenticodeSignature XFA.msiaus und legen Sie ihn fest.
Wählen Sie Ihr System
| System | Plattform | Anleitung |
|---|---|---|
| Microsoft Intune | Windows | Mit Intune verteilen |
| Microsoft Configuration Manager (SCCM) | Windows | Mit Configuration Manager verteilen |
| Jamf Pro | macOS | Mit Jamf Pro verteilen |
| Alles andere | Windows, macOS | Mit jedem anderen System verteilen |
Bevor Sie beginnen
Das Vorinstallieren über ein MDM wird pro Organisation freigeschaltet. Fehlt der Abschnitt XFA über MDM vorinstallieren auf Ihrer Seite mit den Integrationen, bitten Sie XFA, ihn für Ihre Organisation freizuschalten; bis dahin lässt sich kein Enrollment-Token erstellen und Verbindungsversuche werden abgewiesen.
Öffnen Sie Integrationen > XFA über MDM vorinstallieren im XFA-Dashboard und wählen Sie Ihr System. Das Dashboard erstellt das Enrollment-Token, sobald ein Administrator eine dieser Anleitungen zum ersten Mal öffnet, und zeigt den fertigen Befehl mit dem Token darin.
Es gibt ein Enrollment-Token pro Organisation, das sich alle Rollouts teilen. Behandeln Sie es wie ein Geheimnis und beschränken Sie den Zugriff auf die Richtlinie, die es enthält. Wird es erneuert, funktioniert kein kopierter Befehl mit dem alten Token mehr; bereits verbundene Geräte sind davon nicht betroffen.
Wie XFA den Benutzer bestimmt
XFA ist eine Anwendung pro Benutzer. Verteilen Sie sie an Benutzer und installieren Sie sie, während dieser Benutzer angemeldet ist.
Kein MDM übergibt die E-Mail-Adresse des zugewiesenen Benutzers an einen Installationsbefehl, deshalb ermittelt XFA sie auf dem Gerät. Es nimmt die erste dieser Quellen, die eine gültige E-Mail-Adresse liefert:
Windows
| Reihenfolge | Quelle | Wann sie gilt |
|---|---|---|
| 1 | Die übergebene Eigenschaft EMAIL | Nur bei der Installation auf einem einzelnen Gerät. Sie setzt genau eine Adresse und gehört daher nicht in ein Rollout über die Flotte. |
| 2 | Das Attribut mail in Active Directory | Domänengebundene Geräte, die einen Domänencontroller erreichen. Das ist die echte E-Mail-Adresse der Person. |
| 3 | Der User Principal Name des Kontos | Mit Entra verbundene Geräte, bei denen der Principal Name die E-Mail-Adresse ist. |
macOS
| Reihenfolge | Quelle | Wann sie gilt |
|---|---|---|
| 1 | Der Schlüssel Email im Konfigurationsprofil | Immer, wenn das Profil einen enthält. Das Profil, das das XFA-Dashboard erzeugt, nutzt die eigene Variable Ihres MDM ($EMAIL bei Jamf, {{mail}} bei Intune), die E-Mail-Adresse kommt also aus dem System, das sie ohnehin kennt. |
| 2 | Der Eintrag EMailAddress im lokalen Verzeichnis | Macs, die an einen Verzeichnisdienst gebunden sind. Die meisten sind es nicht. |
Liefert keine davon eine gültige E-Mail-Adresse, hält XFA an, statt zu raten. Unter Windows meldet Ihr Rollout einen Fehler, und %TEMP%\xfa\xfa-enrollment.log auf dem Gerät nennt den Schritt, an dem keine Quelle mehr übrig war. Unter macOS steht dasselbe in /tmp/xfa/xfa-enrollment.log.
Active Directory wird vor dem Principal Name geprüft, weil beide oft auseinandergehen. Eine Endung wie someone@corp.local ist für XFA eine gültige Adresse, sie zuerst zu nehmen würde also Geräte unter Identitäten verbinden, die niemand nutzt, und nichts würde darauf hinweisen. Entra-Konten nutzen die Adresse als Principal Name, dort stimmen beide überein.
Weder Jamf noch Intune prüft, ob die Profilvariable ersetzt wurde. Wurde sie es nicht, kommt der wörtliche Text statt einer Adresse an. XFA verwirft alles, was keine Adresse ist, und greift auf die nächste Quelle zurück, statt ein Gerät als {{mail}} zu verbinden.
XFA von einem zentral betreuten Gerät entfernen
Um nur diese Organisation zu entfernen und XFA installiert zu lassen, führen Sie als angemeldeter Benutzer aus:
xfa unenroll --organization-id <organization-id>
Das entfernt nur diese Organisation, lässt jede andere Affiliation bestehen und gelingt auch, wenn die Affiliation schon weg ist.
Um auch die Anwendung zu entfernen, folgen Sie dem Schritt zur Deinstallation in der Anleitung Ihrer Plattform oben. Unter Windows liefern diese Anleitungen ein uninstall-xfa.ps1, das XFA über seinen festen UpgradeCode entfernt, denn der Product Code von XFA ändert sich, während es sich selbst aktualisiert, und ein einfaches msiexec /x XFA.msi passt dann nicht mehr zur installierten Version. Unter macOS entfernen Sie XFA.app. Eine einfache Deinstallation entfernt die gemeinsam genutzte Anwendung, ohne die Verbindung zu lösen. Gehört das Gerät also noch zu einer anderen Organisation, lösen Sie zuerst die Verbindung und lassen die Anwendung stehen: xfa enrollment-status liefert den Exit-Code 0, solange noch eine Affiliation besteht, und 10, sobald das Entfernen sicher ist. Entfernen Sie unter macOS zuerst das Konfigurationsprofil, sonst verbindet sich das Gerät beim nächsten Start von XFA erneut daraus.
Was auf dem Gerät passiert
- Das Paket installiert sich für den angemeldeten Benutzer.
- XFA verbindet diesen Benutzer mit Ihrer Organisation, über das Token, das Sie übergeben haben.
- XFA startet sofort (ohne Abmelden, ohne Neustart) und trägt sich so ein, dass es künftig mit dem Gerät startet.
- Das Gerät erscheint auf Ihrer Seite Geräte, und XFA hält sich von da an ohne weiteren Rollout selbst aktuell.
Auf dem Bildschirm des Benutzers erscheint nichts. Das übliche Fenster beim ersten Start wird bei einer verteilten Installation bewusst unterdrückt, ein Rollout über eine ganze Flotte bleibt für die Betroffenen also unsichtbar.
Ergebniscodes
Das sind die eigenen Ergebniscodes von XFA beim Verbinden. Sie sehen sie direkt, wenn Sie den Enroll-Befehl selbst ausführen. Über ein MDM sehen Sie meist nur, ob die Installation gelungen oder fehlgeschlagen ist, und der passende Grund wird auf dem Gerät nach %TEMP%\xfa\xfa-enrollment.log geschrieben.
| Code | Bedeutung | Was zu tun ist |
|---|---|---|
| 0 | Verbunden, oder bereits verbunden | Nichts |
| 1 | Der Befehl war falsch, oder es gab keine nutzbare E-Mail-Adresse | Befehl korrigieren; ein erneuter Versuch hilft nicht |
| 2 | Das Enrollment-Token wurde abgelehnt | Im XFA-Dashboard neu ausstellen |
| 3 | XFA war nicht erreichbar | Später erneut versuchen |
| 4 | Lokal ist etwas schiefgegangen: Die Zugangsdaten konnten nicht gespeichert werden, XFA konnte nach dem Verbinden nicht gestartet werden, oder das Gerät beansprucht eine Organisation, zu der es nicht mehr gehört | Erneut versuchen; hält es an, wenden Sie sich an den Support |
| 5 | Die eigenen Zugangsdaten dieses Geräts wurden abgelehnt | Wenden Sie sich an den Support; am Token liegt es nicht |
| 6 | Die Installation lief im Systemkontext statt im Kontext des angemeldeten Benutzers | Verteilen Sie an Benutzer, nicht an Geräte. Führen Sie es auf einem Mac als angemeldeter Benutzer aus: Ein Jamf-Policy-Skript läuft als root, und root hat kein eigenes XFA |
Über die MSI läuft das Verbinden als letzter Schritt der Installation mit Return="check", ein Ergebnis ungleich null lässt die Installation also fehlschlagen: Das MDM meldet einen Fehler (einen allgemeinen Installationsfehler wie 1603, nicht den konkreten Code oben), statt still durchzugehen und ein Gerät zu hinterlassen, das installiert hat, ohne Ihrer Organisation beizutreten. Den eigentlichen Grund lesen Sie in %TEMP%\xfa\xfa-enrollment.log. Weil das Verbinden läuft, wenn die Installation bereits abgeschlossen ist, bleibt XFA in beiden Fällen installiert, der Benutzer hat also weiterhin eine funktionierende Anwendung, die er selbst verbinden kann.
Fehlersuche
| Was Sie sehen | Was es bedeutet |
|---|---|
| Der Rollout war erfolgreich, aber es erscheint kein Gerät | Es hat für das falsche Konto installiert. Unter Windows liegt das am Installationskontext: Es muss für den angemeldeten Benutzer installieren, nicht für die Maschine. |
| Exit-Code 2 | Das Token wurde abgelehnt. Stellen Sie es im Dashboard neu aus und aktualisieren Sie den Rollout. Ein Erneuern macht jeden Befehl mit dem alten Token ungültig. |
| Exit-Code 1 mit einem Hinweis auf eine E-Mail-Adresse | XFA hat für dieses Konto keine Adresse gefunden. Pflegen Sie in einer domänengebundenen Flotte mail in Active Directory für diese Benutzer. Fügen Sie EMAIL nicht zu einem Rollout über die Flotte hinzu: Es setzt eine Adresse für alle, die es erreicht. |
| Geräte sind unter Adressen verbunden, die niemand kennt | Active Directory hat für diese Konten kein mail, also ist XFA auf den User Principal Name zurückgefallen, der in Ihrem Verzeichnis eine Endung wie corp.local statt einer E-Mail-Adresse ist. Pflegen Sie mail; XFA bevorzugt es. |
| Der Mac hat XFA, verbindet sich aber nie | Das Profil gilt nicht für ihn oder trägt eine andere Preference-Domain. Sie muss com.xfa.desktop mit dem Schlüssel EnrollmentToken sein. |
| Ein Gerät ist mit der falschen Organisation verbunden | Führen Sie xfa unenroll --organization-id <id> als dieser Benutzer aus und verteilen Sie dann mit dem richtigen Token erneut. |
Um ein Gerät zu fragen, womit es sich verbunden glaubt, führen Sie xfa enrollment-status als angemeldeter Benutzer aus: Exit-Code 0 heißt verbunden, 10 heißt nicht verbunden. Es liest lokale Zugangsdaten, braucht also kein Netzwerk und keine Administratorrechte.
Starten Sie es unter Windows und warten Sie darauf: XFA ist eine Fensteranwendung, eine Shell kehrt also sofort zurück und bekommt den Exit-Code nie zu sehen. Die Befehle von Hand auszuführen zeigt, wie das geht, und nennt die Logdatei, die sagt, warum ein Verbinden fehlgeschlagen ist: %TEMP%\xfa\xfa-enrollment.log.