pgcrypto:PostgreSQL中的列加密需要建议

问题描述

我有一个表,我想使用Postgresql的pgcrypto函数加密其中的几列。 可以说我想使用pgp_sym_encrypt('sample_name','someKey',[options])。

我需要有关如何存储“ someKey”的建议。我知道KMS功能不是很简单(可能尚未在PG-12中完全实现),但是不希望将'someKey'存储在代码中,也不希望存储在其他数据库/服务器中。

我希望是否可以生成一个随机密钥来加密数据,但是我还需要在获取数据时对其进行解密-请对此提出任何建议。

我现在正在研究学习阶段的选择。

解决方法

我正在考虑的方法-

我们有Azure Key Vault存储,我们可以将“密钥”存储在Azure KV中。从应用程序级别,我们可以将“键”作为参数传递给函数。我们可以使用该参数使用pgp_sym_encrypt或pgp_sym_decrypt(用于对称加密/解密)之类的功能。

无需将密钥存储在数据库本身中。

任何建议都是可取的。