Home
» Hoe
»
Stel ONLYOFFICE JWT-geheimen in voor zowel de server als de connector.
Stel ONLYOFFICE JWT-geheimen in voor zowel de server als de connector.
Gebruik consistent één sterk JWT-geheim: configureer dit in ONLYOFFICE Docs, kopieer dezelfde waarde naar de ONLYOFFICE-instellingen van het verbonden platform en houd JWT-validatie ingeschakeld. Docs 7.2 en latere versies schakelen JWT standaard in en genereren automatisch een geheim; het wijzigen van het geheim betekent dat elke integratie moet worden bijgewerkt om overeen te komen met het nieuwe geheim. De exacte methode aan de serverzijde hangt af van of Docs als Linux-pakket of als Docker-container wordt uitgevoerd.
Wat moet er overeenkomen?
Met JWT (JSON Web Token) kan ONLYOFFICE Docs ondertekende verzoeken verifiëren. Het documentplatform en Docs moeten dezelfde geheime sleutel en compatibele headerinstellingen gebruiken. De server gebruikt aparte tokeninstellingen voor browserconfiguratie en inkomende en uitgaande serviceverzoeken; de gedeelde geheime sleutelwaarden beschermen deze uitwisselingen. Plaats de geheime sleutel niet op een openbare webpagina, in een client-side JavaScript-bundel, een supportticket of een openbaar toegankelijke broncode-repository.
Voordat u gaat bewerken, moet u uw implementatietype identificeren en de documentatie-URL noteren die door uw connector wordt gebruikt. Genereer een lang, onvoorspelbaar geheim met een wachtwoordmanager of een cryptografisch beveiligde generator. Beschouw dit als een inloggegeven en sla het op in een beveiligde configuratieopslag.
De token-inschakelingsinstellingen in local.json moeten zijn ingeschakeld voor validatie in de browser, inbox en outbox.
Een Linux-installatie configureren
Voor een pakketgebaseerde Linux-installatie, bewerk het bestand /etc/onlyoffice/documentserver/local.json. Behoud alle bestaande instellingen: voeg de volgende sleutels samen met de bestaande JSON in plaats van het hele bestand te vervangen. Het voorbeeld toont de structuur voor tokenvalidatie en de drie overeenkomende geheime locaties zoals beschreven in de officiële configuratiehandleiding:
Vervang elke placeholder door exact dezelfde geheime waarde. Plak niet de voorbeeldplaceholder zelf. De schakelaars browser, inbox, en outboxzijn afzonderlijk; het inschakelen van slechts één schakelaar activeert niet alle verzoekvalidatie. In documentatieversie 7.2 en later is JWT standaard ingeschakeld, maar het expliciet controleren van deze instellingen is nuttig bij het controleren van een bestaande configuratie of het afstemmen van gedrag op verschillende knooppunten. Voor versies vóór 7.2 adviseert de officiële handleiding om alle drie de schakelaars in te schakelen.
Zorg ervoor dat de geheime strings voor de inbox, outbox en sessie identiek zijn, zodat de JWT-controles van de server dezelfde sleutel gebruiken.
Controleer de JSON-syntaxis voordat u de service opnieuw opstart. Start vervolgens de Document Server-services opnieuw op, zodat de wijzigingen worden geladen:
Voer de opdracht uit met een account dat gemachtigd is om systeemservices te beheren. Op Windows is het configuratiebestand %ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json; gebruik in plaats van de Linux-opdracht de herstartinstructies voor Windows in de officiële handleiding.
Docker configureren zonder de gegenereerde configuratie te bewerken
Voor de officiële Docker-image van de Document Server stelt u JWT in via omgevingsvariabelen van de container. De officiële handleiding waarschuwt dat handmatige wijzigingen local.jsonongedaan kunnen worden gemaakt wanneer de container opnieuw wordt opgestart. Stel de JWT in JWT_ENABLED=truevia JWT_SECRETde opdracht voor het aanmaken van de container of via de Compose-service en maak de container vervolgens opnieuw aan, zodat de omgevingsvariabelen van kracht worden. Bewaar het geheim in een beveiligd omgevingsbestand of geheimbeheerder en beperk de machtigingen van dat bestand; vermijd het toevoegen ervan aan versiebeheer.
Definieer dit ONLYOFFICE_JWT_SECRETin de implementatieomgeving of een beveiligd .envbestand. Gebruik een geteste imagetag in plaats van te vertrouwen op latesteen standaardwaarde en raadpleeg de documentatie voor de exacte tag die u gebruikt. Nadat u omgevingswaarden hebt gewijzigd, maakt u de container opnieuw aan met uw normale implementatieproces. Een simpele herstart kan de oude omgeving behouden.
Voor Docker moet je de JWT-instellingen doorgeven bij het aanmaken van de container en het geheim buiten het Compose-bestand bewaren.
Update de connector en bescherm het geheim.
Open de integratie-instellingen in het platform dat verbinding maakt met ONLYOFFICE Docs, zoals Nextcloud of een andere ondersteunde connector. Voer hetzelfde JWT-geheim in het veld voor de geheime sleutel in en sla de wijzigingen op. Controleer ook de geconfigureerde URL van de documentserver en, indien de connector deze beschikbaar stelt, de autorisatieheader. De standaardheader in ONLYOFFICE Docs is Authorization; wijzig deze alleen als beide partijen geconfigureerd zijn om hetzelfde alternatief te gebruiken.
Een mismatch in de geheime gegevens komt vaak voor als een ongeldige token- of autorisatiefout bij het openen of opslaan van een document. Een mismatch kan ook optreden wanneer slechts één Docs-node achter een load balancer is bijgewerkt. Als u meerdere nodes gebruikt, synchroniseer dan dezelfde geheime gegevens en tokeninstellingen op alle nodes voordat u er verkeer naartoe stuurt. Voer wijzigingen gefaseerd door: werk Docs en de connector tegelijkertijd bij en houd er rekening mee dat bestaande editorsessies of verzoeken die met de oude waarde zijn ondertekend, tijdens de overgang mogelijk niet werken.
Iedereen die het geheim kan lezen, kan tokens aanmaken die de server mogelijk accepteert. Beperk de toegang tot configuratiebestanden en implementatievariabelen, gebruik versleuteld transport voor de verbinding tussen de connector en de documentatie, en vervang het geheim als het mogelijk is blootgesteld. Vervanging vereist dat alle documentatieknooppunten en de connector worden bijgewerkt naar de nieuwe waarde; laat geen oude inloggegevens achter in ingecheckte bestanden of logboeken.
Schakel JWT-verificatie in de connector in en voer hetzelfde geheim in als geconfigureerd op de documentenserver.
Controleer de configuratie
Controleer of de Docs-service of -container actief is na de configuratiewijziging.
Voor een Docker-implementatie kunt u sudo docker exec <container_name> sudo documentserver-jwt-status.shde JWT-status controleren met behulp van de meegeleverde containernaam. Deze helperfunctie is gedocumenteerd voor Docker; ga er niet vanuit dat deze in elke pakketinstallatie beschikbaar is.
Open een document via het gekoppelde platform, voer een kleine, onschadelijke bewerking uit en sla het op. Controleer of de editor is geopend en of het platform de opgeslagen wijziging heeft ontvangen.
Als de authenticatie mislukt, vergelijk dan teken voor teken het server- en connectorgeheim, controleer of alle relevante token-switches zijn ingeschakeld en verifieer de configuratie van de aanvraagheaders.