Abilita autenticazione Cassandra

Edge for Private Cloud v4.19.01

Per impostazione predefinita, Cassandra viene installato senza autenticazione abilitata. Ciò significa che chiunque può accedere a Cassandra. Puoi attivare l'autenticazione dopo aver installato Edge o durante il processo di installazione.

Se decidi di attivare l'autenticazione su Cassandra, vengono utilizzate le seguenti credenziali predefinite:

  • username = 'cassandra'
  • password = 'cassandra'

Puoi utilizzare questo account, impostare una password diversa per questo account o creare un nuovo utente Cassandra. Aggiungi, rimuovi e modifica gli utenti utilizzando le istruzioni CREATE/ALTER/DROP USER di Cassandra.

Per saperne di più, consulta i comandi della shell SQL di Cassandra.

Abilita l'autenticazione Cassandra durante l'installazione

Puoi attivare l'autenticazione Cassandra al momento dell'installazione. Tuttavia, anche se puoi attivare l'autenticazione quando installi Cassandra, non puoi modificare il nome utente e la password predefiniti. Devi eseguire questo passaggio manualmente al termine dell'installazione di Cassandra.

Per attivare l'autenticazione Cassandra al momento dell'installazione, includi la proprietà CASS_AUTH nel file di configurazione per tutti i nodi Cassandra:

CASS_AUTH=y # The default value is n.

I seguenti componenti Edge accedono a Cassandra:

  • Server di gestione
  • Processori di messaggi
  • Router
  • Server Qpid
  • Server Postgres

Pertanto, quando installi questi componenti, devi impostare le seguenti proprietà nel file di configurazione per specificare le credenziali di Cassandra:

CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

Puoi modificare le credenziali di Cassandra dopo aver installato Cassandra. Tuttavia, se hai già installato il server di gestione, i processori di messaggi, i router, i server Qpid o i server Postgres, devi aggiornare anche questi componenti per utilizzare le nuove credenziali.

Per modificare le credenziali di Cassandra dopo l'installazione:

  1. Accedi a un nodo Cassandra utilizzando lo strumento cqlsh e le credenziali predefinite. Devi solo cambiare la password su un nodo e questa verrà trasmessa a tutti i nodi Cassandra nell'anello:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    Dove:

    1. cassIP è l'indirizzo IP del nodo Cassandra.
    2. 9042 è la porta Cassandra predefinita.
    3. L'utente predefinito è cassandra.
    4. La password predefinita è cassandra. Se hai modificato la password in precedenza, utilizza la password corrente.
  2. Esegui questo comando al prompt cqlsh> per aggiornare la password:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  3. Esci dallo strumento cqlsh:
    exit
  4. Se non hai ancora installato il server di gestione, i processori di messaggi, i router, i server Qpid o i server Postgres, imposta le seguenti proprietà nel file di configurazione e poi installa i componenti:
    CASS_USERNAME=cassandra
    CASS_PASSWORD=NEW_PASSWORD
  5. Se hai già installato il server di gestione, i processori di messaggi, i router, i server Qpid o i server Postgres, consulta la sezione Reimpostazione delle password di Edge per la procedura di aggiornamento di questi componenti per l'utilizzo della nuova password.

Abilita l'autenticazione Cassandra dopo l'installazione

Per attivare l'autenticazione:

  • Aggiorna tutti i componenti Edge che si connettono a Cassandra con il nome utente e la password di Cassandra.
  • Su tutti i nodi Cassandra, abilita l'autenticazione.
  • Imposta il nome utente e la password di Cassandra su un nodo qualsiasi. Devi solo modificare le credenziali su un nodo Cassandra e verranno trasmesse a tutti i nodi Cassandra nell'anello.

Utilizza la procedura seguente per aggiornare tutti i componenti Edge che comunicano con Cassandra con le nuove credenziali. Tieni presente che questo passaggio deve essere eseguito prima di aggiornare effettivamente le credenziali di Cassandra:

  1. Sul nodo del server di gestione, esegui questo comando:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server
      store_cassandra_credentials -u cassandra_username -p cassandra_password

    Se vuoi, puoi passare al comando un file contenente il nuovo nome utente e la nuova password:

    apigee-service edge-management-server store_cassandra_credentials  -f configFile

    Dove configFile contiene quanto segue:

    CASS_USERNAME=cassandra_username # Default is cassandra
    CASS_PASSWORD=cassandra_password # Default is cassandra

    Questo comando riavvia automaticamente il server di gestione.

  2. Per ciascuno dei seguenti servizi, ripeti il passaggio 1:
    • Tutti i processori di messaggi
    • Tutti i router
    • Tutti i server Qpid (edge-qpid-server)
    • Server Postgres (edge-postgres-server)

    Quando ripeti il passaggio 1 per ogni servizio, sostituisci edge-management-server nel comando precedente con il nome del servizio appropriato. Ad esempio, quando esegui il passaggio per un servizio Router, utilizza il seguente comando:

    /opt/apigee/apigee-service/bin/apigee-service edge-router
      store_cassandra_credentials -u cassandra -p cassandra

Utilizza la seguente procedura per attivare l'autenticazione Cassandra e impostare il nome utente e la password:

  1. Accedi al primo nodo Cassandra.
  2. Esegui questo comando:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra
      enable_cassandra_authentication -e y

    Questo comando attiva l'autenticazione e riavvia Cassandra.

  3. Ripeti i passaggi 1 e 2 su tutti i nodi Cassandra.
  4. Accedi a un nodo Cassandra utilizzando lo strumento cqlsh e le credenziali predefinite. Devi modificare la password su un solo nodo Cassandra e verrà trasmessa a tutti i nodi Cassandra nell'anello:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    Dove

    • cassIP è l'indirizzo IP del nodo Cassandra.
    • 9042 è la porta Cassandra.
    • L'utente predefinito è cassandra.
    • La password predefinita è cassandra. Se hai modificato la password in precedenza, utilizza la password corrente.
  5. Esegui questo comando al prompt cqlsh> per aggiornare la password:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  6. Esegui questo comando al prompt cqlsh> per assicurarti che lo spazio delle chiavi sia sempre disponibile. Per un singolo data center:
    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};
    Per due data center:
    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'};
  7. Esci dallo strumento cqlsh:
    exit
  8. Esegui nodetool repair per assicurarti che la modifica venga propagata a tutti i nodi Cassandra:
    /opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] repair system_auth

    Devi passare il nome utente e la password solo se hai abilitato l'autenticazione JMX per Cassandra.