When installing an EXPath Package to eXist-db, the deployment script changes the permissions on all Collections and Documents in the package when they are stored into the database.
See line https://github.com/eXist-db/exist/blob/develop/src/org/exist/repo/Deployment.java#L892
Basically the deployment sets these mode bits:
owner +read
group +write
other +execute
I find this very uncomfortable, in particular:
group +write which allows anyone in the deploying users group to modify the files in the package.
other +execute which allows any XQuery in the package to be executed by any user. This seems like a bad plan, as an app package may have its own security requirements and/or login processes.
I think this really has to be fixed!
I would particularly like to hear comments from @wolfgangmm @dizzzz @duncdrum and @joewiz.
When installing an EXPath Package to eXist-db, the deployment script changes the permissions on all Collections and Documents in the package when they are stored into the database.
See line https://github.com/eXist-db/exist/blob/develop/src/org/exist/repo/Deployment.java#L892
Basically the deployment sets these mode bits:
owner +readgroup +writeother +executeI find this very uncomfortable, in particular:
group +writewhich allows anyone in the deploying users group to modify the files in the package.other +executewhich allows any XQuery in the package to be executed by any user. This seems like a bad plan, as an app package may have its own security requirements and/or login processes.I think this really has to be fixed!
I would particularly like to hear comments from @wolfgangmm @dizzzz @duncdrum and @joewiz.