Configurar o TLS para o Cassandra

Como configurar o TLS para o Cassandra no plano de tempo de execução

O Cassandra oferece uma comunicação segura entre uma máquina cliente e um cluster de base de dados, bem como entre nós num cluster. A ativação da encriptação garante que os dados em trânsito não são comprometidos e são transferidos de forma segura. No Apigee hybrid, o TLS está ativado por predefinição para qualquer comunicação entre nós do Cassandra e entre clientes e nós do Cassandra.

Acerca da autenticação de utilizadores do Cassandra

A plataforma híbrida usa o Cassandra como o armazenamento de dados de back-end para dados do plano de tempo de execução. Por predefinição, qualquer comunicação do cliente com o Cassandra requer autenticação. Existem três utilizadores usados pelos clientes que comunicam com o Cassandra. São fornecidas palavras-passe predefinidas para estes utilizadores e não é necessário alterá-las.

Estes utilizadores, incluindo um utilizador predefinido, estão descritos abaixo:

  • Utilizador DML: usado pela comunicação do cliente para ler e escrever dados no Cassandra (KMS, KVM, cache e quota).
  • Utilizador DDL: usado pelo MART para qualquer uma das tarefas de definição de dados, como a criação, a atualização e a eliminação de keyspaces.
  • Utilizador administrador: usado para quaisquer atividades administrativas realizadas no cluster do Cassandra.
  • Utilizador predefinido do Cassandra: o Cassandra cria um utilizador predefinido quando a autenticação está ativada e o nome de utilizador é cassandra

Alterar as palavras-passe predefinidas

O Apigee Hybrid fornece palavras-passe predefinidas para os utilizadores do Cassandra. Se quiser alterar as palavras-passe predefinidas dos utilizadores, pode fazê-lo no ficheiro overrides.yaml. Adicione a seguinte configuração, altere as palavras-passe predefinidas ("iloveapis123") como quiser e aplique a alteração ao seu cluster.

Todos os nomes de utilizador têm de estar em minúsculas.

cassandra:
   auth:
     default:  ## the password for the new default user (static username: cassandra)
       password: "iloveapis123"
     admin: ## the password for the admin user (static username: admin_user)
       password: "iloveapis123"
     ddl: ## the password for the DDL User (static username: ddl_user)
       password: "iloveapis123"
     dml: ## the password for the DML User (static username: dml_user)
       password: "iloveapis123"

Tenha em conta o seguinte:

  • A rotação da autoridade de certificação (AC) não é suportada.
  • Não é suportado um certificado de servidor gerado com uma frase secreta.

Verifique os registos do Cassandra

Verifique os registos assim que o Cassandra for iniciado. O registo abaixo mostra que as ligações do cliente Cassandra estão encriptadas.

kubectl logs apigee-cassandra-2 -n apigee -f

INFO  00:44:36 Starting listening for CQL clients on /10.0.2.12:9042 (encrypted)...
INFO  00:44:36 Binding thrift service to /10.0.2.12:9160
INFO  00:44:36 enabling encrypted thrift connections between client and server
INFO  00:44:36 Listening for thrift clients...