mirror of
https://github.com/nspcc-dev/neofs-api.git
synced 2026-03-01 04:28:54 +00:00
Per-object access setting #48
Labels
No labels
I0
I1
I2
I3
I4
S0
S1
S2
S3
S3
S4
U2
U3
U4
bug
discussion
discussion
documentation
enhancement
enhancement
enhancement
feature
good first issue
question
task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nspcc-dev/neofs-api#48
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @fyrchik on GitHub (Jun 28, 2021).
Currently we have 2 (?) ways to share a collection of objects in our container with somebody:
Both of these are sub-optimal. eACL rule based on attribute values is not really an option in (1) because objects are already in the system so the only thing we are left with is to enumerate object ids. (2) doesn't scale well.
In essense the problem is to have per-object access settings without overloading eACL. Also, "sharing an object" doesn't look like an operation which requires altering container-level eACL.
One of the solutions is to introduce a linking object (similar to symlink in a file-system), which can have it's own headers, but share payload with the object it links to. This way we can have a single eACL rule like
allow to GET objects with attribute ShareWith=123 for this public key. To share an object we can only put a link with the needed attribute in the container. To revoke access, simply delete an object (this plays nicely with an expiration epoch). While it can also be done with the help of some pre-defined attribute, I believe it is worth to be reflected in the API.@amlwwalker commented on GitHub (Mar 7, 2022):
this would be extremely handy for generating access for groups with different permissions
@cthulhu-rider commented on GitHub (May 5, 2022):
How to purge signed bearer token? Seems like currently impossible .