KidRoles für die IT der Einrichtung
Alles, was Administratoren brauchen, um KidRoles: Laden auf den Computern einer Schule, Kita oder Nachmittagsbetreuung zu installieren – ohne Installer, ohne Konten und ohne Daten von Kindern zu sammeln.
Erzwungene Installation: WebAppInstallForceList
Microsoft Edge und Google Chrome installieren die App im Hintergrund, ohne Zutun der Nutzer, sobald du die Richtlinie WebAppInstallForceList setzt. Nutzer können sie weder abschalten noch die App deinstallieren. Derselbe Wert funktioniert in beiden Browsern:
[{"url":"https://shop.kidroles.com/","default_launch_container":"window","create_desktop_shortcut":true}]"default_launch_container": "window"– die App öffnet sich in einem eigenen Fenster, nicht in einem Tab."create_desktop_shortcut": true– eine Verknüpfung auf dem Desktop (Windows und Linux).- Die Adresse in der Richtlinie muss die endgültige sein, ohne Weiterleitung – genau
https://shop.kidroles.com/. - Prüfen am Computer:
edge://policyoderchrome://policy→ „Richtlinien neu laden“, dann die App-Liste unteredge://apps/chrome://apps.
Edge wendet diese Richtlinie nicht auf Profile an, die mit einem privaten Microsoft-Konto angemeldet sind – nötig ist ein Geschäfts-/Schul- oder lokales Profil. Außerdem unterstützt Microsoft PWAs in Edge nicht in FSLogix-Umgebungen (sie verschwinden nach dem Abmelden).
https://shop.kidroles.com/Windows: Intune und Gruppenrichtlinien (GPO)
- Intune – Edge: Geräte → Konfiguration → neue Richtlinie für Windows 10 und höher, Typ „Einstellungskatalog“. Aus der Kategorie Microsoft Edge „Configure list of force-installed Web Apps“ hinzufügen, aktivieren und den Wert einfügen.
- Intune – Chrome: Im selben Einstellungskatalog hat die Kategorie Google Chrome dieselbe Einstellung; ein ADMX-Import ist nicht nötig.
- GPO – Edge: nach dem Hinzufügen der Edge-Vorlagen (
MSEdge.admx): Administrative Vorlagen → Microsoft Edge → „Configure list of force-installed Web Apps“. - GPO – Chrome: nach dem Hinzufügen der Chrome-Vorlagen: Administrative Vorlagen → Google → Google Chrome → „Configure list of force-installed web apps“.
- Registry (ohne Domäne und MDM): ein
REG_SZ-Wert namensWebAppInstallForceListunterHKLM\SOFTWARE\Policies\Microsoft\EdgeoderHKLM\SOFTWARE\Policies\Google\Chrome.
Google Workspace und Chromebooks: In der Google Admin-Konsole Geräte → Chrome → Apps und Erweiterungen → Nutzer und Browser wählen, die App per URL hinzufügen und auf „Installation erzwingen“ stellen. So kommt KidRoles auch auf Chromebooks.
macOS und Linux
macOS: den Schlüssel WebAppInstallForceList in ein Konfigurationsprofil deines MDM (z. B. Intune oder Jamf) aufnehmen, in der Domäne com.microsoft.Edge oder com.google.Chrome:
<key>WebAppInstallForceList</key>
<array>
<dict>
<key>url</key>
<string>https://shop.kidroles.com/</string>
<key>default_launch_container</key>
<string>window</string>
</dict>
</array>Linux: Chrome liest Richtlinien aus JSON-Dateien in /etc/opt/chrome/policies/managed/. Microsoft nennt Linux nicht unter den Plattformen dieser Edge-Richtlinie – nutze dort Chrome.
{
"WebAppInstallForceList": [
{
"url": "https://shop.kidroles.com/",
"default_launch_container": "window",
"create_desktop_shortcut": true
}
]
}Kioskmodus
Achtung, Daten: Der Kioskmodus von Microsoft Edge – auch ein Windows-Kiosk (zugewiesener Zugriff) mit Edge – läuft in einer InPrivate-Sitzung. Schließt sich der Browser oder setzt er sich nach Inaktivität zurück, sind Kassierer, Produkte, Münzen und Verlauf weg, und die App braucht bei jedem Start Internet.
Für das tägliche Spielen empfehlen wir deshalb die normale Installation (Richtlinie oben) auf einem gemeinsamen Computerkonto. Der Edge-Kiosk passt zu einer Vorführung oder einem Tag der offenen Tür, wenn jede Sitzung bei null beginnen soll:
msedge.exe --kiosk https://shop.kidroles.com/ --edge-kiosk-type=fullscreen --no-first-runEinen Kiosk, der die Daten behält, ergibt Chrome mit --kiosk auf einem normalen Profil: Vollbild ohne Adressleiste, und die Daten bleiben über Neustarts erhalten. Schließe vorher andere Chrome-Fenster – der Schalter wirkt nur bei einem frischen Browserstart.
# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" --kiosk https://shop.kidroles.com/
# macOS
open -na "Google Chrome" --args --kiosk https://shop.kidroles.com/
# Linux
google-chrome --kiosk https://shop.kidroles.com/Einen Windows-Kiosk richtest du unter Einstellungen → Konten → Andere Benutzer → „Kiosk einrichten“, in Intune oder mit dem PowerShell-Befehl Set-AssignedAccess ein. Mit Edge läuft er im Edge-Kioskmodus, es gilt also derselbe InPrivate-Vorbehalt.
Netzwerk und Firewall
Die App spricht mit genau einer Adresse und lädt nichts von anderen Domains: kein CDN, keine Google Fonts, keine Werbung und keine Analyse in der App. Einzige Ausnahme ist ein optionaler Vorschlag für Produktnamen, standardmäßig aus (letzter Punkt unten).
https://shop.kidroles.com/ (HTTPS, 443)
wss://shop.kidroles.com/pair (WebSocket, 443)- Das erste Öffnen braucht Internet – dabei speichert der Browser die App (Service Worker). Danach läuft die Kasse offline und holt Updates, sobald sie online ist.
- Ein Handy als Scanner koppeln verbindet Kasse und Handy über den WebSocket
wss://shop.kidroles.com/pair. Beide Geräte brauchen Internet, müssen aber nicht im selben WLAN sein. Der Server reicht nur gescannte Codes zwischen ihnen weiter und speichert sie nicht. - Ein Proxy mit TLS-Inspektion muss WebSocket-Verbindungen (Header
Upgrade) zu dieser Adresse durchlassen – am einfachstenshop.kidroles.comvon der Inspektion ausnehmen. Ist WebSocket gesperrt, fällt nur das Koppeln aus. - Ein Handy ist nicht nötig: Die Kamera von Computer oder Tablet scannt Codes ebenfalls (Taste „Scanner“ im Laden).
- Optional:
https://world.openfoodfacts.org(HTTPS, 443) — nur wenn Eltern unter Einstellungen → Scanner „Namen aus dem Internet vorschlagen (Elternmodus)“ einschalten. Beim Anlegen eines Produkts nach dem Scan schickt die App nur den Code dorthin und holt den Namen aus der Datenbank Open Food Facts. Ist die Adresse gesperrt, wird der Name von Hand eingetippt; der Rest der App funktioniert unverändert.
Daten und Datenschutz
- Keine Konten, keine Anmeldung – Kinder geben weder Namen noch E-Mail-Adressen ein; ein Kassierer ist ein Emoji oder ein lokal gespeichertes Foto.
- Alle Daten bleiben im Browserspeicher (
localStorage), im Benutzerprofil auf diesem Computer. Nichts landet auf unserem Server; die App hat keine Werbung und kein Tracking. - Jedes Browserprofil und jedes Systemkonto ist ein eigener Laden. Für den gemeinsamen Computer einer Gruppe reicht ein Konto – die Kinder haben in der App eigene Kassierer.
Diese Einstellungen löschen die Daten der App: ClearBrowsingDataOnExit (Edge), ClearBrowsingDataOnExitList (Chrome), BrowsingDataLifetime mit dem Typ cookies_and_other_site_data (Edge und Chrome), ForceEphemeralProfiles, Cookies „nur für die Sitzung“ (DefaultCookiesSetting = 4) sowie Gastkonten und temporäre Profile. Wende sie auf Computern mit KidRoles nicht an oder prüfe an einem Computer, ob Kassierer und Produkte einen Neustart überstehen.
Ein Katalog für die ganze Einrichtung: Im Bearbeitungsmodus schreibt „Katalog speichern“ die Produkte in eine Datei, die du auf den anderen Computern lädst („Katalog laden“).
Quellen – Dokumentation von Microsoft, Google und Apple
- Microsoft Edge — WebAppInstallForceList
- Microsoft Edge — VideoCaptureAllowedUrls
- Microsoft Edge — ClearBrowsingDataOnExit
- Microsoft Edge — BrowsingDataLifetime
- Microsoft Edge — kiosk mode
- Microsoft Edge — PWA: install, manage, uninstall
- Windows — single-app kiosk (Assigned Access)
- Intune — settings catalog
- Google Chrome Enterprise — automatically install web apps
- Google Chrome Enterprise — BrowsingDataLifetime, ClearBrowsingDataOnExitList
- Google Chrome — use web apps
- Apple — use Safari web apps on Mac