Разрешения для ввода-вывода файлов из веб-службы в Linux / axis2

#linux #permissions #axis2

#linux #разрешения #apache-axis

Вопрос:

Я пытаюсь управлять файлом и создать новую папку из веб-службы и сталкиваюсь с ошибкой «Отказано в разрешении». Какой рекомендуемый способ настроить эти разрешения? Вариант использования следующий.

  1. Имя пользователя передается в качестве параметра в URL вместе с командой.
  2. На основе команды я пытаюсь создать файл или скопировать некоторые файлы в каталог определенного пользователя. Можно с уверенностью предположить, что этот пользователь отличается от пользователя, которому принадлежит tomcat.
  3. Возможно ли выдавать себя за системного пользователя для запуска других процессов / сценариев оболочки из веб-службы?

Ответ №1:

По умолчанию ваша веб-служба запускается как непривилегированный пользователь, например www-data. Ваша веб-служба может создавать файлы только в каталогах, к которым у нее есть доступ на запись.

Из соображений безопасности не рекомендуется предоставлять веб-службе какой-либо доступ на запись к полным пользовательским каталогам. Вы могли бы сделать что-то вроде:

  1. Создайте отдельную папку для загрузки для каждого пользователя /home/[username]/webuploads
  2. предоставьте разрешения на запись www-данных в эту папку
    • chmod a rw /home/[username]/webuploads
    • или setfacl -m u:www-data:rwx /home/[username]/webuploads поддерживает ли ваша файловая система списки acl

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