Práticas recomendadas e tutoriais

Cofre da HashiCorp com o Couchbase Server

No mundo acelerado de hoje, a segurança dos dados é de extrema importância, especialmente quando se lida com informações confidenciais. Um componente fundamental da segurança de dados é a autenticação, que protege os dados contra roubo. O HashiCorp Vault é uma das tecnologias que podem ajudar as empresas a proteger ainda mais o acesso ao seu banco de dados Couchbase.

Como a HashiCorp pode me ajudar a aumentar ainda mais a segurança do meu banco de dados?

O HashiCorp Vault pode armazenar e gerenciar com segurança credenciais de banco de dados, como nomes de usuário e senhas, e gerar dinamicamente novas credenciais quando elas forem necessárias. Isso reduz o risco de exposição acidental ou intencional de credenciais e facilita a revogação ou a rotação de credenciais quando elas não são mais necessárias.

O Vault também pode fornecer logs de auditoria detalhados de todo o acesso ao banco de dados e uso de credenciais, o que pode ajudar as organizações a cumprir vários requisitos regulamentares e monitorar atividades suspeitas.

Nesta postagem do blog com tutorial, veremos como integrar o Couchbase Server ao HashiCorp Vault.

Etapa 1: Configuração do Vault

A primeira etapa é configurar uma instância do HashiCorp Vault. Você pode fazer o download do binário do Vault no site oficial, usar um gerenciador de pacotes como o Homebrew ou o Chocolatey ou executar o Vault usando o Docker. Nesta postagem do blog, usaremos o Docker para configurar o ambiente.

    • Configurar a rede do Docker

    • Inicie o Vault em um contêiner do Docker. Para iniciar o Vault no modo de desenvolvedor com uma senha raiz de senhabasta usar o comando abaixo.

O comando Docker acima inicia o servidor do Vault no modo de desenvolvimento, o que não é recomendado para uso em produção. Ele cria um armazenamento de dados na memória que é apagado quando o servidor é desligado. No entanto, ele é perfeito para fins de teste.

A interface do usuário do vault está sendo executada em http://localhost:8200

Você pode usar uma "senha" como token para fazer login na interface do usuário do Vault, pois especificamos que esse é o token raiz.

Etapa 2: Verificar a configuração do Vault

Quando o servidor do Vault estiver em funcionamento, você precisará se certificar de que o plug-in do banco de dados do Couchbase esteja instalado.

Execute o seguinte comando para verificar se o plug-in está instalado:

Observação: no comando anterior, nomeamos o contêiner abóbada de sofáSe você usar o comando acima, executará os comandos do vault dentro do contêiner que executa o HashiCorp Vault.

A saída desse comando deve listar o plug-in do couchbase:

Se quiser experimentar o Vault, você pode usar o comando abaixo para abrir um shell dentro do contêiner que está executando o Vault:

Você pode se autenticar com o token raiz que configuramos anteriormente:

Se você não estiver familiarizado com o Vault, não deixe de conferir o Documentação de comandos.

Etapa 3: iniciar um servidor Couchbase de demonstração

Abra uma nova janela de terminal e execute o seguinte comando para iniciar o Couchbase:

Etapa 4: Configurar o servidor Couchbase

Abra um terceiro terminal. Usaremos esse terminal para executar comandos do Docker para configurar o Vault e o Couchbase nas próximas etapas.

    • Inicializar nosso cluster do Couchbase

    • Importar alguns dados de amostra

É hora de inspecionar nosso cluster usando a interface do usuário. Você pode abrir o console em http://localhost:8091 e usar Administrador como nome de usuário e senha como senha para fazer login.

Etapa 5: Criar um usuário do Couchbase Server

Agora que o Vault está configurado e o Couchbase Server está em execução, precisamos criar um usuário do Couchbase. Esse usuário será usado pelo plug-in do Couchbase Vault para acessar o Couchbase Server e criar usuários sob demanda.

Depois que o usuário for criado, ele também aparecerá como um usuário na interface do usuário:

Etapa 6: Integração do Vault e do Couchbase Server

Agora que o Vault e o Couchbase Server estão configurados, precisamos integrá-los. Siga estas etapas:

    • Ativar o mecanismo de banco de dados do Vault

    • Inicializar o plug-in do servidor Couchbase

Deixe-me explicar o comando acima com um pouco mais de detalhes.

  1. Usando wget baixamos o certificado do Couchbase Server, pois precisaremos dele mais tarde.
  2. Faça login no Vault com login no cofre.
  3. Criar um banco de dados de demonstração usando a configuração plug-in de banco de dados do couchbase. Precisamos especificar nosso servidor Couchbase e um usuário (couchbase-vault-user) para se conectar a ele.

Observe: especificamos allowed_roles para ser * o que não é recomendado na produção, pois permitirá a criação de um usuário do Couchbase com quaisquer funções disponíveis.

    • Gire a senha do usuário do couchbase

Como usamos uma senha muito insegura para configurar a conexão entre o Couchbase Server e o Vault, é importante alterar a senha executando o comando abaixo:

Vamos validar se a senha foi de fato alterada. Podemos fazer isso tentando fazer login como couchbase-vault-user usando a interface do usuário do Couchbase.

Você deverá ver uma mensagem de erro Falha no login. Isso confirma que o Vault foi capaz de girar a senha do usuário que o Vault usa para se comunicar com o Couchbase Server:

Etapa 7: criar uma política de demonstração do Vault

Por fim, precisamos criar uma política do Vault. Use o comando vault policy. Essa política será usada para criar novos usuários no Couchbase

O comando abaixo criará uma função HashiCorp Vault que pode criar usuários com funções ro_admin no Couchbase.

Etapa 8: Testar a integração

Agora que a integração está concluída, podemos testá-la. Siga estas etapas:

    • Criar um usuário

Se tudo estiver configurado corretamente, você verá a criação de um novo usuário como o mostrado abaixo:

Agora você pode usar esse usuário para fazer login no Couchbase ou usar a interface do usuário para ver se o usuário realmente existe:

Observação: este usuário tem um contrato de locação de cinco minutos. Se você esperar cinco minutos, o usuário será desprovisionado automaticamente pelo Vault. Você pode usar o Vault para estender o contrato de locação ou para criar um novo usuário. Para obter mais informações, consulte Documentação do Vault.

Conclusão

A integração do Couchbase Server com o HashiCorp Vault é uma ótima maneira de proteger o acesso aos seus dados. Nesta postagem do blog, vimos como fazer exatamente isso. Seguindo as etapas descritas acima, você pode integrar facilmente o Couchbase Server ao HashiCorp Vault.

Tendo em mente que as etapas que descrevemos destinam-se apenas a testes e demonstrações, é fundamental entender que, quando se trata de implantações de produção seguras, é fundamental aderir às práticas recomendadas do setor. Para garantir que o servidor do Vault e do Couchbase estejam configurados e fortalecidos adequadamente, o que vai além do escopo deste artigo, recomendamos enfaticamente que você siga estas práticas recomendadas.

Há alguns aspectos a serem considerados ao criar contas de usuário no Couchbase. A criação de usuários é assíncrona no ns_server. Ele só estará disponível no nó em que a solicitação foi feita e, em seguida, será criado nos outros nós de forma assíncrona. Como exemplo, se você criasse um usuário a cada minuto e o excluísse, chegaria a 525600 usuários excluídos em um ano, o que ainda é seguro por muitos anos. Lembre-se de que a criação de milhões de usuários pode afetar o desempenho de criação de usuários do seu cluster e a criação de muitos milhões de usuários está além do que testamos até agora.

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Istvan Orban

Istvan Orban é o principal gerente de produtos da Couchbase e mora no Reino Unido. Istvan tem uma ampla experiência como engenheiro de software de pilha completa, líder de equipe e engenheiro de Devops. Seu foco principal é a segurança e o Single Sign On. Istvan liderou vários projetos de grande escala em seus 20 anos de carreira profissional.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.