首页 > 解决方案 > Asp.Core 通过数据库中的 PGP_SYM_ENCRYPT 映射加密数据

问题描述

有用 Asp.Core 2.1 和EF.Core 2.2 编写的 Web 应用程序,与Postgres数据库连接。我需要加密表中的任何列(不是全部)。

问题 1 是:
- 列中的字符串数据必须受到保护,并且数据库表 (GDPR) 中的人无法读取。

问题 2 是:
- 从列中的应用程序字符串数据必须能够搜索/过滤。

我已经阅读了大量可能的解决方案,最后是:

列中的字符串数据由数据库端函数上的 PGP_SYM_ENCRYPT 加密,只需要密码。

但我不知道如何使用 db 加密/解密函数将实体属性映射到数据库,反之亦然。

我认为创建自定义 EF.Function 扩展是可能的。但我不确定如何将其与 EF linq 而非原始 sql 一起使用。

你能给我任何建议或让我上路吗?

非常感谢

标签: c#postgresqlcryptographyasp.net-core-2.1

解决方案


推荐阅读