Redis加入身份验证

Redis数据库可以设置安全,所以做出相关的任何客户端都需要在执行命令之前进行身份验证。为了确保Redis需要设置在配置文件中的密码验证一致。

默认情况下授权密码为空

1
2
3
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""

1.通过命令设置密码,命令设置为临时设置,服务重启后失效

1
2
config set requirepass shiwuhao
OK

2:配置文件设置,始终有效

1
2
3
4
5
vi /usr/local/redis/etc/redis.conf

// 搜索requirepass,添加密码,保存后,需要重启服务
# requirepass foobared
requirepass shiwuhao

密码设定后,执行任何命令都需要先授权,否则会提示授权提示,例如

1
2
127.0.0.1:6379> config get requirepass
(error) NOAUTH Authentication required.

利用auth命令授权

1
2
3
4
5
6
7
127.0.0.1:6379> auth shiwuhao
OK
127.0.0.1:6379> keys *
1) "user_name"
2) "age"
3) "set"
4) "new_name"

也可以登录客户端的时候直接授权

1
2
3
4
5
6
MacBook-Pro:~ root# /usr/local/redis/bin/redis-cli -a shiwuhao
127.0.0.1:6379> keys *
1) "age"
2) "new_name"
3) "set"
4) "user_name"