我正在创建 Electron 的内部应用程序。出于安全原因,我要确保不会将偶然的信息上传到其他Web URL。
在 Electron 应用程序中有什么方法可以做到这一点?
最佳答案
从 Electron 文档中:
https://electronjs.org/docs/tutorial/security#12-disable-or-limit-navigation
const URL = require('url').URL
app.on('web-contents-created', (event, contents) => {
contents.on('will-navigate', (event, navigationUrl) => {
const parsedUrl = new URL(navigationUrl)
if (parsedUrl.origin !== 'https://my-own-server.com') {
event.preventDefault()
}
})
})
除了限制导航外,同一页面上还有多个建议:
https://electronjs.org/docs/tutorial/security
您还可以通过以下强大资源进行工作:
https://www.blackhat.com/docs/us-17/thursday/us-17-Carettoni-Electronegativity-A-Study-Of-Electron-Security-wp.pdf
一些有趣的技术包括在 session 上使用setPermissionRequestHandler来设置防止打开外部链接的回调。
关于node.js - 有没有办法限制Node.js Electron 应用程序只能访问某些网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54786431/