help.md dokumentierte bisher nur App-Management. Neue Abschnitte für den Geräte-Tab (inkl. Verwaltungsart, Autopilot-Status), Policies (inkl. Bulk-Gruppenzuweisung mit Add/Replace) und Offboarding (inkl. Autopilot-Suche); Tab-Übersicht ergänzt. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
381 lines
17 KiB
Markdown
381 lines
17 KiB
Markdown
# Intune Manager — Hilfe
|
||
|
||
Web-Frontend für Microsoft Intune. Lädt Apps und Gruppen aus deinem Tenant über Microsoft Graph und macht das Verwalten von Zuweisungen schneller als im Intune-Portal selbst.
|
||
|
||
---
|
||
|
||
## Schnellstart in 5 Schritten
|
||
|
||
1. **Verbinden** — oben rechts *Anmelden* klicken → Microsoft-Anmeldefenster bestätigen.
|
||
2. **Tab wählen** — Topbar: *App Management* (Standard), *Group Management* oder *App Report*.
|
||
3. **Empfänger wählen** (App Management) — linke Spalte: Abteilung, RPA oder Benutzer markieren.
|
||
4. **Zuweisung sammeln** — bei einer App auf **Available** oder **Required** klicken.
|
||
5. **Ausführen** — rechts unten *Zuweisungen ausführen*. HTML-Report öffnet sich automatisch.
|
||
|
||
---
|
||
|
||
## Navigation
|
||
|
||
Der Header enthält diese Tabs:
|
||
|
||
| Tab | Funktion |
|
||
|---|---|
|
||
| **App Management** | Haupt-Workflow: Apps laden, Gruppen zuweisen und entfernen |
|
||
| **Group Management** | Mitglieder anzeigen, exportieren, hinzufügen, CSV-Import |
|
||
| **App Report** | Installationszähler pro App, Geräte-Export als CSV |
|
||
| **Geräte** | Geräte suchen/filtern, Verwaltungsart (Intune/Co-Managed), Detail-Panel, Aktionen, Bulk-Offboarding |
|
||
| **Policies** | Policies exportieren/importieren, konsolidieren, **Gruppen zuweisen (Bulk)**, Git-Snapshot |
|
||
| **Offboarding** | Geräte über Intune + Autopilot + Entra entfernen, Recovery-Keys sichern |
|
||
|
||
> Im **Read-Only-Modus** (Fallback auf eingeschränkte App-ID) sind die Tabs *Benutzer hinzufügen* und *CSV-Import* ausgeblendet. Alle Schreib-Buttons verschwinden automatisch.
|
||
|
||
---
|
||
|
||
## App Management — der Hauptworkflow
|
||
|
||
### Das mentale Modell
|
||
|
||
Das Tool ändert **nicht die App-Zuweisungen selbst** — die Liste der Available/Required-Gruppen einer App bleibt unverändert. Stattdessen ändert es die **Mitgliedschaften in genau diesen Gruppen**. Beispiel:
|
||
|
||
- App *Beispiel-App* hat die Required-Gruppe `intune-win-app-<slug>-required` zugewiesen.
|
||
- Du wählst links die Abteilung `<dept-prefix>-team-controlling`.
|
||
- Klick auf die *Required*-Pille → Operation wandert in die Session.
|
||
- Beim Ausführen wird `<dept-prefix>-team-controlling` als Mitglied in der Required-Gruppe aufgenommen.
|
||
- Intune zieht beim nächsten Sync alle Mitglieder als Required-Targets.
|
||
|
||
### Schritt-für-Schritt
|
||
|
||
1. **Empfänger markieren** (linke Spalte) — Modi mischbar: Abteilungen + RPA + Benutzer gleichzeitig. Die *Pinned-Targets*-Leiste zeigt alles Aktive.
|
||
2. **Apps durchgehen** (mittlere Spalte) — Filter oder Suchfeld nutzen.
|
||
3. **Available- oder Required-Button klicken**:
|
||
- *Eine Gruppe*: Empfänger direkt zur Session hinzufügen.
|
||
- *Mehrere Gruppen* (Count-Badge): Picker öffnet sich.
|
||
- *Keine Gruppe* dieses Typs: Button deaktiviert.
|
||
4. **Session prüfen** (rechte Spalte) — alle gesammelten Vorgänge als Vorschau.
|
||
5. **Ausführen** — rechts unten. Report öffnet automatisch.
|
||
|
||
### Pillen-Farben
|
||
|
||
| Optik | Bedeutung |
|
||
|---|---|
|
||
| Neutral | Standard — kein Empfänger gewählt oder noch nicht geprüft |
|
||
| **Grüner Rahmen + Häkchen** | Alle Empfänger bereits Mitglied |
|
||
| **Gelber Rahmen + halbes Häkchen** | Teilweise Mitglied |
|
||
| **Schwarz gefüllt + Count-Badge** | Aktiv in der Session (Toggle: erneuter Klick entfernt) |
|
||
| Kursiv, ausgegraut | Nur native Zuweisung (All Users/Devices) — keine Gruppe änderbar |
|
||
|
||
### Gruppen aus App entfernen (−R / −A)
|
||
|
||
Jede App-Zeile zeigt rechts **−R** (Required entfernen) und **−A** (Available entfernen).
|
||
|
||
- Klick auf −R / −A → Picker mit allen Gruppen dieses Typs → Gruppe auswählen → sofortiges Löschen der Zuweisung (nach Bestätigung).
|
||
- Bei nativen Zuweisungen (All Users/All Devices) erscheint stattdessen der Mülleimer-Icon direkt im Detail-Panel.
|
||
|
||
### Plus-Button — Zuweisung hinzufügen
|
||
|
||
Modal mit 6 Optionen:
|
||
|
||
**REQUIRED** — Neue Gruppe / All Users / All Devices
|
||
**AVAILABLE** — Neue Gruppe / All Users / All Devices
|
||
|
||
Bereits aktive native Kombinationen werden **ausgegraut** (verhindert Duplikate).
|
||
|
||
### Die Session (rechte Spalte)
|
||
|
||
Pro Eintrag: App-Name + Gruppen-Name + Empfänger-Tag + A/R-Badge + X-Entfernen.
|
||
Darunter Gesamtzahl — der Apply-Button zeigt diese Zahl.
|
||
|
||
### Ausführen und Report
|
||
|
||
- Member-Add pro Session-Eintrag
|
||
- Native Targets werden übersprungen
|
||
- Bereits-Mitglied = „OK" — kein Fehler
|
||
- HTML-Report in `%TEMP%\IntuneAppManager-Reports\`
|
||
|
||
---
|
||
|
||
## Group Management
|
||
|
||
### Mitglieder & Export
|
||
|
||
- Gruppe links suchen und auswählen
|
||
- Mitgliederliste inkl. verschachtelter Gruppen
|
||
- Filter zum Einschränken der Anzeige
|
||
- **Als CSV exportieren** → `members-<Gruppe>-<Datum>.csv`
|
||
|
||
### Benutzer hinzufügen *(nur Read/Write)*
|
||
|
||
- Benutzer per Name, UPN oder E-Mail suchen
|
||
- Mehrere auswählen und gemeinsam zur gewählten Gruppe hinzufügen
|
||
|
||
### CSV-Import *(nur Read/Write)*
|
||
|
||
Massenimport von Benutzern per CSV-Datei oder direkter Eingabe.
|
||
|
||
**Ablauf:**
|
||
1. Gruppe links auswählen
|
||
2. CSV hochladen **oder** UPNs/E-Mails einfügen (eine pro Zeile)
|
||
3. **„Benutzer auflösen"** → Graph-Lookup → Vorschau mit ✓/✗
|
||
4. **„Gefundene importieren"** → Benutzer werden zur Gruppe hinzugefügt
|
||
|
||
**CSV-Format:** Header-Erkennung für `UserPrincipalName`, `Mail`, `Email`, `UPN`.
|
||
Ohne Header: erste Spalte mit `@` wird verwendet. Quoted fields und `,`/`;`/Tab als Trennzeichen werden unterstützt.
|
||
|
||
**Ergebnis-Banner nach Import:**
|
||
|
||
| Chip | Bedeutung |
|
||
|---|---|
|
||
| ✔ Grün | Erfolgreich hinzugefügt |
|
||
| ≈ Gelb | Bereits Mitglied |
|
||
| ✗ Rot | Fehler (Meldung in der Tabelle) |
|
||
| Grau | UPN in Graph nicht gefunden |
|
||
|
||
---
|
||
|
||
## App Report
|
||
|
||
- **Neu laden** — lädt Installationszähler für alle Apps (kann 1–2 Min. dauern)
|
||
- Tabelle sortierbar per Klick auf Spaltenheader (▲/▼)
|
||
- Suchfeld filtert nach Name, Publisher, Typ
|
||
- **Als CSV exportieren** — exportiert die gefilterte Tabelle
|
||
- **Geräte-Export** (Button pro Zeile) — lädt alle Geräte mit Installationsstatus für diese App als CSV
|
||
|
||
> Zählwerte erfordern die Berechtigung `DeviceManagementManagedDevices.Read.All` in der Azure App-Registration. Fehlt sie, zeigen alle Spalten 0.
|
||
|
||
---
|
||
|
||
## Geräte
|
||
|
||
Geräte des Tenants suchen, filtern und verwalten.
|
||
|
||
- **Suche & Filter** — Freitext (Gerätename, Benutzer, UPN, Seriennummer), OS- und Compliance-Filter. Zusätzlich lässt sich nach **Gruppe** filtern (alle Geräte der Gruppenmitglieder).
|
||
- **Spalte „Verwaltung"** — zeigt je Gerät, ob es **Intune** (reines MDM) oder **Co-Managed** (ConfigMgr + Intune) ist. Sortierbar, auch im CSV-Export enthalten.
|
||
- **Detail-Panel** (Klick auf eine Zeile) — Benutzer, OS, Compliance, Speicher, Seriennummer, Join-/Besitzertyp und der **Autopilot-Status** (registriert, Profil zugewiesen am, letzter Kontakt). Ein exaktes Autopilot-Importdatum liefert Microsoft Graph nicht — angezeigt werden die verfügbaren Zeitstempel.
|
||
- **Geräte-Aktionen** *(nur Read/Write)* — Sync, Neustart, Remote-Lock, Diagnose, BitLocker-Key-Rotation sowie Wipe / Retire / Autopilot-Reset (Letztere brauchen `…PrivilegedOperations.All`).
|
||
- **CSV-Export** — die aktuell gefilterte Liste als CSV.
|
||
- **Bulk-Offboarding** — Geräte per Checkbox wählen und über **„Offboarden"** direkt in den Offboarding-Dialog übergeben.
|
||
|
||
---
|
||
|
||
## Policies
|
||
|
||
Intune-Policies verwalten: Settings Catalog, Compliance, Konfigurationsprofile und Administrative Vorlagen.
|
||
|
||
- **Neu laden** — lädt alle vier Typen. Tabelle sortier-/durchsuchbar, Typ-Filter oben.
|
||
- **Spalte „Zuweisungen"** — zeigt die Anzahl der Ziele je Policy; Klick öffnet die Detail-Ansicht mit den konkreten Include-/Exclude-Gruppen bzw. „Alle Geräte / Alle Benutzer".
|
||
- **Export** — ausgewählte Policies als JSON (einzeln oder gebündelt); zusätzlich im Server-Archiv abgelegt.
|
||
- **Import** *(nur Read/Write)* — legt Policies **immer als neue Policy** an (nichts wird überschrieben). Nach dem Import kann optional pro Policy zugewiesen werden.
|
||
- **Konsolidieren** *(nur Read/Write, nur Settings Catalog)* — mehrere Settings-Catalog-Policies zu einer neuen zusammenführen; Konflikte werden pro Einstellung aufgelöst.
|
||
- **Gruppen zuweisen (Bulk)** *(nur Read/Write)* — siehe unten.
|
||
- **Git-Snapshot** — alle Policies als JSON in einen konfigurierten lokalen Git-Ordner schreiben und committen (versioniertes Backup).
|
||
|
||
### Gruppen zuweisen (Bulk)
|
||
|
||
Weist mehreren ausgewählten Policies **in einem Schritt** dieselben Gruppen zu — auch typübergreifend.
|
||
|
||
1. Eine oder mehrere Policies anhaken → Button **„Gruppen zuweisen"**.
|
||
2. Im Dialog **Include-/Exclude-Gruppen** wählen; zusätzlich die integrierten Ziele **Alle Geräte** und **Alle Benutzer**.
|
||
3. **Modus** wählen:
|
||
- **Hinzufügen** (Default) — bestehende Zuweisungen bleiben erhalten, die Auswahl kommt hinzu.
|
||
- **Ersetzen** — alle bisherigen Zuweisungen werden durch die Auswahl ersetzt.
|
||
4. **Zuweisen** — das Ergebnis wird pro Policy (Erfolg / übersprungen / Fehler) angezeigt.
|
||
|
||
> Hintergrund: Die Graph-`/assign`-Action ersetzt immer die komplette Zuweisungsliste. Der Hinzufügen-Modus liest deshalb die bestehenden Zuweisungen zuerst aus und sendet sie zusammen mit den neuen — ist das Auslesen nicht möglich, wird die Policy übersprungen statt versehentlich überschrieben.
|
||
|
||
---
|
||
|
||
## Offboarding
|
||
|
||
Geräte am Ende ihres Lebenszyklus sauber über alle Dienste entfernen.
|
||
|
||
- **Suche** — nach Gerätename oder Seriennummer. Durchsucht **Intune und Autopilot** — reine Autopilot-Geräte (registriert, aber nicht in Intune enrolled) werden also ebenfalls gefunden.
|
||
- Pro Treffer zeigen Badges, in welchen Diensten das Gerät vorhanden ist: **Intune**, **Entra**, **Autopilot** (und **Co-Mgmt**).
|
||
- **Recovery-Keys sichern** — vor dem Löschen lassen sich BitLocker-Keys und LAPS-Passwörter auslesen (`BitlockerKey.Read.All` / `DeviceLocalCredential.Read.All`).
|
||
- **Offboarden** — löscht pro Gerät wahlweise aus Intune, Autopilot und Entra (Entra: löschen oder nur deaktivieren). Nach dem Ausführen öffnet sich ein **HTML-Report** mit dem Ergebnis pro Gerät.
|
||
|
||
> **Wichtig:** Das Löschen benötigt bei delegierter Anmeldung zusätzlich passende Verzeichnis-/Intune-**Rollen** (z. B. Cloud Device Administrator / Intune Administrator) — die Graph-Scopes allein reichen nicht.
|
||
|
||
---
|
||
|
||
## Header
|
||
|
||
| Element | Funktion |
|
||
|---|---|
|
||
| **Logo** | Kann in den Einstellungen durch eigenes Firmenlogo ersetzt werden |
|
||
| **App Management / Group Management / App Report** | Haupt-Navigation |
|
||
| **Einstellungen** (Zahnrad) | Tenant/Client-ID, Naming, Farben, Logo |
|
||
| **Hilfe** (Fragezeichen) | Diese Seite |
|
||
| **Theme-Toggle** | Light/Dark-Mode — wird im LocalStorage gemerkt |
|
||
| **Avatar** | Angemeldeter Account — Mouseover zeigt vollen UPN; grüner Punkt = verbunden |
|
||
| **Logout** | Trennt die Graph-Verbindung |
|
||
|
||
---
|
||
|
||
## Read-Only-Modus
|
||
|
||
Ist nur eine Read-Only-App-ID konfiguriert (oder schlägt die RW-Anmeldung fehl), schaltet das Tool automatisch in den **Read-Only-Modus**:
|
||
|
||
- Toast-Meldung „(Read Only)" beim Verbinden
|
||
- Alle Schreib-Buttons/Tabs werden ausgeblendet (`body.read-only`-CSS-Klasse)
|
||
- Sichtbar bleibt: App-Liste, Mitglieder-Ansicht, Export-Funktionen, App Report
|
||
|
||
---
|
||
|
||
## Linke Spalte — Empfänger
|
||
|
||
Drei Modi via Segment-Switch:
|
||
|
||
- **Abteilung** — Gruppen mit konfigurierten Präfixen (mehrere möglich)
|
||
- **RPA** — explizit in den Einstellungen gelistete Gruppen
|
||
- **Benutzer** — Live-Suche über Graph (min. 2 Zeichen)
|
||
|
||
**Gruppen aufklappen** → Mitglieder inline → *Benutzer übernehmen* in den User-Modus.
|
||
|
||
**Icons pro Eintrag:**
|
||
|
||
| Icon | Wirkung |
|
||
|---|---|
|
||
| Externer Link | Gruppe/User im Intune-Portal öffnen |
|
||
| Zwei Personen | Mitglieder-Ansicht im Intune-Portal |
|
||
| Teams-T | Direkt-Chat starten (Teams-Desktop) |
|
||
|
||
---
|
||
|
||
## Mittlere Spalte — Apps
|
||
|
||
### Filter
|
||
|
||
| Filter | Zweck |
|
||
|---|---|
|
||
| Suchfeld | Volltext im App-Namen |
|
||
| Dropdown | Preset: Alle / Ohne Zuweisungen / Nur Available / Nur Required / Mehrere / All Users / All Devices / Intune / pro Vendor |
|
||
| Bereits Gruppenmitglied | Nur Apps wo Empfänger schon Mitglied ist |
|
||
| All Users/Devices ausblenden | Native Zuweisungen rausnehmen |
|
||
| Geändert (Datumsrange) | Nach Last-Modified-Datum filtern |
|
||
|
||
### App-Zeile
|
||
|
||
1. Status-Indikator (Häkchen)
|
||
2. App-Name + Hersteller → Klick öffnet Detail-Panel
|
||
3. Rename-Icon (Stift) / Lock bei Vendor-Apps
|
||
4. Source-Logo (Intune, PatchMyPC, Robopack, …)
|
||
5. Typ-Chip
|
||
6. Version
|
||
7. **Available**- und **Required**-Buttons mit Count
|
||
8. **−R** (Required-Gruppe entfernen) und **−A** (Available-Gruppe entfernen)
|
||
9. **Plus-Button** — Zuweisung hinzufügen
|
||
10. **Delete-Icon** — App löschen (bei Vendor-Apps: Lock)
|
||
|
||
---
|
||
|
||
## App-Detail (Klick auf App-Namen)
|
||
|
||
| Sektion | Inhalt |
|
||
|---|---|
|
||
| Zuweisungen | Available + Required mit Aktionen (Link, Mitglieder, Löschen) |
|
||
| Allgemein | Hersteller, Version, Typ, Min-OS |
|
||
| Beschreibung | Markdown-gerendert |
|
||
| Installation | Datei, Install-/Uninstall-Befehl (Copy-Icon) |
|
||
| Detection | Registry, Datei, MSI-Code, PowerShell |
|
||
| Return-Codes | Exit-Codes mit Typ |
|
||
| Meta | Erstellt + Geändert |
|
||
| Installationen | Geräte + Benutzer × Installiert/Fehler/Pending/N/A mit Erfolgsquote |
|
||
| Abhängigkeiten | SVG-Flow-Diagramm + Klartext; Klick auf Knoten springt zur Ziel-App |
|
||
| Supersedence | Was diese App ersetzt (update / replace) |
|
||
|
||
---
|
||
|
||
## Einstellungen
|
||
|
||
Persistiert in `%APPDATA%\IntuneAppManager-Web\settings.json`.
|
||
|
||
| Sektion | Inhalt |
|
||
|---|---|
|
||
| Verbindung | Tenant-ID, Client-ID (RW), Client-ID (RO), Scopes RW + RO |
|
||
| Abteilungs-Gruppen | Präfixe (eine pro Zeile) |
|
||
| RPA-Gruppen | Explizite Gruppennamen |
|
||
| Benutzer-Suche | Felder (DisplayName / UPN / Mail / Department) |
|
||
| Required-Naming | Präfix + Suffix |
|
||
| Available-Naming | Präfix + Suffix |
|
||
| Branding | Logo-Upload (PNG/JPG/SVG/WEBP/GIF, max. 2 MB) |
|
||
| Farben | 8 Akzentfarben + Standardfarben wiederherstellen |
|
||
|
||
---
|
||
|
||
## Benötigte Graph-Berechtigungen
|
||
|
||
| Funktion | Berechtigung |
|
||
|---|---|
|
||
| Apps anzeigen | `DeviceManagementApps.Read.All` |
|
||
| Gruppen / Mitglieder anzeigen | `GroupMember.Read.All` |
|
||
| Benutzer suchen | `User.Read.All` |
|
||
| Zuweisungen ändern | `DeviceManagementApps.ReadWrite.All` |
|
||
| Gruppen-Mitglieder ändern | `GroupMember.ReadWrite.All` |
|
||
| App Report / Geräte-Export | `DeviceManagementManagedDevices.Read.All` ⚠ |
|
||
|
||
> ⚠ Ohne `DeviceManagementManagedDevices.Read.All` zeigt der App Report 0 und der Geräte-Export liefert leere Dateien.
|
||
|
||
---
|
||
|
||
## Wichtige Einschränkungen
|
||
|
||
- **Vendor-Apps** (PatchMyPC, Robopack, …) können nicht gelöscht/umbenannt werden — Lock-Icon + HTTP 409.
|
||
- **Native Zuweisungen** (All Users / All Devices) sind je App und Intent einzigartig — Duplikate werden ausgegraut.
|
||
- **Required-Zuweisungen** werden beim nächsten Geräte-Sync erzwungen — bei Produktiv-Apps zuerst Available testen.
|
||
- **App-Löschung** ist irreversibel und entfernt alle Zuweisungen.
|
||
- **Cache**: Apps und Gruppen werden im PowerShell-Prozess gehalten — Refresh-Icon lädt neu.
|
||
|
||
---
|
||
|
||
## Vendor-Erkennung
|
||
|
||
Das Tool erkennt Vendor-Apps (PatchMyPC, Robopack, …) per konfigurierbaren Detection-Regeln in `settings.json → vendors[]`:
|
||
|
||
| Feld | Optionen |
|
||
|---|---|
|
||
| `field` | `commandLine`, `developer`, `publisher`, `displayName`, `notes`, `owner` |
|
||
| `match` | `contains`, `equals`, `startsWith`, `regex` |
|
||
| `pattern` | Suchstring oder Regex |
|
||
|
||
Erster Match gewinnt. Eigene Vendoren: neuen Eintrag im `vendors[]`-Array, Logo als `<id>.png` im Projekt-Root ablegen.
|
||
|
||
---
|
||
|
||
## Setup-Datei aktualisieren
|
||
|
||
Native Win32-Apps (`.intunewin`) können mit einer neuen Setup-Datei aktualisiert werden ohne die App neu anzulegen.
|
||
|
||
**Wo:** App-Detail → Abschnitt *Setup-Datei* → *Setup-Datei aktualisieren…*
|
||
**Ablauf:** lokalen Pfad auf dem Server-Rechner eingeben → optionale neue Versionsnummer → Bestätigung → *Hochladen & aktivieren*
|
||
|
||
> **Achtung:** Ersetzt die ausgerollte Version für alle zugewiesenen Geräte. Nicht rückgängig machbar — zuerst an einer Test-App ausprobieren.
|
||
|
||
---
|
||
|
||
## Tastatur / Tipps
|
||
|
||
- **Ctrl+F5** — Hard-Refresh (Pflicht nach Tool-Updates)
|
||
- **Esc** — Modal schließen
|
||
- **Enter** im Umbenennen-Dialog — speichern
|
||
- **Klick auf App-Zeile** außerhalb Buttons — Detail öffnen/schließen
|
||
|
||
---
|
||
|
||
## Fehlerbehebung
|
||
|
||
| Symptom | Lösung |
|
||
|---|---|
|
||
| „User canceled authentication" | WAM-Fenster ist hinter anderen Fenstern — in Taskleiste suchen |
|
||
| Apps laden sehr lange | Bei > 1000 Apps normal (10–30 s); danach gecached |
|
||
| Änderungen wirken nicht | **Ctrl+F5** (Browser-Cache) |
|
||
| App Report zeigt nur 0 | `DeviceManagementManagedDevices.Read.All` fehlt in der App-Registration |
|
||
| Geräte-Export ist leer | Gleiche Ursache wie App Report |
|
||
| Read-Only-Modus obwohl RW gewünscht | RW-Anmeldung fehlgeschlagen — Berechtigungen in Azure prüfen |
|
||
| Port-Konflikt beim Start | `.\Start.ps1 -Port 8088` |
|
||
| PowerShell-Errors beim Start | `Install-Module Microsoft.Graph.Authentication -Scope CurrentUser -Force` |
|
||
| Apply-Button bleibt grau | 0 Vorgänge in der Session oder nur native Targets |
|
||
|
||
---
|
||
|
||
Stand: Juli 2026 · Hilfe-Datei: `www/help.md` · Änderungshistorie: `CHANGELOG.md`
|