允许在受保护资源上设置‘is_public’¶
由于is_public 是所有对象的元信息而非内容,Sahara 应允许即使 is_protected 为 True 也能更改它。这将简化用户共享受保护对象的操作。
https://blueprints.launchpad.net/sahara/+spec/allow-public-on-protected
问题描述¶
目前对 is_protected 的检查会阻止修改对象中的任何字段。这保证了对象的内容不会被意外更改。
然而,is_public 是一个访问控制标志,与对象内容无关。为了共享受保护的对象,用户目前必须将 is_protected 设置为 False,同时更改 is_public,然后执行另一个操作将 is_protected 标志设置回 True。
提议的变更¶
为了方便起见,允许即使 is_protected 为 True 也能修改 is_public。is_public 字段将是唯一例外,不受常规检查的约束。
替代方案¶
保持不变
数据模型影响¶
无
REST API 影响¶
无
其他最终用户影响¶
无
部署者影响¶
无
开发者影响¶
无
Sahara-image-elements impact¶
无
Sahara-dashboard / Horizon 影响¶
这可能需要 Horizon 的更改 (croberts 请评论)
实现¶
负责人¶
- 主要负责人
tmckay
- 其他贡献者
croberts
工作项¶
修改 Sahara 引擎中的 is_protected 检查 修改单元测试 Horizon 更改
依赖项¶
无
测试¶
单元测试
文档影响¶
没有,除非当前存在讨论受保护/公开的部分
参考资料¶
无