Есть ли способ ограничить доступ к приложению nodejs Electron только определенными веб-адресами? - PullRequest
0 голосов
/ 20 февраля 2019

Я создаю внутреннее приложение в электронном виде.Из соображений безопасности я хочу убедиться, что случайно не загружается информация на другие веб-адреса.

Есть ли способ сделать это в электронных приложениях?

1 Ответ

0 голосов
/ 20 февраля 2019

Из документации 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

Некоторые интересные приемы включают использование setPermissionRequestHandler в сеансе для установки обратного вызова, предотвращающего открытие внешних ссылок.

...