Dokumentation

Sitzungen installierter Cockpits

Wie ein installiertes Cockpit seine Workspace-Sitzung erhält und behält.

Stand: Release v10.4.20
Kapitel

Eine authentifizierte Browsersitzung kann ihre Workspace-Installation mit POST /v1/cockpit/installations und einem leeren JSON-Objekt anlegen oder wiederverwenden. Diese Operation erfordert das normale Browser-CSRF-Token. Sie liefert die Installationsadresse und die Manifest-Adresse und stellt für diese Installation eine unabhängige Browsersitzung aus. Die bestehende Root-Cockpit-Sitzung bleibt aktiv. Eine Installation ist pro aktivem Workspace und Eigentümer auf dem aktuellen Host eindeutig; ein anderer Workspace hat seine eigene Installationsidentität. GET /v1/cockpit/installations liest die aktuelle Installation dieses Eigentümers, ohne eine Sitzung auszustellen. Das Root-Cockpit bietet das Widerrufen der Installation über DELETE /v1/cockpit/installations/{id} an.

Jede App verwendet /cockpit/i/{installationId}/ und ein eigenes HttpOnly-, SameSite=Lax-Cookie mit genau diesem Pfad. HTTPS-Cookies sind Secure. Die API-Fassade der App unter /cockpit/i/{installationId}/api/v1/ führt dieselben API-Handler, Berechtigungen, CSRF-Prüfungen, Mandantenkontext-Prüfungen und gehosteten Kontingente aus wie die normale API. Installationssitzungen können den Workspace nicht wechseln und nicht auf die Root-Sitzung zurückfallen. Eigentümer, Workspace, Installation, Ablauf und Widerruf der Sitzung werden auf dem Server geprüft. Ereignisströme der App prüfen die Sitzung vor jedem ausgelieferten Abschnitt erneut. Die Abmeldung widerruft nur die vorgelegte App-Sitzung. Das Widerrufen der Installation aus dem Root-Cockpit macht alle ihre Sitzungen ungültig; eine Neuerstellung erzeugt eine neue Identität und belebt alte Links nicht wieder. Die OIDC-Neuauthentifizierung erfordert genau die bestehende Eigentümeridentität und legt nie ein Konto an und verknüpft nie eines per E-Mail. Die Anmeldung mit API-Schlüssel kann eine installierte Sitzung nicht erneuern; öffne stattdessen das normale Cockpit und öffne die Arbeitsbereich-App erneut.

Das authentifizierte Manifest hat eine eigene ID, einen eigenen Scope und eine eigene Startadresse und verwendet den gespeicherten Workspace-Namen, die Palette und das optionale quadratische App-Symbol. Symbole werden zu PNGs mit 192 und 512 Pixeln normalisiert; hochgeladene Quellen müssen quadratisch sein und mindestens 512 Pixel pro Kante haben, innerhalb der bestehenden Byte- und Pixelgrenzen des Brandings. Antworten zu Name, Symbol und Manifest sind privat und werden nicht im HTTP-Cache gespeichert. Einstiegsseiten im abgemeldeten Zustand bleiben neutral. Der Browser oder das Betriebssystem kann Name und Symbol einer bereits installierten App nach der Abmeldung behalten.

Der Service Worker mit eigenem Scope verarbeitet begrenzte eingehende Freigaben und neutrale Push-Nachrichten. Er legt keine Seiten, API-Antworten oder privaten Entwürfe im Cache ab und reiht keine Offline-Schreibvorgänge ein. Eingehende Dateien und Texte bleiben bis zu einer ausdrücklichen Importbestätigung im flüchtigen Speicher. Das Hochladen oder Sammeln einer Quelle nimmt sie nicht in das Wissen auf, erstellt keinen Skill, ruft kein Modell auf und startet keinen Workflow. Quellen behalten ihre ursprünglichen Verweise; lokale Dateien und Zwischenablagetext behalten ein gespeichertes Quellartefakt. Gehen die Authentifizierung oder der flüchtige Empfang des Workers verloren, wiederhole nach der Anmeldung die Freigabe oder Dateiauswahl. Dateistart, Zwischenablage und native Dateidialoge erfordern Laufzeit-Fähigkeitsprüfungen und eine ausdrückliche Benutzeraktion; kein Datei- oder Verzeichnis-Handle wird dauerhaft gespeichert.

Push erfordert eine separate Zustimmung für App und Gerät. Die ausdrückliche Vorbereitungsoperation erstellt ein mandanteneigenes, verschlüsseltes VAPID-Schlüsselpaar; Abonnements sind verschlüsselt und an die Installation und ihren Eigentümer gebunden. Der Ablauf einer untätigen Sitzung beendet Push nicht; beim erneuten Öffnen der App wird das bestehende Geräteabonnement an die neue Sitzung gebunden. Push endet bei Abmeldung, jedem ausdrücklichen Sitzungswiderruf, Widerruf der Installation, Deaktivierung des Eigentümers, Workspace-Wechsel oder -Löschung sowie nach 30 Tagen ohne App-Nutzung. Inaktive oder gelöschte Eigentümer und Workspaces erhalten keine neuen Sendungen. Eine Benachrichtigung wird gesendet, sobald ein neuer oder geänderter Aufmerksamkeitspunkt erscheint, innerhalb von etwa einer Minute; unveränderte Punkte benachrichtigen nicht erneut. Benachrichtigungen enthalten nur einen generischen SubKit-Aufmerksamkeitshinweis und fokussieren oder öffnen die App-Wurzel; sie enthalten kein Workspace-Branding, keine privaten Inhalte und keine Freigabeaktionen. Bereits gesendete neutrale Nachrichten können nach der Abmeldung eintreffen. Eine Benachrichtigungsberechtigung des Browsers kann von Apps auf demselben Origin gemeinsam genutzt werden und wird durch die Abmeldung nicht automatisch widerrufen. Pfadgebundene Sitzungen erzeugen keine getrennten Browser-Origins und isolieren weder den Browser-Speicher noch lokale Berechtigungen.

Das normale Browser-Cockpit unter /cockpit/ kann diese neutralen Benachrichtigungen auch ohne Installation empfangen. Die Glocke öffnet dieselbe Zustimmung; das Einschalten fragt die Browser-Berechtigung ab, registriert den reinen Push-Worker unter /cockpit/sw.js und bindet das Abonnement an den angemeldeten Benutzer und Workspace. Dieselben Push-Routen akzeptieren eine Root-Browsersitzung mit CSRF; API-Schlüssel und Bearer-Tokens werden abgewiesen, und Installationspfade fallen nie auf die Root-Sitzung zurück. Der Ablauf einer untätigen Sitzung beendet es nicht; eine erneute Anmeldung bindet das Abonnement ohne erneute Nachfrage an die neue Sitzung. Es endet bei Abmeldung, ausdrücklichem Sitzungswiderruf, Workspace-Wechsel, Deaktivierung oder Löschung des Benutzers, Workspace-Lebenszyklus, Ausschalten, einem abgelaufenen Endpunkt und nach 30 Tagen ohne Nutzung. Ein anderer Benutzer oder Workspace im selben Browser muss erneut zustimmen. Jedes Gerät erhält pro Aufmerksamkeitsänderung höchstens eine Benachrichtigung; ist die installierte App auf demselben Gerät aktiviert, wird die App benachrichtigt und der Browser-Tab übersprungen. Browser ohne Push im Tab, etwa Safari auf iOS, bieten stattdessen den Installationsweg an.

Auf dieser Seite

Datenschutzeinstellungen

Notwendige Einstellungen

Deine Datenschutzentscheidung wird auf deinem Gerät gespeichert. Formulare speichern zusätzlich Anfragekennung und Zeitpunkt für die Sitzung, ohne Formularinhalte. Sprache und Darstellung folgen Browser und System, ohne gespeicherte Präferenzen.

Analytics

Analytics ist auf dieser Website derzeit nicht verfügbar. Es wird kein Google-Analytics-Script geladen und keine Messung gesendet.

Datenschutzhinweise