我正在开展一个项目,其中安全性在我的实体模型中的许多领域都很重要。我正在寻找一种方法,我可以使用EF Core(使用MariaDb SQL Server)注入一些自定义逻辑,以加密进入数据库的数据,并在数据自动发出时对其进行解密。基本上我正在寻找类似于下面的内容,我可能有一个包含敏感信息的字段,可能是我的模型中的字符串或DateTime,但需要在数据库中作为加密字符串。
public class Customer
{
public string Id { get; set; }
public string Name { get; set; }
[Secure]
public DateTime DateOfBirth { get; set; }
[Secure]
public string StateIdNumber { get; set; }
public List<CreditCard> CreditCards { get; set; }
}
public class CreditCard
{
public string Id { get; set; }
[Secure]
public string CardNumber { get; set; }
[Secure]
public DateTime Expiration { get; set; }
[Secure]
public string CustomerId { get; set; }
public Customer Customer { get; set; }
}
答案 0 :(得分:0)
如果您使用的是SQL Server 2016,则可以使用Always Encrypted功能。 (我不确定 MariaDb SQL Server 是否是Microsoft SQL Server的托管版本或完全不同的数据库...)