Configurazione di TLS per Cassandra

Configurare TLS per Cassandra nel piano di runtime

Cassandra fornisce comunicazioni sicure tra una macchina client e un cluster di database, nonché tra i nodi all'interno di un cluster. L'abilitazione della crittografia garantisce che i dati in transito non vengano compromessi e vengano trasferiti in modo sicuro. In Apigee hybrid, TLS è abilitato per impostazione predefinita per qualsiasi comunicazione tra i nodi Cassandra e tra i client e i nodi Cassandra.

Informazioni sull'autenticazione utente Cassandra

La piattaforma ibrida utilizza Cassandra come datastore di backend per i dati del piano di runtime. Per impostazione predefinita, qualsiasi comunicazione client con Cassandra richiede l'autenticazione. Esistono tre utenti utilizzati dai client che comunicano con Cassandra. Per questi utenti vengono fornite password predefinite e non è necessario cambiarle.

Questi utenti, incluso un utente predefinito, sono descritti di seguito:

  • Utente DML: utilizzato dalla comunicazione client per leggere e scrivere dati in Cassandra (KMS, KVM, Cahce e Quota).
  • Utente DDL: utilizzato da MART per qualsiasi attività di definizione dei dati, come la creazione, l'aggiornamento e l'eliminazione dello spazio delle chiavi.
  • Utente amministratore: utilizzato per qualsiasi attività amministrativa eseguita sul cluster Cassandra.
  • Utente Cassandra predefinito:Cassandra crea un utente predefinito quando l'autenticazione è abilitata e il nome utente è cassandra

Modifica delle password predefinite

Apigee hybrid fornisce password predefinite per gli utenti Cassandra. Se vuoi cambiare le password utente predefinite, puoi farlo nel file overrides.yaml. Aggiungi la configurazione seguente, modifica le password predefinite ("iloveapis123") come preferisci e applica la modifica al cluster.

Tutti i nomi utente devono essere in minuscolo.

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"

Tieni presente quanto segue:

  • La rotazione dell'autorità di certificazione (CA) non è supportata.
  • Un certificato del server generato con una passphrase non è supportato.

Controlla i log di Cassandra

Controlla i log all'avvio di Cassandra. Il log riportato di seguito mostra che le connessioni client Cassandra sono criptate.

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...