Мне нужно выполнить код с правами администратора во многих местах. Я нахожу sudo.exe и успешно запрашиваю у пользователя разрешение и пароль. Я до сих пор не мог понять, как именно использовать sudo.exe. Как я получаю ту же ошибку разрешение отклонено при удалении файла, который требует разрешения администратора. Вот так выглядит мой код:
const fs = require('fs')
var sudo = require('sudo-prompt');
var options = {
name: 'Electron',
};
sudo.exec('echo hello', options,
function(error, stdout, stderr) {
if (error) throw error;
// Code that I want to run with admin rights
fs.unlinkSync("/private/var/log/fsck_hfs.log", (err) => {
alert("File succesfully deleted");
});
}
);
Я думаю, что этот метод можно использовать только для запуска команды, например echo hello в этом случае. Что если я на самом деле хочу выполнить кусок кода вместо команды?
Этот метод работает или это любой другой доступный подход?
Есть ли в Electron лучший способ получения привилегий?