Einmal im Jahr dasselbe Ritual. Ich öffne meine Kontaktliste, kopiere Mailadressen in ein BCC-Feld, schreibe eine Anfrage, ob der Zugang zu System XYZ noch benötigt wird, und schicke sie raus. Dann beginnt das Warten. Und das Tracken. Wer hat geantwortet? Wer nicht? Wer braucht eine Erinnerung? Wer kann gelöscht werden?
Das klingt nach einer Kleinigkeit. Aber wenn man es jedes Jahr macht, wenn man die Antworten manuell in eine Liste einträgt, wenn man Erinnerungsmails von Hand schreibt und am Ende trotzdem nicht sicher ist, ob man jemanden vergessen hat, dann ist es kein kleines Problem mehr. Es ist ein strukturelles.
Dieses Projekt hat dieses strukturelle Problem gelöst. Vollständig. Automatisch. Mit Bordmitteln, die in jeder Microsoft 365 Umgebung verfügbar sind.
Die Ausgangslage: Ein Prozess, der auf Vertrauen und Erinnerungsvermögen basierte
Die Nutzerinventur ist eine Compliance-Aufgabe. Einmal jährlich muss geprüft werden, ob alle Personen, die Zugang zu einem System haben, diesen Zugang noch benötigen. Nicht genutzte Zugänge sind ein Sicherheitsrisiko und verursachen unnötige Lizenzkosten.
Der bisherige Prozess war vollständig manuell:
- Mailadressen manuell zusammenstellen und in einen BCC-Verteiler eintragen
- Anfrage-Mail schreiben und versenden
- Antworten manuell tracken, wer hat geantwortet, wer nicht
- Erinnerungsmails manuell verfassen und versenden
- Am Ende eine Löschliste manuell zusammenstellen
Das Ergebnis war ein Prozess, der auf Erinnerungsvermögen und Disziplin basierte. Beides sind keine verlässlichen Systemeigenschaften. Antworten gingen unter. Erinnerungen wurden vergessen. Die Löschliste war nie wirklich vollständig.
Gleichzeitig war klar: Dieser Prozess muss skalieren. Wenn das Unternehmen wächst, wenn mehr Systeme dazukommen, wenn mehr User verwaltet werden müssen, dann bricht ein manueller Prozess zusammen.
Die Vision: Ein System, das sich selbst verwaltet
Das Ziel war klar definiert. Der Prozess sollte vollständig automatisch ablaufen, von der ersten Anfrage bis zur fertigen Löschliste. Kein manuelles Tracking, keine vergessenen Erinnerungen, keine unvollständigen Auswertungen.
Konkret bedeutete das:
- Automatischer Versand der Inventuranfragen an alle relevanten User
- Direkte Antwortmöglichkeit per Klick in der Mail, ohne Login oder Formular
- Automatisches Tracking aller Antworten in einer zentralen Liste
- Automatische Erinnerungsmail bei ausbleibender Antwort
- Automatische Markierung von Löschkandidaten nach Ablauf aller Fristen
- Automatische Benachrichtigung des KeyUsers mit der fertigen Löschliste
Und das alles mit Mitteln, die bereits vorhanden sind. Keine externe Software, keine zusätzlichen Lizenzen, kein IT-Ticket.
Die Architektur: Drei Schichten, ein System
Das System folgt einem klaren Drei-Schichten-Modell, das ich für alle meine Citizen Development Projekte nutze.
| Schicht | Tool | Aufgabe |
| Oberfläche | Power Apps | Datenpflege: User und Systeme verwalten, Inventurdaten eintragen |
| Logik | Power Automate | Drei spezialisierte Flows steuern den gesamten Inventurprozess |
| Daten | SharePoint-Liste | Zentrale Datenbasis mit Statusverwaltung und Berechtigungskonzept |
Die SharePoint-Liste als Steuerungszentrale
Die SharePoint-Liste ist mehr als ein Datenspeicher. Sie ist die Steuerungszentrale des gesamten Prozesses. Jeder Eintrag repräsentiert einen User in einem System. Der Status-Wert steuert, in welchem Schritt des Prozesses sich dieser User gerade befindet.
Die Statuswerte bilden den Prozessfluss ab: Aktiv, im Flow Prozess, Offen, im Reminder Prozess, im Löschprozess, gelöscht. Jeder Flow filtert nur auf seinen eigenen Status. Dadurch können mehrere Flows parallel laufen, ohne sich gegenseitig zu stören.
Die Power App als Eingabemaske
Die Power App ist die Schnittstelle für die manuelle Datenpflege. Neue User werden hier eingetragen, bestehende Einträge können angepasst werden. Die App ist direkt in SharePoint eingebettet und für alle berechtigten Personen zugänglich.
Zwei Details machen die App besonders robust: Erstens wird der Speicherbutton ausgeblendet, solange Pflichtfelder leer sind. Fehleingaben sind damit strukturell ausgeschlossen. Zweitens berechnet die App das nächste Inventurdatum automatisch, standardmäßig heute plus 365 Tage. Wer einen User rückwirkend einträgt, kann ein abweichendes Datum angeben und die App passt die Berechnung automatisch an.
Die drei Power Automate Flows
Das Herzstück des Systems sind drei spezialisierte Flows. Die Entscheidung, drei separate Flows statt eines großen zu bauen, war architektonisch bewusst: Jeder Flow hat eine klare Verantwortung, ist unabhängig testbar und kann ohne Auswirkungen auf die anderen angepasst werden.
Flow 1: Der Inventurtrigger. Läuft zeitgesteuert. Filtert alle User, deren Inventurdatum überschritten ist und deren Status „Aktiv“ ist. Setzt den Status sofort auf „im Flow Prozess“, um Doppelverarbeitung zu verhindern. Sendet dann für jeden User eine Genehmigungsmail mit Ja/Nein-Buttons. Bis zu 50 Genehmigungsprozesse laufen parallel. Wer nach 20 Tagen nicht antwortet, wird für den Reminder-Flow vorbereitet.
Flow 2: Der Reminder-Flow. Greift alle User auf, die den Inventurtrigger-Timeout erreicht haben. Sendet eine Erinnerungsmail mit einem neuen Endtermin von 14 Tagen. Wer auch dann nicht antwortet, wird automatisch als Löschkandidat markiert.
Flow 3: Der Lösch-Flow. Verarbeitet alle Löschkandidaten. Sendet eine Benachrichtigungsmail an den KeyUser. Prüft, ob der User tatsächlich gelöscht werden soll oder ob eine Ausnahmeregelung greift. Im Normalfall wird der User aus der Inventurliste entfernt und eine Löschmail versendet. Im Ausnahmefall wird der Status zurück auf „Aktiv“ gesetzt.
Das Resultat: Ein MVP in 8 Stunden
Das System ist live. Der gesamte Entwicklungsaufwand für den MVP betrug rund 8 Stunden, verteilt auf mehrere Sessions über eine Woche.
| Datum | Zeit | Meilenstein |
| 15.06.2026 | 3h | SharePoint-Liste, Berechtigungskonzept, Power App Grundstruktur |
| 17.06.2026 | 3h | App in SharePoint eingebettet, Inventurtrigger-Flow vollständig |
| 18.06.2026 | 1h | Timeout-Logik, Reminder-Flow zu 90% fertig |
| 22.06.2026 | 1h | Reminder-Flow finalisiert, Lösch-Flow erstellt, MVP live |
| Gesamt | ~8h | Vollständig automatisierter Ende-zu-Ende-Inventurprozess |
Was das System konkret leistet
- Zeitersparnis: Mehrere Stunden manueller Arbeit pro Jahr entfallen vollständig
- Prozesssicherheit: Kein User wird vergessen, keine Erinnerung geht verloren
- Transparenz: Der Status jedes Users ist jederzeit in der SharePoint-Liste einsehbar
- Skalierbarkeit: Das System funktioniert für 10 User genauso wie für 500. Auch ist dem System egal, ob es zwei Systeme überwacht oder 10.
- Compliance: Lizenz-Verschwendung durch inaktive Zugänge wird systematisch eliminiert
Der Ausblick: Unternehmensweiter Rollout
Das System wurde für einen spezifischen Anwendungsfall entwickelt, ist aber von Anfang an auf Erweiterbarkeit ausgelegt. Die SharePoint-Liste kann beliebig viele Systeme und User aufnehmen. Die Flows sind parametrisierbar.
Der nächste Schritt ist der unternehmensweite Rollout. Wenn das System für alle verwalteten Systeme eingesetzt wird, multipliziert sich der ROI entsprechend. Jede Stunde, die heute in die Automatisierung investiert wird, spart in Zukunft mehrere Stunden manueller Arbeit.
Das ist Citizen Development in seiner reinsten Form: Ein konkretes Problem, eine pragmatische Lösung, ein messbarer Mehrwert.
Nachfolgend die Links zu den tiefergehenden Artikeln für die Nutzerinventur.
Das Fundament: Wie SharePoint-Liste und Power App das Rückgrat der Nutzerinventur bilden
Die digitale Fabrikhalle: Wie drei spezialisierte Power Automate Flows einen Prozess vollständig automatisieren
Das Handwerk hinter dem Code: Warum Dokumentation der wahre Hebel für professionelles Citizen Development ist
Martin Reichelt ist Spezialist für Microsoft-Automatisierung und Verfechter der Citizen Developer Bewegung. Bei XelUp zeigt er, wie man das volle Potenzial von Excel ausschöpft und durch Power Automate effiziente Cloud-Workflows schafft, um wertvolle Lebenszeit im Job zurückzugewinnen.
