Share snapshots with different tenant
Currently, Cinder volume snapshots are not share-able. This blueprint wants to make volume snapshots shareable, so that a tenant can be added to that snapshot, who then has the permission to create a volume out of that snapshot. Note that only the original tenant can delete the snapshot. The newly added tenants can only create a volume out of the snapshot, and can't change anything about the snapshot.
As can be seen, this functionality is not 'full ACL', but a subset of it, and hence easier to implement. An additional table will be needed to maintain an association between snapshot ID and the tenant IDs with whom the snapshot is shared which will have a foreign key to the 'snapshots' table.
The tenant should be able to find out which volumes are owned by him/her, and which are shared to him/her. We can do it in two ways: 1: In 'list snapshots' API, also provide additional field specifying owner=true or false. 2: Create another API, say 'list shared snapshots'
Note that 'volume ACLs' blueprint tries to do more or less the same thing but with volumes, but sharing of snapshots provide a cleaner and easier-to-implement interface to the same end goal of sharing data, but without the complexity which ACLs bring.
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Rushi Agrawal
- Direction:
- Needs approval
- Assignee:
- Rushi Agrawal
- Definition:
- Obsolete
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Sean McGinnis
Related branches
Related bugs
Sprints
Whiteboard
(smcginnis): Marking obsolete as this has been sitting out there for a long time. If this is still needed, please submit a new bp.
None