我目前正在为一个项目制作概念模型,而我的一个实体恰好是用户。它的关键是用户ID,并且属性包括名称,LastName,emailAdr和用户名。实施项目后,用户将拥有密码,这让我想知道我是否应该将其添加为属性...或者会危害机密性?
概念上,您必须保留用户密码,以便将其存储在用户实体中是有意义的。
但是,正如@stepio指出的那样,当您查看如何实现它时,保持哈希(实际上,强大的安全哈希)是存储它的好方法,因此如果妥协,它不会暴露出来。<<<<<<<<<<<<<<<<<</p>
例如,如果您使用了从表中实例实例化实体的ORM,并且您对在应用程序中传播的hash the应用程序可能会选择将真实的哈希放在单独的表中,并保留用户表中对其的引用。类似于Unix影子密码。
考虑存储哈希广告而不是纯文本。
要实现身份验证,您只需要哈希的输入并检查哈希。