O Couchbase oferece suporte à criptografia nó a nó ou criptografia de cluster, adicionando criptografia baseada em TLS às conexões entre os nós em um cluster do Couchbase.

Quando os clientes que usam o Couchbase exigem que estejamos em conformidade com as normas de privacidade, como a HIPAA (clientes do setor financeiro ou de saúde, por exemplo), normalmente precisamos permitir a autenticação (LDAP), a autorização (RBAC - controle de acesso baseado em função) e a criptografia. Também é importante oferecer suporte à auditoria e à redação de informações importantes, especialmente em logs (o Couchbase oferece suporte à redação de logs usando tags específicas). No que diz respeito à criptografia, o Couchbase oferece suporte à criptografia de nó para nó em vários níveis usando a definição do nível de configuração do cluster. Isso é controlado pelo usuário e pode assumir 3 valores:

  1. Controle: Nesse nível, somente as conexões do cluster e do servidor com os serviços internos são criptografadas. Isso inclui basicamente as informações de gerenciamento do cluster e os processos internos relacionados. No entanto, os dados entre os nós do cluster não são. Assim, por exemplo, uma conexão de serviço de servidor para consulta é criptografada. Esse é o comportamento padrão.

  2. Todos: Nesse nível, as conexões entre nós e entre serviços são criptografadas. Isso significa que, se houver vários serviços em um único nó, as conexões entre esses serviços também serão criptografadas. Portanto, juntamente com a conexão do servidor ao nó de consulta, a comunicação entre os nós de consulta, do nó de consulta ao nó indexador e ao nó FTS, também é criptografada.

  3. Rigoroso: Esse é um novo nível adicionado à nossa próxima versão 7.0. Definir o nível de criptografia do cluster como "strict" é equivalente a definir o nível de criptografia do cluster como "all" e desativar todas as portas não SSL em interfaces que não sejam de loopback.

Ativação da criptografia N-N

Por padrão, a criptografia de cluster está desativada. Quando ativada, ela é definida como Control (Controle). Ela precisa ser explicitamente definida como All se a criptografia nó a nó for desejada. Ela é compatível com o uso de Certificados.

  1. Desativar o failover automático: Antes de habilitar a criptografia de cluster usando a criptografia nó-nó, o failover automático precisa ser desativado pelo usuário para evitar que os nós na transição sejam rotulados como não responsivos e sofram failover. Isso pode ser feito usando o couchbase-cli ou a API REST.

./couchbase-cli setting-autofailover -c :8091 -u username -p password 
--enable-auto-failover 0  

OU

curl -u username:password http://:8091/settings/autoFailover 
-d enabled=false

  1. Ativar a criptografia nó a nó: Quando isso retornar com êxito, poderemos ativar a criptografia nó a nó usando o comando:

./couchbase-cli node-to-node-encryption -c :8091 -u username 
-p senha -enable

Isso define o nível de criptografia do cluster como controle e ativará a criptografia para todos os nós do cluster. Podemos verificar se a criptografia foi ativada com êxito usando o comando-obteracima, em vez de-permitir.

  1. Alterar a configuração de criptografia do cluster: Se o usuário desejar alterar o nível de criptografia do cluster, poderá usar o seguinte comando da CLI:

    ./couchbase-cli setting-security -c :8091 -u username -p password 
    -set -cluster-encryption-level all

Eles também podem usar o comando da API REST:

curl -XPOST -u username:password http://:8091/settings/security 
-d clusterEncryptionLevel=all

  1. Habilite o failover automático novamente: Depois disso, o failover automático precisa ser ativado novamente.

    Para obter mais informações sobre como ativar e desativar o failover automático, consulte:
    https://docs.couchbase.com/server/current/cli/cbcli/couchbase-cli-setting-autofailover.html Para recuperar as configurações de criptografia de todo o cluster, consulte: https://docs.couchbase.com/server/current/rest-api/rest-setting-security.html

Desativação da criptografia nó a nó

  1. Altere o nível de criptografia do cluster para controle.

  2. Use a configuração de criptografia nó a nó na CLI para desativar.

Certificados e criptografia nó a nó

Um aspecto importante a ser lembrado ao proteger o servidor com certificados X509 é desativar a criptografia nó a nó antes de fazer upload ou rodar os certificados raiz e intermediários. Portanto, se estivermos protegendo um servidor com os certificados, precisamos seguir estas etapas:

  1. Desativar a criptografia nó a nó.

  2. Crie certificados raiz/intermediários e faça upload ou gire-os no cluster usando as etapas descritas em https://dzone.com/articles/authentication-using-server-side-x509-certificates.

  3. Reative a criptografia nó a nó.

Uma das limitações da ativação da criptografia nó a nó é o impacto no desempenho. Como todas as comunicações entre nós são criptografadas, isso adiciona alguma sobrecarga. No entanto, a comunicação extra segura é um bônus adicional.

Conclusão

Com este artigo, podemos ver como o Couchbase oferece suporte à criptografia nó a nó e criptografa o tráfego de rede entre nós individuais e vários serviços do Couchbase implantados nos nós para otimizar a segurança. Isso nos permite oferecer suporte a aplicativos que exigem a conformidade com normas de privacidade, como a HIPAA.

Autor

Postado por Isha Kandaswamy

Isha Kandaswamy é engenheira de software sênior da Couchbase. Isha é responsável pelo desenvolvimento de diferentes recursos e ferramentas para a linguagem de consulta N1QL -SQL para Json. Além disso, projetar e implementar recursos e ferramentas para a linguagem de consulta N1QL.

Deixar uma resposta