我有一个表,我想用PostgreSQL的pgcrypto函数加密其中的几列。假设我想使用pgp_sym_encrypt("sample_name"、"someKey"、[选项](。
我需要关于如何以及在哪里存储"someKey"的建议。我知道KMS功能不是直接的(可能还没有在PG-12中完全实现(,但在代码中存储"someKey"是不可取的,也不希望存储在其他数据库/服务器中。
我希望我能生成一个随机密钥来加密数据,但我也需要在获取数据时对其进行解密——请对此提出任何建议。
我现在正在探索学习阶段的选择。
我正在考虑的方法-
我们有Azure密钥库存储,我们可以将"密钥"存储在Azure KV中。从应用程序级别,我们可以把"密钥"作为参数传递给函数。我们可以使用该参数使用诸如pgp_sym_encrypt或pgp_sym_decrypt(用于对称加密/解密(之类的函数。
无需将密钥存储在数据库中。
任何建议都是值得赞赏的。