Нужны ли NodeJs открытые файловые разрешения для доступа к файлу? - PullRequest
0 голосов
/ 18 июня 2019

Я попытался получить доступ к данным с помощью FileZilla и дополнительно загрузить их. Это сработало. Однако теперь я попытался получить доступ к тому же файлу с тем же пользователем с помощью nodeJS с помощью «GET». Здесь я получаю сообщение об ошибке «Отказано в доступе».

Я посмотрел разрешения, и владелец и группа файла могут читать и записывать файл, но нет общедоступных разрешений. Мой пользователь является частью группы. Тем не менее, мне теперь интересно, если файл должен иметь публичные разрешения на чтение и запись для доступа к файлу через nodeJs?

Краткая информация: я получаю доступ к файлу как с FileZilla, так и с NodeJS через SFTP. Все конфиги / пользователь и т. Д. Одинаковы.

Код:

let Client = require('ssh2-sftp-client');
let sftp = new Client();

sftp.connect({
    host: config.development.host,
    port: config.development.port,
    username: config.development.username,
    password: config.development.password
}).then(() => {
    return sftp.get(`${config.development.pathToFile}/${filename}`);
}).then(async (data) => {
    console.log('data', data);
    csv({
            noheader: true,
            output: "csv"
        })

Спасибо!

1 Ответ

0 голосов
/ 19 июня 2019

Нужны ли NodeJs общедоступные разрешения на доступ к файлу для доступа к файлу ?

Пока пользователь, породивший процесс Node.js, имеет разрешения на чтение для определенного файла, вы не должны сталкиваться с какими-либо проблемами.


Я бы посоветовал узнать, как работает многопользовательская среда и управление разрешениями.

Рекомендуемое чтение:

Рекомендуется дополнительно прочитать:

Модель безопасности Linux по умолчанию немного негибкая.Чтобы предоставить особый доступ (например, права на изменение) группе людей, вам нужно, чтобы ваш системный администратор создал группу с этими людьми.Кроме того, если вы хотите предоставить другой набор прав доступа (например, права на чтение) другой группе людей, вы не сможете этого сделать, поскольку вы можете назначить только одного владельца группы для файла или каталога.Чтобы решить эту проблему, вы можете использовать ACL (списки контроля доступа).Вы можете узнать больше о них по этой ссылке: ACL

(цитата извлечена отсюда)

В конце концов, это пригодится, и вам не потребуется много усилий, чтобы понять.

...