const electron = require('electron'); electron.app.on('web-contents-created', function(event, contents) { contents.on('will-attach-webview', function(event, webPreferences, params) { delete webPreferences.preloadURL; delete webPreferences.preload; webPreferences.nodeIntegration = false; webPreferences.webSecurity = true; webPreferences.allowRunningInsecureContent = false; webPreferences.experimentalFeatures = false; webPreferences.enableBlinkFeatures = false; // For now, we never use . Just disable it entirely. event.preventDefault(); }); contents.on('will-navigate', (event, navigationUrl) => { event.preventDefault(); }); contents.on('new-window', (event, navigationUrl) => { event.preventDefault(); }); }); electron.app.on('ready', function() { electron.session.defaultSession.setPermissionRequestHandler(function( webContents, permission, callback ) { var url = webContents.getURL(); if (url.startsWith('file://')) { callback(true); } else { callback(false); } }); });