Allow ‘is_public’ to be set on protected resources¶
Since is_public is meta-information on all objects rather than content, sahara should allow it to be changed even if is_protected is True. This will make it simpler for users to share protected objects.
https://blueprints.launchpad.net/sahara/+spec/allow-public-on-protected
Problem description¶
Currently checks on is_protected prevent any field in an object from being modified. This guarantees that the content of the object will not be changed accidentally.
However, is_public is an access control flag and does not really pertain to object content. In order to share a protected object, a user must currently set is_protected to False while making the change to is_public, and then perform another operation to set the is_protected flag back to True.
Proposed change¶
As a convenience, allow is_public to be modified even if is_protected is True. The is_public field will be the only exception to the normal checks.
Alternatives¶
Leave it unchanged
Data model impact¶
None
REST API impact¶
None
Other end user impact¶
None
Deployer impact¶
None
Developer impact¶
None
Sahara-image-elements impact¶
None
Sahara-dashboard / Horizon impact¶
This may require a Horizon change (croberts please comment)
Implementation¶
Assignee(s)¶
- Primary assignee:
tmckay
- Other contributors:
croberts
Work Items¶
Modify is_protected checks in the sahara engine Modify unit tests Horizon changes
Dependencies¶
None
Testing¶
Unit tests
Documentation Impact¶
None, unless there is a current section discussing protected/public
References¶
None