我的朋友和我正在考虑网络创意并遇到了一个问题:
在黑客获取数据库的情况下,我们不能允许电子邮件地址与其关联数据一起位于数据库中。我们希望确保电子邮件地址及其相关数据永远不会被链接,但另一方面我们还需要以某种方式保持它们的链接,以便我们可以向用户发送电子邮件通知E.T.C
任何人都可以想到或知道解决这个问题的方法吗? (.NET,Umbraco)
谢谢!
答案 0 :(得分:1)
拥有2个数据库,一个包含用户+数据+用户ID,另一个包含用户ID +电子邮件。保护它们两者,如果一个被发现,另一个可能不是。
无论如何,你要求我们证明虚假。 ^^
答案 1 :(得分:0)
我无法想到一种将用户数据与电子邮件相关联的方法,而无需实际将用户数据与电子邮件相关联。但是,如果您只能在用户登录时使用其电子邮件地址,则可以不在电子邮件中存储和链接电子邮件地址。
您可以要求用户使用他们的电子邮件地址和密码登录,就像许多网站一样,但您可以存储电子邮件地址的单向哈希(例如sha1(电子邮件+密码))而不是地址本身。当用户成功登录时,您可以将他们的电子邮件地址存储在会话中,而无需从数据库中获取。然后,您可以向他们发送电子邮件,直到您销毁其会话。这样可以防止攻击者将数据连接到他们的电子邮件,而不会强制散列或从内存或用户cookie中获取会话信息,具体取决于您的存储方式。
不幸的是,这不允许您发送通知电子邮件。