Abilita autenticazione Cassandra

Edge per Private Cloud v4.18.01

Per impostazione predefinita, Cassandra esegue l'installazione senza autenticazione abilitata. Ciò significa che chiunque può accedere a Cassandra. Puoi abilitare l'autenticazione dopo aver installato Edge o durante la procedura di installazione.

Se decidi di abilitare l'autenticazione su Cassandra, questa utilizza le seguenti credenziali predefinite:

  • nome utente = 'cassandra'
  • password = 'cassandra'

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

Per maggiori informazioni, consulta l'articolo sui comandi della shell SQL di Cassandra.

Abilita l'autenticazione Cassandra durante l'installazione

Puoi attivare l'autenticazione Cassandra come ora di installazione. Tuttavia, anche se puoi abilitare 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.

Nota: durante l'installazione di Cassandra, utilizza le opzioni "-p c", "-p ds", "-p sa", "-p aio", "-p asa" e "-p ebp".

Per abilitare 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 di Edge accedono a Cassandra:

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

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

CASS_USERNAME=cassandra 
CASS_PASSWORD=cassandra

Dopo aver installato Cassandra, puoi modificare le credenziali di Cassandra. Tuttavia, se hai già installato server di gestione, processori di messaggi, router, server Qpid, server Postgres o stack BaaS, devi aggiornare anche questi 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 le credenziali predefinite. Devi solo cambiare la password su un nodo, che 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 predefinita di Cassandra.
    3. L'utente predefinito è cassandra.
    4. La password predefinita è cassandra. Se hai modificato la password in precedenza, utilizza la password attuale.
  2. Esegui questo comando quando cqlsh> richiede di aggiornare la password:
    cqlsh> ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  3. Esci dallo strumento cqlsh:
    cqlsh> exit
  4. Se non hai ancora installato il server di gestione, i processori di messaggi, i router, i server Qpid, i server Postgres o lo stack BaaS, imposta le seguenti proprietà nel file di configurazione, quindi installa questi componenti:
    CASS_USERNAME=cassandra
    CASS_PASSWORD=NEW_PASSWORD
  5. Se hai già installato server di gestione, processori di messaggi, router, server Qpid, server Postgres o stack BaaS, consulta Reimpostazione delle password perimetrali per la procedura per aggiornare questi componenti in modo da utilizzare la nuova password.

Abilita post-installazione dell'autenticazione Cassandra

Per abilitare l'autenticazione:

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

Utilizza la procedura seguente per aggiornare tutti i componenti Edge che comunicano con Cassandra utilizzando le nuove credenziali. Tieni presente che questo passaggio deve essere eseguito prima di aggiornare effettivamente le credenziali 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 CASS_USERNAME -p CASS_PASSWORD

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






    configFile
  2. Ripeti il passaggio 1 su:
    • Tutti i processori di messaggi
    • Tutti i router
    • Tutti i server Qpid (edge-qpid-server)
    • Server Postgres (server edge-postgres)
  3. Sul nodo dello stack BaaS per la versione 4.16.05.04 e successive:
    1. Esegui il seguente comando per generare una password criptata:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid secure_password

      Questo comando richiede la password in testo normale e restituisce la password criptata nel formato:
      SECURE:ae1b6dedbf6b26aaab8bee815a00000000
    2. Imposta i seguenti token in /opt/apigee/customer/application/usergrid.properties. Se il file non esiste, crealo:
      usergrid-deployment_cassandra.username=cassandra
      usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e40bc0 il nome utente predefinito per il campo predefinito
      .
      Se hai modificato il nome utente, imposta il valore di usergrid-deployment_cassandra.username di conseguenza.

      Assicurati di includere il prefisso "SECURE:" nella password. In caso contrario, lo stack BaaS interpreta il valore come non criptato.

      Nota: ogni nodo BaaS Stack ha la propria chiave univoca utilizzata per criptare la password. Di conseguenza, devi generare separatamente il valore criptato su ciascun nodo dello stack BaaS.
    3. Cambia la proprietà del file usergrid.properties in utente 'apigee':
      > chown apigee:apigee /opt/apigee/customer/application/usergrid.properties
    4. Configura il nodo Stack:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    5. Riavvia lo stack BaaS:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid Spark
    6. Ripeti questi passaggi per tutti i cenni dello stack BaaS.

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 consente 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 le credenziali predefinite. Devi cambiare la password su un solo nodo Cassandra e la password 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 di Cassandra.
    • L'utente predefinito è cassandra.
    • La password predefinita è cassandra. Se hai modificato la password in precedenza, utilizza la password attuale.
  5. Esegui questo comando alla richiesta di cqlsh> per aggiornare la password:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  6. Esegui questo comando alla richiesta di 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 repair system_auth