Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multi-tenant posix permission enforcement #513

Open
benmcclelland opened this issue Apr 10, 2024 · 0 comments
Open

multi-tenant posix permission enforcement #513

benmcclelland opened this issue Apr 10, 2024 · 0 comments
Labels
backend issue relates to backend enhancement New feature or request posix issue relates to posix backend

Comments

@benmcclelland
Copy link
Member

Describe the solution you'd like
The gateway typically runs as root, so provides full access to anything below the gateway root directory only limited by bucket ownership and ACLs. You can run the gateway as a user, but then all newly created files will be owned by that user. And that user must have access to all files/directories below the root directory.

The IAM multi-tenant store allows setting uid/gid for each user. It would be great if we could add the option to enable a permissions check in the posix backend to return access denied for requests that the uid/gid wouldn't have local permissions to.

This would be good to support both unix permission as well as posix ACLs.

The GET check could look at the file permissions directly and determine if that user should have read access to the file.

The PUT check might need to check the bucket, or the closest existing parent directory.

@benmcclelland benmcclelland added enhancement New feature or request backend issue relates to backend posix issue relates to posix backend labels Apr 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend issue relates to backend enhancement New feature or request posix issue relates to posix backend
Projects
None yet
Development

No branches or pull requests

1 participant