Je moet nadenken over het scheiden van de applicatie als een zelfstandige desktop-app (die fungeert als een client-side applicatie) versus de server voor je API en backend-logica die worden gehost door een cloudprovider.
Door dit te doen, kunt u zich concentreren op het scheiden van zorgen voor de desktop (elektronen) toepassing en ervoor zorgen dat servers (zoals API, authenticatie en andere backend-logica) goed zijn geoptimaliseerd en als meerdere werknemers van zichzelf dienen.
Er zijn enkele beveiligingsproblemen met de ontwikkeling van een Electron-toepassing als u uw Node-versie niet regelmatig bijwerkt (zoals geheugenbufferoverloopaanvallen).
Een ander probleem om te overwegen is hoe de Electron-gemeenschap dient en problemen oplost met machtigingen voor de client-side app en de reguliere bestandsmachtigingen die worden verleend wanneer de gebruiker uw app installeert.
Als ontwikkelaar is het aan jou om ervoor te zorgen dat bibliotheken van derden de computer van de gebruiker niet beschadigen. (Stel je voor dat je een bibliotheekafhankelijkheid installeert waarvan het doel is om het hele bestandssysteem kwaadwillig te verwijderen).
Voor authenticatie kunt u antwoorden van uw API leveren op basis van de client-side verzoeken/posts die u aan de authenticatieservice verstrekt. U hoeft niet per se de authenticatieserver te leveren/installeren in uw Electron-app, omdat dit voor de gebruiker wat lastig kan zijn om bij te werken, en het stelt anderen ook bloot aan uw authenticatieservice voor reverse-engineering/crack.