1. redis.conf 내에 aclfile /etc/redis/users.acl 추가(주석해제)
- user 정보를 저장하기 위해 파일 위치를 환경설정에서 지정해 준다.
#aclfile /etc/redis/users.acl
#부분 주석 해제
aclfile /etc/redis/users.acl
2. aclfile /etc/redis/users.acl 생성
#빈파일을 생성하여 저장할 수 있도록 처리
vi /etc/redis/users.acl
3. Redis 서비스 재시작
systemctl restart redis-server
4. 유저 추가 후 저장
#redis 서비스에 접속
[root@ip-10-0-0-10 redis]# redis-cli
#기존 환경설정에 저장해둔 초기 유저로 접속(6버전 이상은 초기 사용자가 default)
127.0.0.1:6379> auth default me1234
OK
#유저 추가
#유저명 : oil, 패스워드: me1234, 접근권한 memanager로 시작하는 모든키에 모든 권한 부여
127.0.0.1:6379> ACL SETUSER oil on >me1234 ~memanager* allcommands
OK
#유저 정보 저장
127.0.0.1:6379> acl save
OK
127.0.0.1:6379> exit
- 저장후 미리 생성했던 /etc/redis/users.acl 파일을 열어보면 아래와 같이 유저가 추가되어 있다.
5. 유저 권한 관련 정보
- commands : allcommands(모든 커맨드 허용), nocommands(모든커맨드 비허용), 커맨드지정, 커맨드 그룹 지정(+@read : 읽기전용)
- ACL CAT(커맨드 그룹 목록 조회)
커맨드 그룹 목록
- keyspace: del, expire, flushdb, keys, ttl, scan 등
- read: get, lrange, smembers, zrange, hget, xrange 등
- write: set, lpush, sadd, zadd, hset, xadd 등
- set: sadd, scard, srem, spop 등
- sortedset: zadd, zcard, srem, zpopmin 등
- list: lpush, llen, lrem, lpop 등
- hash: hset, hlen, ldel, hget 등
- string: set, get, incr 등
- bitmap: setbit, bitop, getbit 등
- hyperloglog: pfadd, pfmerge, pfcount, pfselftest
- geo: geoadd, geodist, georadius 등
- stream: xadd, xlen, xrange, xdel 등
- pubsub: publish, subscribe, pubsub 등
- admin: bgsave, config, debug, shutdown 등
- admin 명령은 dangerous 그룹에 포함됨
- fast: get, lpush, hget 등
- slow: lrem, mset, save 등
- blocking: blpop, brpop, brpoplpush, bzpopmin, bzpopmax, xread, xreadgroup
- dangerous : flushall, keys, shutdown, failover, cluster, client, module 등
- connection: hello, client, auth, echo, ping, command
- transaction: watch, multi, unwatch, discard, exec
- scripting: evalsha, eval, script
'Database > NO-SQL' 카테고리의 다른 글
Redis 설치 하기(AWS, lightsail, ec2, demian) (0) | 2023.05.06 |
---|---|
REDIS DB의 클라이언트 외부 접속시 속도 테스트 진행 (0) | 2022.07.15 |