model-timestamps¶
目前项目、域、角色、用户、组模型都没有时间戳。虽然我们可以通过 CADF 审计事件记录获取详细的审计信息,但我们可能需要一种简单的方法来确定这些资源是什么时候创建的以及最后修改的时间。
我们不想制定一个修复所有模型的规范。因此,此规范仅对分配模型(项目、域、角色)实施时间戳。
由于 LDAP 分配后端将在下一个周期中弃用并在未来移除,我们仅在 SQL 后端中实施此功能。
根据 转售商规范,域和项目将成为一种资源类型,因此此规范仅对项目和角色实施时间戳。
问题描述¶
为了审计,我们可能需要一种简单的方法来了解在一段时间内创建或修改了多少个项目。
为了管理,我们可能需要一种简单的方法来了解项目是什么时候创建或最后修改的。
提议的变更¶
实际上,oslo.db 已经提供了一个 TimestampMixin 对象用于时间戳模型。我们需要做的只是让项目、角色继承自 TimestampMixin,然后添加一个数据库迁移脚本。
备选方案¶
无
安全影响¶
无
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
无
其他部署者影响¶
无
开发人员影响¶
无
实现¶
负责人¶
主要负责人
w-wanghong (wanghong <w.wanghong@huawei.com>)
工作项¶
更新项目、角色模型以继承 TimestampMixin
确保在数据序列化为 JSON 之前过滤掉时间戳
编写数据库迁移脚本
添加测试
依赖项¶
oslo.db,但它已经是一个依赖项。
文档影响¶
更新文档中“项目”和“角色”部分。