Was ist JWT und wie schützt diese Technologie Ihre Dokumente?

1 Oktober 2022By Vlad

Es gibt viele Möglichkeiten, Dateien aktiv zu schützen — durch Verschlüsselung, Wasserzeichen und Zugriffsberechtigungen. Aber die Sicherheit von Dokumenten hört damit nicht auf. Lesen Sie diesen Beitrag, um JWT zu entdecken, ein wichtiges Tool für den Zugriffsschutz, das in ONLYOFFICE seit Version 7.2 standardmäßig aktiviert ist.

What is JWT and how this technology protects your documents

Was ist JWT?

JSON Web Token (JWT, ausgesprochen als /dʒɒt/) ist ein offener Standard für den sicheren Online-Informationsaustausch, der hauptsächlich für zwei Zwecke verwendet wird: Autorisierung und Datenübertragung.

Ein kompaktes JSON-Objekt enthält die Authentifizierungsinformationen und erlaubt es, berechtigte Benutzer:innen des Dienstes zu überprüfen, wenn es in Webanwendungen verwendet wird. Anders ausgedrückt: es hilft der Anwendung zu bestätigen, dass die Informationen wirklich von der Person gesendet wurden, die sie angeblich sind.

JWT ist ein in sich geschlossenes Objekt in Form einer Zeichenkette, das aus drei Teilen besteht: Header, Payload und Signatur. Der Header enthält die Informationen über das Token und wie die Signatur erzeugt wird, der Payload enthält die notwendigen Angaben über Benutzer:innen, um sie die Zugriffsberechtigung zu erteilen, und die Signatur validiert die Personen.

Das Token kann mit einem geheimen Schlüssel signiert werden, mit dem die Herkunft der übertragenen Daten überprüfen wird.

Wie ONLYOFFICE Sicherheits-Token verwendet

In ONLYOFFICE schützt JWT den Datenfluss zwischen dem Editor und Benutzer:innen. Es hilft bei der Verifizierung von Personen, die bei Bearbeitungssitzungen in Docs aktiv werden und versuchen, bestimmte Handlungen in Dokumenten durchzuführen.
Für jede HTTP-Anfrage, die vom und an den ONLYOFFICE-Dokumentenserver kommt, wird ein Token generiert und zu den Parametern hinzugefügt.

Dabei werden unterschiedliche JWT-Token für verschiedene Benutzerhandlungen generiert. Während die Token in jedem Fall mit demselben Geheimschlüssel signiert werden, unterscheiden sich die Informationen, die zur Autorisierung der Eingabe benötigt werden. So wird beispielsweise ein einzelnes Token für das Öffnen des Editors, für das Einfügen eines Bildes in die Datei, für das Öffnen des Versionsverlaufs usw. erstellt.

Um zum Beispiel ein PNG-Bild in die auf www.example.com gehostete Datei einzufügen, werden die folgenden Parameter ins Token aufgenommen:

{
"fileType": "png",
"url": "https://example.com/url-to-example-image.png"
}

Und so wird das Beispiel-Token aussehen:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWxlVHlwZSI6InBuZyIsInVybCI6Imh0dHBzOi8vZXhhbXBsZS5jb20vdXJsLXRvLWV4YW1wbGUtaW1hZ2UucG5nIn0.FXuC3GUvPq3japwyzo4i-utUe3g1rfSDt1ytuK_VyCc

Um das JWT zu signieren, wird in jedem Sharing-Dienst, in den ONLYOFFICE Docs integriert ist, ein eigener Geheimschlüssel verwendet.

Wo kann ich einen geheimen Schlüssel erhalten?

In früheren Versionen von ONLYOFFICE Docs musste das JWT-Geheimnis von einem Administrator des Host-Dienstes (z. B. Nextcloud) generiert und manuell über die Einstellungen an ONLYOFFICE Document Server übermittelt werden, um es zu aktivieren.

Ab Version 7.2 ist JWT standardmäßig aktiviert. Wenn ONLYOFFICE Docs installiert und gestartet wird, wird automatisch ein zufälliges Geheimnis generiert, das nur noch auf der Seite der Host-Anwendung hinzugefügt werden muss.

Hinweis: Wenn Sie bereits ONLYOFFICE Docs mit JWT verwenden, bleibt der ursprüngliche Schlüssel in Ihrer Installation. Die Ausnahme ist die Docker-Installation: Wenn im installierten Document Server die env-Variablen nicht gesetzt oder die JWT-Parameter nicht definiert sind, wird nach der Aktualisierung ein zufälliges Geheimnis generiert.

Installation für Linux- und Windows-Server

Sie können das standardmäßige JWT-Geheimnis aus der Datei local.json unter folgendem Pfad abrufen:

Für Linux: /etc/onlyoffice/documentserver/local.json

Für Windows: %ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json

Sie finden das Geheimnis im Parameter services.CoAuthoring.secret.browser.string.

Docker-Installation

Wenn ONLYOFFICE Docs mit Docker installiert wurde, führen Sie das folgende Skript aus, um das Geheimnis zu erhalten:

sudo docker exec f00ad6e66a40 /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'

Um das Standardgeheimnis durch einen eigenen Schlüssel zu ersetzen, lesen Sie die Dokumentation.

Individuelle Anleitungen für jede Installationsmethode sind nach der Installation auch auf der Startseite von ONLYOFFICE Docs verfügbar.

Wo ist JWT verfügbar?

JWT wird in fast allen offiziellen Integrations-Apps von ONLYOFFICE unterstützt:

  • Nextcloud
  • ownCloud
  • Alfresco
  • Moodle
  • Mattermost
  • Chamilo
  • HumHub
  • Confluence
  • Plone
  • Strapi
  • Liferay
  • Jira
  • Nuxeo
  • Redmine

Sie können alle verfügbaren Integrationen auf unserer Website entdecken und auch Anleitungen zur Konfiguration der Token auf den entsprechenden GitHub-Seiten finden.

Wenn Sie eine ONLYOFFICE-Integrations-App für Ihre eigene App erstellen möchten, ist es möglich, die Unterstützung für die Sicherheits-Tokens mithilfe unserer API-Dokumentation hinzuzufügen.