使存储额外的 SQL 属性变为可选¶
允许云提供商禁用存储“额外”SQL 属性的功能。
问题描述¶
我们的 SQL 驱动程序长期以来支持客户端通过在 API 调用(例如 POST)中包含额外的属性来利用我们的正式实体属性——然后我们将这些属性存储在“extras”列中。虽然许多客户都在使用此功能,但这不是我们希望鼓励的做法。此外,允许这样做可能意味着如果客户端在 API 调用中包含此类属性,云提供商可能会无意中存储 PII 信息。
提议的变更¶
我们将提供一个配置选项来定义我们的 SQL 驱动程序是否存储额外的属性。为了向后兼容,默认情况下将设置为允许这种存储。禁用此选项将支持在 SQL 实体的读取和写入中,要么静默忽略任何额外的参数(并向日志发出警告),要么报错。
如果系统上禁用了此选项,但已经存储了额外的属性,这些数据将不会被删除——这留作云提供商的独立操作。
顺便说一下,虽然我们确实支持 LDAP 驱动程序的额外属性,但由于必须在配置文件的 LDAP 部分中定义映射,因此这些属性的存储已经是可选的。
备选方案¶
无
安全影响¶
这应该可以消除潜在的安全漏洞。
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
无
其他部署者影响¶
无
开发人员影响¶
无
实现¶
负责人¶
主要负责人
Henry Nash (henry-nash)
工作项¶
创建配置选项
在核心 SQL 代码中尊重该选项,该代码转换额外的属性
依赖项¶
无
文档影响¶
更新 configuration.rst
参考资料¶
无