2

我正在用 ruby​​ 构建一个身份验证系统,并使用 redis 来存储用户的访问数据。我想知道哪种redis数据类型更适合使用?

4

1 回答 1

1

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

现在,如果您真的需要这样做,您可以序列化用户的属性并将每个用户存储在一个字符串中,或​​者为每个用户使用一个哈希对象来分别存储属性。

例如:

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

如果您以全局方式系统地访问用户(一次性检索/更新所有属性),则第一个解决方案更为理想。

使用第二种解决方案,只加密一部分数据并支持部分更新/检索会更容易一些。当然,加密必须在客户端完成。

于 2012-09-09T10:20:23.997 回答