内容提要
本文讨论了Percona在PostgreSQL中引入透明数据加密(TDE)的工作,指出PostgreSQL缺少该功能。Percona已开发了pg_tde_basic扩展,但仍在测试阶段。Percona计划进一步扩展并提交给PostgreSQL社区。文章还提到了Percona Distribution for PostgreSQL,提供关键企业组件。作者鼓励读者测试并提供反馈意见。
延伸解读
为何选择扩展而非修改核心
Percona在开发TDE时面临关键抉择:是修改PostgreSQL核心还是以扩展形式实现。他们参考了PostgreSQL wiki中TDE的三个标准:必须安全、对核心代码影响最小、满足合规要求。最终决定创建扩展,以尊重社区价值观并让产品易于被用户接受。这一选择也避免了直接改动核心可能带来的兼容性和维护问题。
当前测试版的局限与风险
pg_tde_basic扩展通过tde_heap_basic访问方法加密表数据,但索引和统计信息不会被加密。如果索引基于加密数据创建,由于索引本身未加密,可能成为数据泄露的途径。因此,在生产环境使用前需评估此风险。该扩展仍处于测试阶段,Percona正在努力确保稳定性,并计划未来提供索引加密方案。
未来路线图与社区协作
Percona计划短期內交付支持索引加密的补丁版本,确保pg_tde_basic达到GA稳定性,并缩小功能差距,如复制和KMIP集成。相关API扩展将提交给PostgreSQL社区,争取纳入核心。用户可通过社区论坛、GitHub讨论等渠道提供反馈,帮助改进这一开源解决方案。
Q&A
Percona在PostgreSQL中引入透明数据加密的原因是什么?
因为PostgreSQL缺乏透明数据加密(TDE)功能,Percona希望通过开发扩展来解决这一问题。
pg_tde_basic扩展目前处于什么阶段?
pg_tde_basic扩展目前处于公共测试阶段,正在进行稳定性测试。
pg_tde_basic扩展有哪些限制?
该扩展的tde_heap_basic访问方法存在一些限制,可能影响生产使用,尤其是索引在加密数据上不被加密。
Percona计划如何改进pg_tde扩展?
Percona计划进一步扩展pg_tde并提交给PostgreSQL社区,目标是实现更全面的加密解决方案,包括索引加密。
pg_tde扩展的主要目标是什么?
pg_tde的目标是实现更细粒度的加密和支持云环境的多租户功能。
用户如何参与pg_tde的测试和反馈?
用户可以通过社区论坛、GitHub项目讨论或直接联系Percona团队来提供反馈。