DBAtlas · Atlas de operações de banco de dados

Criar usuários ACL, testar permissões e torná-los persistentes

RedisSegurança

Comando

# Application user: only app:* keys and channels, dangerous commands excluded:
ACL SETUSER app_rw on >S3cret-Change ~app:* resetchannels &app:* +@read +@write -@dangerous
# Monitoring user: no key access, only specific commands:
ACL SETUSER monitor on >M0n-Secret resetkeys resetchannels -@all +info +ping +client|list +slowlog|get +latency +config|get
# Test permissions without running the command:
ACL DRYRUN app_rw GET app:1001
ACL GETUSER app_rw
ACL LIST
# Make it persistent: ACL SAVE if aclfile is set, otherwise CONFIG REWRITE into redis.conf
ACL SAVE

O que faz

Cria usuários de aplicação e de monitoramento autorizados por prefixo de chave, canal pub/sub e categoria de comando; testa com DRYRUN se um comando é permitido sem executá-lo e grava as ACLs em disco.

Quando usar

Ao migrar de uma única senha compartilhada (requirepass) para acesso por usuário, isolar as aplicações das chaves umas das outras ou criar uma conta somente leitura para uma ferramenta de monitoramento.

Atenção

A ordem das regras importa: resetchannels remove quaisquer regras &channel dadas antes dele. -@dangerous também bloqueia comandos como KEYS, FLUSHALL, CONFIG e DEBUG; verifique com DRYRUN os comandos que a aplicação usa. Se o usuário default continuar habilitado com nopass e +@all, as ACLs não oferecem proteção; rode ACL SETUSER default off depois de criar um usuário admin. No redis-cli, se o AUTH com --user/--pass falhar, a conexão continua como usuário default e o comando ainda roda; por isso use DRYRUN para testes de permissão.

Abrir no DBAtlas →

Relacionados