Mandantenfähiger Server

Konfigurieren des Multitenant-Servers

  1. Installieren des Developer Edition-Servers

    Zum Aktivieren des Multi-Tenancy-Modus ist eine gültige Multi-Tenancy-Lizenz erforderlich.

    Bitte wenden Sie sich an Ihren Vertriebsassistenten, um diese Lizenz anzufordern.

    Bitte registrieren Sie das Produkt gemäß den bereitgestellten Anweisungen.

  2. Öffnen Sie die Konfigurationsdatei local.json und setzen Sie das Feld baseDir auf den Pfad des Ordners, der die Mandanteneinstellungen enthält. Wir empfehlen die Verwendung des Werts /var/www/onlyoffice/Data/tenants.
  3. Legen Sie in local.json das Feld baseDomain auf die Second-Level-Domäne fest, die als Basisdomäne für alle Ihre Mandanten dienen soll.
  4. Statistiken zur Hauptlizenz werden in einem Standardmandanten erfasst.
    • Der Name des Standardmandanten wird im Feld defaultTenant innerhalb von defaultTenant angegeben.

      Sie können keinen weiteren Mandanten mit diesem Namen erstellen.

    • Anfragen an die baseDomain, die keinen Mandanten angeben, werden automatisch an den Standardmandanten weitergeleitet.
    • Der Standardmandant erfordert keine zusätzliche Konfiguration. Anfragen an diesen Mandanten werden jedoch mit einem in der Datei local.json definierten Geheimnis signiert.
    • Sehen Sie sich die Statistiken auf der Info-Seite des Standardmandanten an.

Hinzufügen eines neuen Mandanten

  1. Um einen neuen Mandanten hinzuzufügen:
    • Erstellen Sie einen neuen Ordner im Verzeichnis baseDir auf dem Server.
    • Der Name des Mandanten wird aus dem Ordnernamen und der baseDomain gebildet (wenn der Ordner beispielsweise tenant1 heißt und die baseDomain example.com ist, wird der Name des Mandanten zu tenant1.example.com).

      Stellen Sie sicher, dass dieser Ordner unter dem Dateisystem erstellt wird, in dem sich default.json befindet.

    Fügen Sie in jeden Mandantenordner die folgenden zwei obligatorischen Dateien ein:

    default.json:

    "tenants": {
                        "baseDir": "/var/www/onlyoffice/Data/tenants",
                        "baseDomain": "mydomain.example",
                        "filenameConfig": "config.json",
                        "filenameSecret": "secret.key",
                        "filenameLicense": "license.lic",
                        "defaultTenant": "localhost",
                        "cache": {
                                "stdTTL": 300,
                                "checkperiod": 60,
                                "useClones": false
                    }

    Implementieren Sie für jeden Mandanten eine secret.key-Datei, um Isolation und Sicherheit zu gewährleisten. Falls nicht vorhanden, wird das Geheimnis des Hauptmandanten verwendet. Wenn ein JWT-Geheimnis angegeben wird, hat das Geheimnis in config.json Vorrang.

    Dateisystem:

    root@3694c287928a:/var/www/onlyoffice/Data/tenants# 1s -a
                    . .. tenant1 tenant2
                    root@3694c287928a:/var/www/onlyoffice/Data/tenants#
  2. root@3694c287928a:~# 1s /var/www/onlyoffice/Data/tenants/tenant1
                    config.json license.lic
                    root@3694c287928a:~#
    • license.lic – Pflichtdatei mit Mandantenlizenz
    • config.json – ist eine obligatorische Konfigurationsdatei, die die Hauptserverkonfiguration überschreibt

    Das Ausfüllen des JWT-Geheimnisses ist obligatorisch.

  3. Die Datei license.lic überschreibt bestimmte Felder der Hauptlizenz für den Mandanten. Die Regeln lauten:
    • Signature: Eine Lizenzunterschrift ist nicht erforderlich.
    • Field Inheritance: Sie können einige oder alle Felder aus der Hauptlizenz übernehmen. Nicht angegebene Felder übernehmen standardmäßig die Werte der Hauptlizenz und werden entsprechend validiert.
    • Limit Adjustments: Sie können die Werte im Vergleich zur Hauptlizenz nicht erhöhen, aber verringern. Zu den anwendbaren Feldern gehören: connections, connections_view, users_count, users_expire, users_view_count, end_date, timelimited, advanced_api, branding, customization.

      Beispiel: Sie können branding und customization entfernen oder einen Testmodus einrichten.

      Eine Erhöhung der Werte ist wirkungslos, da die Hauptlizenz jedes Mal neu geprüft wird.

    • Caching: Nach dem Lesen werden die Lizenzwerte 5 Minuten lang zwischengespeichert.

    Beispielsweise kann license.lic den folgenden Inhalt haben:

    {"branding":false,"connections":100,"users_count":0}
  4. Mit der Datei config.json können Sie bestimmte Servereinstellungen überschreiben. Die Regeln lauten:
    • Non-overridable Settings: Beim Serverstart verwendete Einstellungen (wie Adressen externer Dienste, Protokollpfade, Lizenzen und Dateicache) können nicht überschrieben werden.
    • Overridable Settings: Sie können Einstellungen überschreiben, die sich auf Laufzeitvorgänge auswirken, einschließlich WOPI-Konfiguration, IP-Filterung, JWT-Geheimnis, Deaktivierung des anonymen Zugriffs und Dateigrößenbeschränkungen.
    • Caching: Nach dem Lesen werden die Konfigurationseinstellungen 5 Minuten lang zwischengespeichert.

    Beispielsweise kann die Datei config.json den folgenden Inhalt haben:

    {
     "wopi": {
      "enable": true
     },
     "services": {
      "CoAuthoring": {
       "secret": {
        "inbox": {"string": "secret", "file": ""},
        "outbox": {"string": "secret", "file": ""},
        "session": {"string": "secret", "file": ""}
       },
       "token": {
        "enable": {
         "browser": true,
         "request": {
          "inbox": true,
          "outbox": true
         }
        }
       }
      }
     }
    }

Hosten ONLYOFFICE Docs auf Ihrem eigenen Server oder nutzen Sie es in der Cloud

Artikel zum Thema:
Alle Schlagwörter