Browser Environment
Deklarieren Sie, wie Ihr Produktions-Build ausgeliefert wird, damit der geschützte Code seine Integrität daran binden kann.
Die Option browserEnvironment deklariert Fakten über die Umgebung, in der Ihr Produktions-Build ausgeliefert wird, damit sich der geschützte Code an sie binden kann. Sie wirkt nur zusammen mit vmSelfDefending; für sich allein bewirkt sie nichts.
Es ist ein kleines Objekt. Derzeit enthält es ein einziges Feld:
browserEnvironment: { transport: 'https' }
transport
Das Schema, über das Ihre Produktionsumgebung das Bundle ausliefert — 'http' oder 'https'.
Mit 'https' läuft eine Kopie, die ein Reverse Engineer über einfaches HTTP ausliefert, nicht korrekt. 'http' oder ein nicht gesetztes Feld fügt keinen solchen Schutz hinzu.
Unterstützte Targets
browserEnvironment gilt nur für die Targets browser, browser-no-eval und service-worker. Für node, userscript und bytenode wird die Option abgelehnt — die Obfuskation schlägt mit einem Validierungsfehler fehl, statt die Einstellung stillschweigend zu verwerfen.
Voraussetzungen
- Zusammen mit
vmSelfDefendingaktiviert; andernfalls wirkungslos. - Ein Target
browser,browser-no-evaloderservice-worker. - Obfuscator-Version 7.9.0 oder neuer.
Beispiel
JavaScriptObfuscator.obfuscate(code, {
vmObfuscation: true,
vmSelfDefending: true,
target: 'browser',
browserEnvironment: { transport: 'https' }
});