Desktopapplicaties ontwikkelen met Electron · Les

Codeondertekening en notarization

Begrijp het belang van codeondertekening voor Windows en notarization voor macOS om het vertrouwen van gebruikers en naleving van beveiligingsvereisten te garanderen.

Les 2 van 412 stappen

Codeondertekening en notarization is een gratis Desktopapplicaties ontwikkelen met Electron-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Desktopapplicaties ontwikkelen met Electron. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Desktopapplicaties ontwikkelen met Electron bevat in totaal 4 lessen.

Vertrouwen opbouwen met code-ondertekening

Wanneer je je Electron-app distribueert, moeten gebruikers deze vertrouwen. Besturingssystemen zoals Windows en macOS hebben ingebouwde beveiligingsfuncties om gebruikers tegen schadelijke software te beschermen.

Code-ondertekening en notarization zijn essentiële stappen om de authenticiteit en integriteit van je app aan te tonen, zodat gebruikers deze veilig kunnen installeren.

Wat is code-ondertekening?

Code-ondertekening is vergelijkbaar met het toevoegen van een digitale handtekening aan je applicatie. Hierbij wordt een cryptografisch certificaat gebruikt dat is uitgegeven door een vertrouwde Certificate Authority (CA).

  • Authenticiteit: Verifieert dat de app van jou, de uitgever, afkomstig is.
  • Integriteit: Bevestigt dat er sinds het ondertekenen niet met de app is geknoeid.

Als de handtekening ongeldig of gewijzigd is, waarschuwt het besturingssysteem de gebruiker.

Vertrouwen in Windows

Op Windows veroorzaken niet-ondertekende applicaties vaak beveiligingswaarschuwingen zoals "Windows heeft uw pc beschermd" (het SmartScreen-filter).

Een geldige codehandtekening helpt je app deze controles te doorstaan, geeft gebruikers vertrouwen en maakt het installatieproces eenvoudiger. Hierdoor kan je app bij sommige bewerkingen ook zonder extra beheerdersvragen worden geïnstalleerd.

Windows-uitvoerbare bestanden ondertekenen

Om je Windows-Electron-app te ondertekenen heb je een Code Signing Certificate nodig. Dit is meestal een PFX-bestand met je persoonlijke sleutel en certificaatketen.

Hulpmiddelen zoals electron-builder vereenvoudigen dit proces doordat je je certificaatgegevens in de configuratie kunt opgeven.

{
  "build": {
    "win": {
      "target": "nsis",
      "signingHashAlgorithms": ["sha256"],
      "signAndEditExecutable": true
    },
    "cscKeyPassword": "your-cert-password",
    "cscInstallerPassword": "your-cert-password",
    "cscLink": "path/to/your/certificate.pfx"
  }
}

Een tijdstempel aan je handtekening toevoegen

Bij het ondertekenen van code is het belangrijk om ook een tijdstempel aan je handtekening toe te voegen. Zo blijft de handtekening geldig, zelfs als je ondertekeningscertificaat verloopt, omdat de code is ondertekend toen het certificaat nog geldig was.

De meeste ondertekeningshulpmiddelen, waaronder electron-builder, kunnen automatisch een URL van een tijdstempelserver aan je ondertekeningsproces toevoegen.

Notarization voor macOS uitgelegd

Apple heeft voor macOS Notarization geïntroduceerd als aanvullende beveiligingscontrole. Dit is een geautomatiseerde dienst die je app scant op schadelijke inhoud en problemen met de codehandtekening.

Zie het als een "keurmerk" van Apple voor je app voordat deze probleemloos kan worden uitgevoerd op macOS Catalina en nieuwer.

Voldoen aan Apple's Gatekeeper

De macOS-beveiligingsfunctie Gatekeeper blokkeert standaard niet-ondertekende of niet-genotariseerde apps. Gebruikers zien een waarschuwing dat de app "niet kan worden geopend omdat de ontwikkelaar niet kan worden geverifieerd".

Met notarization kan je app de controles van Gatekeeper doorstaan zonder gebruikers lastig te vallen of hen handmatig beveiligingsinstellingen te laten omzeilen.

Voorbereiden op notarization

Om je Electron-app te laten notariseren heb je het volgende nodig:

  • Een Apple Developer ID.
  • Een appspecifiek wachtwoord voor je Apple ID.
  • Je app moet zijn ondertekend met een certificaat van het type Developer ID Application.
  • Hardened Runtime moet zijn ingeschakeld (een beveiligingsfunctie).

electron-builder regelt de meeste van deze configuraties voor je.

Notarization met electron-builder

electron-builder vereenvoudigt het notarization-proces. Je configureert je Apple ID-gegevens en het hulpmiddel uploadt je app naar de notarization-service van Apple.

Het wacht tot de notarization is voltooid en "nietariseert" vervolgens het notarization-ticket aan je app-bundel.

{
  "build": {
    "mac": {
      "hardenedRuntime": true,
      "gatekeeperAssess": false,
      "entitlementsInherit": "build/entitlements.mac.plist",
      "entitlements": "build/entitlements.mac.plist"
    },
    "afterSign": "electron-builder-notarize"
  }
}

Veilig en geautomatiseerd ondertekenen

Bewaar je ondertekeningscertificaten en persoonlijke sleutels altijd veilig. Behandel ze als gevoelige wachtwoorden.

Integreer code-ondertekening en notarization in je Continuous Integration/Continuous Deployment (CI/CD)-pipeline om het proces te automatiseren en ervoor te zorgen dat elke build correct wordt ondertekend en genotariseerd.

Controleer je kennis

Welke uitspraken beschrijven correct het doel of de vereisten van code-ondertekening en macOS-notarization?

Samenvatting: vertrouwen en beveiliging

In deze les hebben we geleerd welke cruciale rol code-ondertekening voor Windows en notarization voor macOS spelen bij het distribueren van je Electron-applicaties.

Deze processen bouwen vertrouwen bij gebruikers op, waarborgen de integriteit van apps en helpen je app probleemloos te werken op doelbesturingssystemen door aan hun ingebouwde beveiligingsvereisten te voldoen.

Gratis beginnen

Leer JavaScript met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
47

Veelgestelde vragen

Is de les “Codeondertekening en notarization” gratis?

Ja — de volledige tekst van “Codeondertekening en notarization” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Desktopapplicaties ontwikkelen met Electron wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Desktopapplicaties ontwikkelen met Electron bevat in totaal 4 lessen.

Wat leer ik in “Codeondertekening en notarization”?

Begrijp het belang van codeondertekening voor Windows en notarization voor macOS om het vertrouwen van gebruikers en naleving van beveiligingsvereisten te garanderen. Je oefent met Desktopapplicaties ontwikkelen met Electron door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Desktopapplicaties ontwikkelen met Electron te beginnen?

Ervaring vooraf is niet nodig. Desktopapplicaties ontwikkelen met Electron op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Codeondertekening en notarization”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Desktopapplicaties ontwikkelen met Electron?

Ja. Elke les over Desktopapplicaties ontwikkelen met Electron bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Cross-platform verpakken
  2. Codeondertekening en notarization
  3. Distribueren via appstores
  4. Releases automatiseren met CI/CD
← Terug naar Desktopapplicaties ontwikkelen met Electron