【问题标题】:Encrypt specific (sensitive) properties before storing on to session在存储到会话之前加密特定(敏感)属性
【发布时间】:2017-01-23 12:14:56
【问题描述】:

我们使用 Redis 会话提供程序,我们存储在会话中的数据可能包括隐私数据,例如 DOB 或membershipId。

一个选项(我已经实现的一个)是加密整个类,例如会员资格并在回来的路上解密。这需要

对象序列化 --> 加密 --> 存储

回来的路上,

解密 --> 反序列化 --> 转换为类型

使用这种方法可能会对性能产生影响,并且 newtonsoft json 转换器在 interface/abstract/readonly_properties 上不是很智能。

更聪明/优雅的方法是在存储在会话中之前加密特定属性并在返回时解密。

如果有人可以分享上述第二个选项的实现,将不胜感激。

【问题讨论】:

    标签: c# session encryption


    【解决方案1】:

    我认为您必须为要加密的属性类型创建一个新类,然后为该类创建一个 JsonConverter 实现,它在特定属性的 JSON 序列化期间提供加密/解密。一旦注册,任何被序列化的本机对象都会将敏感属性序列化委托给EncryptedStringJsonConverter 类或任何你命名的类,反之亦然。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 2011-04-28
      • 1970-01-01
      • 2017-06-01
      • 2017-01-14
      • 1970-01-01
      相关资源
      最近更新 更多