2017-01-23 29 views
0

我們使用Redis會話提供程序,並且我們存儲在會話中的數據可能包含隱私數據,例如DOB或membershipId。在存儲到會話前加密特定(敏感)屬性

一個選項(我實現了一個選項)是加密整個類,例如成員資格和解密回來。這需要

序列化對象 - >加密 - >存儲

在回來的路上,

解密 - >反序列化 - >轉換成鍵入

使用此方法可能會對性能產生影響,並且newtonsoft json轉換器在接口/ abstract/readonly_properties上不是很聰明。

智能/優雅的方式是在存儲會話和解密之前加密特定的屬性。

如果任何人都可以共享上述第二個選項的實現,將不勝感激。

回答

0

我想你將不得不爲你想要加密的屬性類型創建一個新類,然後爲該類創建一個JsonConverter實現,該實現在特定屬性的JSON序列化期間提供加密/解密。一旦註冊,任何被序列化的本地對象都會將敏感屬性序列化委託給類或任何您命名它,反之亦然解密。