2012-09-08 55 views

回答

1

没有。 Redis应该在可信的环境中使用,它自己的认证机制是基本的,并且没有与数据关联的访问权限或ACL。存储安全敏感数据是相当薄弱的。

现在,如果你真的需要做到这一点,您可以序列化用户的属性和每个用户存储在一个字符串,或者每个用户使用一个哈希对象分开存储的属性。

例如:

SET user:1 {"lastname":"Smith","firstname":"John","passwd":"38E56712AB15"} 
or 
HMSET user:1 lastname Smith firstname John passwd 38E56712AB15 

第一个解决方案,如果你访问用户系统在全球的方式(检索/一次性更新所有属性)是更理想的。

在第二溶液,它是一个更容易一点到仅一个所述数据的部分进行加密,并支持部分更新/检索。当然,加密必须在客户端完成。

+0

有了这样的结构,当他尝试登录时,如何查找某个特定用户,如“John Smith”? – eevar

+0

另外,我不认为Redis的比你通常会连接到您的网络应用程序的任何RDBMS不太安全。这只是一个提出适合您所需安全性的体系结构的问题。 – eevar

+0

使用Redis,您需要预测所有可能的数据访问路径。如果您需要按姓氏+ firtname进行搜索,则可以添加一个散列对象来索引这些字段。 HMSET name_index史密斯/约翰1 –

相关问题