Geräte in Windows Autopilot an den Start bringen
Inhaltsverzeichnis

Mit dem nachfolgenden Artikel erhalten Sie eine Möglichkeit Geräte einfacher und schneller als bisher in Windows Autopilot zu registrieren. Sie sparen sich dabei den manuellen Prozess mit der Erstellung und das Hochladen einer CSV-Datei und Automatisieren den Prozess für die zukünftige Anwendung.
Keine Zeit und Lust für eine aufwändige Registrierung von Geräten in Windows Autopilot?
Ich habe nach einer Möglichkeit gesucht wie Geräte oder virtuelle Maschinen in Autopilot ohne Installation oder Zurücksetzen registriert werden können. Es gibt verschiedene Möglichkeiten hierfür. Das Gerät kann manuell in die Website eingetragen werden. Eleganter geht das über die Microsoft Graph API. Es gibt aber auch noch eine dritte Möglichkeit.
Windows Autopilot ist ein Microsoft Azure Dienst mit dem man Geräte mit Identifikatoren registrieren kann. Das funktioniert so ähnlich wie im Apple Device Enrollment Programm. Mit der Registrierung bekommt Microsoft Azure die notwendigen Informationen zur Verwendung der Geräte und Zuweisung von Profilen. Hierzu lässt man ein Script ausführen, das eine CSV-Datei für die Registrierung generiert und lädt diese dann in Windows Autopilot hoch.
Die Registrierung mit einer CSV-Datei zu lösen bringt aber leider einen gewissen Aufwand mit sich. Die CSV muss erstellt, ausgewertet und importiert werden. Gerne würde ich jedoch das Ganze Offline ohne die AzureAutomation lösen, da die Nutzung des Microsoft AzureAutomation Kontos ja auch Geld kostet. Wie kann ich also jemanden einen USB-Stick in die Hand drücken, mit dem dann dann die automatisierte Registrierung ohne Anmeldung in meinem Portal offline per Autopilot erfolgen kann?
Alternative Registrierung mit ScriptRunner in drei Schritten
1. Vorbereitung

- Zuerst habe ich eine Microsoft Azure Enterprise Application mit der Bezeichnung „ScriptRunner-Intune-Connektor“ erstellt.
- Dann habe ich einem Service-Account aus meiner Domäne Zugriff auf Application erteilt.
- Anschließend habe ich einem Service-Account aus meiner Domäne Zugriff auf Application erteilt. Nun ist der Zugang zu Windows Autopilot möglich.
- Damit die Anwendung in die Liste lesen & schreiben darf, habe ich noch die notwendigen Berechtigungen gepflegt.
2. Scripte für ScriptRunner
- Als ScriptRunner Action habe ich ein Script geschrieben, das den „ScriptRunner-Intune-Connektor“ anspricht und mir so die Geräte in Windows Autopilot registriert.
- Damit die MicrosoftGraphAPI die notwendige Information zur Ansprache der Anwendung bekommt wird die ApplicationID verwendet.
Das Script ist so aufgebaut, dass es sich aus dem PSCredential-Objekt einen Usernamen sowie Passwort extrahiert und damit ein Token für die Anwendung generiert. Anschließend wird das Modul „WindowsIntuneAutopilot“ geladen und damit werden die Informationen in Windows Autopilot hinzugefügt.
Die Action wartet nun solange bis das Gerät in der Liste auftaucht und synchronisiert
wurde. Damit wird sichergestellt, dass das Gerät von ScriptRunner richtig in Windows Autopilot importiert wurde.
3. PowerShell-Funktionen zur Automatisierung
Mit den ersten beiden erledigten Abschnitten haben wir jetzt eine ScriptRunner Action die Geräte in Autopilot registrieren kann. Da ich nicht davon ausgehen kann das HardwareHash und Serialnummer dort eingetragen werden können, sind weiterhin manuelle Nacharbeiten notwendig. Wie kann man das besser lösen?

- Ich habe mir eine Powershell Funktion geschrieben, die den ScriptRunner direkt über den Port 8091 anspricht und sozusagen die DelegateApp / AdminApp nachahmt.
- Diese Funktion habe ich in ein Script gepackt damit es vom Client aus ausgeführt werden kann.
- Das Script kann nun mit der Windows Installation-CD auf einen USB-Stick kopiert und nach der Installation direkt aufgerufen werden. Alternativ kann das Script auch beim Hochfahren des Clients direkt bei der Sprachauswahl ausgeführt werden.
#ProTipp: Bei der Sprachauswahl kann man mit „Shift+F10“ einen Commandprompt starten.
Script with PowerShell function for client execution
So sieht der Ablauf aus




ScriptRunner-Rezept als Zusammenfassung
- Eine Microsoft Azure Enterprise Application anlegen
- Der Application Zugriff gewähren
- Berechtigungen zum Lesen & Schreiben einrichten
- ScriptRunner Action für die Registrierung schreiben
- ApplicationID für Ansprache der Anwendung über die Microsoft Graph API verwenden
- PowerShell-Funktion für Delegate/Admin-Ausführung über Port 8091 schreiben und in ein Script packen
- Script auf einen USB-Stick kopieren und ausführen
Fazit
Mit ScriptRunner können Anwender in drei Arbeitschritten Geräte in Windows Autopilot registrieren. Das Erstellen und Hochladen einer CSV-Datei fällt weg. Ohne manuelle Nacharbeiten ist der Ablauf nun recht einfach:
- ein Gerät wird mit Windows 10 installiert/gestartet
- Bei der Sprachauswahl einfach einfach den Command Prompt mit „Shift+F10“ aufrufen
- Jetzt das Script aufrufen und das gewünschte Gerät wird automatisch in Windows Autopilot registriert
Mir hat ScriptRunner bei der Umsetzung geholfen, weil ich meine Geräte ohne viel Aufwand in Windows Autopilot registrieren konnte und nicht mehr viel Zeit bei der Registrierung von Geräte investieren musste.
Zusammenhängende Posts
18 min read
ScriptRunner Ultimate Edition 6 – mit KI‑gestütztem Scripting
Aug 15, 2023 by Frank Kresse
Über den Autor:
Daniel Finkenzeller ist Consultant bei der AppSphere AG und Gastautor auf dem ScriptRunner Blog.
Neueste Beiträge:
- Effizientes Arbeiten mit der PowerShell-Pipeline: Ein Leitfaden für Administratoren (1)
- Lizenzen und Microsoft Graph PowerShell
- ScriptRunner Ultimate Edition 6 – mit KI‑gestütztem Scripting
- So klappt die Verbindung zu Exchange Online mit CBA (zertifikatsbasierter Authentifizierung)
- Get-View in PowerCLI – so verwaltest du deine VMware-Infrastruktur noch effizienter (Teil 3)