Abilita autenticazione Cassandra

Per impostazione predefinita, Cassandra esegue installazioni senza autenticazione abilitata. Ciò significa che chiunque può accedere Cassandra, Puoi attivare l'autenticazione dopo l'installazione di Edge o durante l'installazione e il processo di sviluppo.

Se decidi di attivare l'autenticazione su Cassandra, viene utilizzata la seguente impostazione predefinita credenziali:

  • nome utente = "cassandra"
  • password = "cassandra"

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

Per maggiori informazioni, vedi Comandi della shell SQL di Cassandra.

Attiva l'autenticazione Cassandra durante installazione

Puoi attivare l'autenticazione Cassandra al momento dell'installazione. Tuttavia, sebbene sia possibile abilitare quando si installa Cassandra, non è possibile modificare il nome utente e la password predefiniti. Questo passaggio deve essere eseguito manualmente al termine dell'installazione di Cassandra.

Per attivare l'autenticazione Cassandra al momento dell'installazione, includi CASS_AUTH nel file di configurazione di 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 si installano questi componenti, è necessario impostare le seguenti proprietà nella di configurazione per specificare le credenziali di Cassandra:

CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

Puoi modificare le credenziali di Cassandra dopo l'installazione di Cassandra. Tuttavia, se disponi già installati server di gestione, processori di messaggi, router, server Qpid o Postgres devi aggiornare anche i componenti in modo da utilizzare le nuove credenziali.

Per modificare le credenziali di Cassandra dopo l'installazione di Cassandra:

  1. Accedi a qualsiasi nodo Cassandra utilizzando lo strumento cqlsh e il valore predefinito e credenziali. Basta cambiare la password su un nodo e verrà trasmessa a tutti Nodi Cassandra nel ring:
    /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 predefinita di Cassandra.
    3. L'utente predefinito è cassandra.
    4. La password predefinita è cassandra. Se hai modificato la password in precedenza, utilizza la password attuale. Se la password contiene caratteri speciali, racchiudilo tra virgolette singole.
  2. Esegui questo comando al prompt di cqlsh> per aggiornare la password:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  3. Esci dallo strumento cqlsh, come mostrato nell'esempio seguente:
    exit
  4. Se non hai ancora installato il server di gestione, i processori di messaggi, Router, server Qpid o server Postgres, imposta le seguenti proprietà nella di configurazione del deployment e installare i componenti:
    CASS_USERNAME=cassandra
    CASS_PASSWORD=NEW_PASSWORD
  5. Se hai già installato il server di gestione, Message Processori, router, server Qpid o server Postgres, consulta Reimpostazione delle password perimetrali per la procedura di aggiornamento utilizzare la nuova password.

Abilita post autenticazione Cassandra installazione

Per attivare l'autenticazione:

  • Aggiorna tutti i componenti Edge che si connettono a Cassandra con il nome utente e password.
  • Abilita l'autenticazione in tutti i nodi Cassandra.
  • Imposta il nome utente e la password di Cassandra su qualsiasi nodo. Devi solo modificare su un nodo Cassandra e verranno trasmesse a tutti i nodi Cassandra suonano.

Usa la procedura seguente per aggiornare tutti i componenti Edge che comunicano con Cassandra con le nuove credenziali. Tieni presente che devi eseguire questo passaggio prima di aggiornare effettivamente Cassandra credenziali:

  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

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

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

    In cui configFile contiene quanto segue:

    CASS_USERNAME=cassandra_username # Default is cassandra
    CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special chars

    Questo comando riavvia automaticamente il server di gestione.

  2. Ripeti il passaggio 1 per ciascuno dei seguenti servizi:
    • 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 nella con il nome del servizio appropriato. Ad esempio, quando esegui il passaggio 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 abilitare l'autenticazione Cassandra e impostare il nome utente e 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 abilita l'autenticazione e riavvia Cassandra.

  3. Ripeti i passaggi 1 e 2 su tutti i nodi Cassandra.
  4. Accedi a qualsiasi nodo Cassandra utilizzando lo strumento cqlsh e il valore predefinito e credenziali. Basta cambiare la password su un nodo Cassandra e la password esegui la trasmissione 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 attuale.
  5. Esegui questo comando al prompt cqlsh> per aggiornare password:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  6. Esegui questo comando al prompt cqlsh> per assicurarti che e lo spazio delle chiavi è 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 Nodi Cassandra, come illustrato nell'esempio seguente:
    /opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw 'password'] repair system_auth

    Devi trasmettere il tuo nome utente e la tua password solo se l'autenticazione JMX abilitata per Cassandra.