Enquanto começava um novo projeto hoje no trabalho com o Elasticsearch, fiz algumas pesquisas e descobri Search Guard - segurança do Elasticsearch de graça . Obviamente, não posso julgar (ainda) como isso funciona, mas queria deixar um ponteiro aqui, caso você ou outras pessoas ainda estejam procurando por (a) solução (ões), e no caso do Shield não poder ser usado, por qualquer motivo .
Citando o site, esses são os recursos:
- Controle de acesso à camada REST flexível (baseado em usuário / função; em aliases, índices e tipos)
- Controle de acesso à camada de transporte flexível (baseado em usuário / função; em aliases, índices e tipos)
- Segurança em nível de documento (DLS): recupere apenas documentos que correspondam aos critérios
- Segurança no nível de campo (FLS): filtrar campos / origens de uma resposta de pesquisa
- Autenticação HTTP (básico, cabeçalho de proxy, SPNEGO / Kerberos, SSL mútuo / CLIENTE-CERT)
- Suporte à sessão HTTP por meio de cookies
- Back-ends de autenticação flexíveis (LDAP (s) / Active Directory, com base em arquivo, cabeçalho de proxy, Windows nativo por meio de WAFFLE)
- Infra-estrutura de autorização flexível (LDAP (s) / Active Directory, baseado em arquivo, Windows nativo por meio do WAFFLE)
- Criptografia de nó a nó por meio de SSL / TLS (camada de transporte)
- Proteja a camada REST por meio de HTTPS (SSL / TLS)
- Suporte X-Forwarded-For (XFF)
- Registro de auditoria
- Login anônimo / acesso não autenticado
- Funciona com o Kibana 4 e logstash
Mas também há limitações:
- Ao usar DLS ou FLS, você ainda pode pesquisar em todos os documentos / campos, mas nem todos os documentos / campos são retornados
- Controle de acesso da camada de transporte apenas com login simples de nome de usuário / senha
- Não há filtros automáticos de vários índices (veja abaixo)
- Atualmente, o monitoramento do cluster não precisa de autenticação e é permitido sempre (isso pode mudar no futuro)
Talvez isso seja útil e valioso para você ou para outra pessoa, que se deparar com este post.