Я занимаюсь разработкой веб-приложения на Java, оно развернуто в Wildfly 15. Wildfly запускается с определенным пользователем (wildfly или jboss), приложение создает файл (.docx), например: stuff.docx в определенной директории/ opt / documents, этот каталог передается другому пользователю (lool).
Пользователь "lool" запускает другое приложение (loolwsd LibreOffice Web) для редактирования текста, но имеет некоторые строгие права доступа и должен быть владельцемфайлы.Я добавил пользователя wildfly в группу редактора и изменил права доступа группы на 775 в каталоге и файле, но редактор не работает правильно.
Я пытался сменить владельца с помощью Java NIO, но выбрасывал «Операция не разрешена»
Пример:
Path path = Paths.get(sPath);
FileOwnerAttributeView foav = Files.getFileAttributeView(path, FileOwnerAttributeView.class);
UserPrincipal owner = foav.getOwner();
logger.info("Original owner of " + path + " is " + owner.getName());
FileSystem fs = FileSystems.getDefault();
UserPrincipalLookupService upls = fs.getUserPrincipalLookupService();
UserPrincipal newOwner = upls.lookupPrincipalByName("lool");
foav.setOwner(newOwner);
UserPrincipal changedOwner = foav.getOwner();
logger.info("New owner of " + path + " is %s%n" + changedOwner.getName());
Когда я создаю файл из Wildfly, созданный wildfly, яхочу сменить пользователя после этого процесса на редактора пользователя.Как сменить владельца файла с java (в wildfly) безопасно?