본문 바로가기

redis acl2

스프링에서 Redis ACL 적용이 안되는 이유 (RedisCommandExecutionException : NOPERM this user has no permissions to run the ...) 😬 상황스프링 애플리케이션에서 웹 소켓 기능을 Redis로 구현한 뒤, Redis에 아무나 접근할 수 없도록 접근 권한을 추가하기 위해 Redis에서 AUTH 명령어로 id, pw 명령어를 계정을 생성하고 권한을 주었다. 하지만 애플리케이션 웹 소켓 Redis pub/sub 과정에서 하기 이미지와 같은 Redis 관련 예외가 발생하며 정상적으로 기능이 작동하지 않았다.원인WAS 서버 OS인 우분투 22.04 LTS에서apt 패키지 관리자를 통해 설치할 수 있는 기본 Redis 버전은 일반적으로 6.0.x 이다. 하지만 Redis Pub/Sub 채널 액세스 관리 ACL은 6.2 이상의 버전부터 지원했다. 그래서 ACL이 정상적으로 적용되지 않은 것이다. 해결WAS 서버의 Redis 버전을 강제로 최신 버.. 2024. 7. 14.
Redis 기본 사용자 접근을 막고 아이디 비밀번호 적용하기 (ACL) 운영 중인 서비스에서 관리하는 레디스에 외부에서 접근이 필요하도록 설정해야 하는 경우가 있다. 단순하게 레디스 접근포트를 열어서 자유롭게 접근을 허용한다면 운영 중인 서비스의 데이터가 외부로 노출되거나 조작될 가능성이 존재한다. 따라서, 외부에서 레디스 직접 접근이 필요한 경우에는 기본 사용자 접근을 막고, 안전하게 데이터에 접근할 수 있는 환경을 구성해야 한다. 해당 포스트에서는 Redis 6.0 버전부터 제공하는 ACL(Access Control List) 기능을 활용해서 사용자 계정을 생성하고 관리하는 방법에 대해서 설명한다.1. 외부 접근 허용하기레디스 설정파일 /etc/redis/redis.conf에 접근해서 설정 파일을 텍스트 편집기로 연다. sudo vi /etc/redis/redis.con.. 2024. 6. 15.