Włącz uwierzytelnianie Cassandra

Domyślnie system Cassandra instaluje oprogramowanie bez włączonego uwierzytelniania. Oznacza to, że każdy ma dostęp Cassandra. Uwierzytelnianie możesz włączyć po zainstalowaniu Edge lub podczas instalacji proces tworzenia konta.

Możesz dodawać, usuwać i modyfikować użytkowników za pomocą systemu CREATE/ALTER/DROP USER Cassandra wyciągów. Więcej informacji znajdziesz w artykule Polecenia powłoki SQL Cassandra.

Włącz uwierzytelnianie Cassandra podczas instalacja

Uwierzytelnianie Cassandra możesz włączyć podczas instalacji.

Aby włączyć uwierzytelnianie Cassandra podczas instalacji, uwzględnij CASS_AUTH w pliku konfiguracji dla wszystkich węzłów Cassandra:

CASS_AUTH=y # The default value is n.

Te komponenty Edge uzyskują dostęp do Cassandra:

  • Serwer zarządzania
  • Procesory wiadomości
  • Routery
  • Serwery Qpid
  • Serwery Postgres

Po zainstalowaniu tych komponentów musisz ustawić nazwę użytkownika i hasło w plik konfiguracyjny:

CASS_USERNAME=cassandra_username
CASS_PASSWORD=cassandra_password

Dane logowania do systemu Cassandra możesz zmienić po zainstalowaniu tej aplikacji. Jeśli jednak masz już zainstalowano serwer zarządzania, procesory wiadomości, routery, serwery Qpid lub Postgres; serwerów, musisz też zaktualizować te komponenty, tak aby używały nowych danych logowania.

Aby zmienić dane logowania do systemu Cassandra po zainstalowaniu tej aplikacji:

  1. Zaloguj się do dowolnego węzła Cassandra za pomocą narzędzia cqlsh i domyślnego dane logowania. Wystarczy zmienić hasło tylko w jednym węźle, a zostanie ono wysłane do wszystkich Węzły Cassandra w pierścieniu:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra_username -p cassandra_password

    Gdzie:

    1. cassIP to adres IP węzła Cassandra.
    2. 9042 to domyślny port Cassandra.
  2. Aby zaktualizować hasło, uruchom w wierszu cqlsh> następujące polecenie:
    ALTER USER cassandra_username/var> WITH PASSWORD 'new_cassandra_password';
  3. Zamknij narzędzie cqlsh zgodnie z przykładem poniżej:
    exit
  4. Jeśli nie zainstalowano jeszcze serwera zarządzania, procesorów wiadomości, Routery, serwery Qpid lub serwery Postgres ustaw te właściwości w sekcji config, a potem zainstaluj te komponenty:
    CASS_USERNAME=cassandra_username
    CASS_PASSWORD=new_cassandra_password
  5. Jeśli masz już zainstalowany serwer zarządzania, komunikat w przypadku procesorów, routerów, serwerów Qpid lub serwerów Postgres, zapoznaj się z sekcją Resetowanie haseł brzegowych, aby dowiedzieć się, jak je zaktualizować. użyć nowego hasła.

Włącz post uwierzytelniania Cassandra instalacja

Aby włączyć uwierzytelnianie po instalacji:

Aktualizowanie komponentów Edge, które łączą się z systemem Cassandra

Wykonaj poniższą procedurę, aby zaktualizować wszystkie komponenty Edge, które komunikują się z Cassandra przy użyciu nowych danych logowania. Pamiętaj, że ten krok należy wykonać przed zaktualizowaniem systemu Cassandra dane logowania:

  1. W węźle serwera zarządzania uruchom następujące polecenie:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server
      store_cassandra_credentials -u cassandra_username -p cassandra_password

    Opcjonalnie do polecenia możesz przekazać plik zawierający nową nazwę użytkownika i hasło:

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

    Gdzie configFile zawiera:

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

    To polecenie automatycznie ponownie uruchomi serwer zarządzania.

  2. Powtórz krok 1 dla każdej z tych usług:
    • Wszystkie procesory wiadomości
    • Wszystkie routery
    • Wszystkie serwery Qpid (edge-qpid-server)
    • Serwery Postgres (edge-postgres-server)

    Jeśli powtarzasz krok 1 dla każdej usługi, zastąp edge-management-server w powyżej z odpowiednią nazwą usługi. Na przykład, gdy wykonujesz krok dla instrukcji routera, użyj tego polecenia:

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

Włączanie uwierzytelniania

Wykonaj poniższe czynności, aby włączyć uwierzytelnianie Cassandra i ustawić nazwę użytkownika oraz hasło:

  1. Utwórz plik konfiguracji cichej z poniższą zawartością:
    # Specify IP address or DNS name of cassandra node
    IP1=192.168.1.1
    IP2=192.168.1.2
    IP3=192.168.1.3
    # Must resolve to IP address or DNS name of host
    HOSTIP=$(hostname -i)
    # Set to ‘y’ to enable Cassandra authentication.
    CASS_AUTH=y # Possible values are ‘y/n’
    # Cassandra username. If it does not exist, this user would be created as a SUPERUSER
    CASS_USERNAME=cassandra_username # Default value is cassandra - don't use for production
    # Cassandra Password. If CASS_USERNAME does not exist, create SUPERUSER with this as password
    CASS_PASSWORD=cassandra_password # Default value is cassandra - don't use for production
    # Space-separated IP/DNS names of the Cassandra hosts
    CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"
    
    # Username of an existing C* user. Only needed if you have disabled or changed details of the default cassandra user(‘cassandra’)
    CASS_EXISTING_USERNAME=existing_cassandra_username
    # Password of an existing C* user. Only needed if you have disabled or change password of the default cassandra user(‘cassandra’)
    CASS_EXISTING_PASSWORD=existing_cassandra_password
    # Cassandra port
    CASS_PORT=9042 # The default port is 9042.
  2. Zaloguj się do pierwszego węzła Cassandra i wykonaj to polecenie:

    apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG

    Opcjonalnie możesz przekazać do skryptu właściwości jako argumenty polecenia, tak jak to widać w następujący przykład:

    CASS_AUTH=y HOSTIP=$(hostname -i) CASS_PORT=9042 CASS_EXISTING_USERNAME=existing_cassandra_username CASS_EXISTING_PASSWORD=existing_cassandra_password CASS_USERNAME=cassandra_username CASS_PASSWORD=cassandra_password  CASS_HOSTS="192.168.1.1:1,1 192.168.1.2:1,1 192.168.1.3:1,1" apigee-service apigee-cassandra enable_cassandra_authentication

    Uwagi:

    • Domyślnie dane logowania Cassandra, powyższe polecenie włącza uwierzytelnianie Cassandra i uruchamia się ponownie Cassandra.
    • W przypadku danych uwierzytelniających innych niż domyślne polecenie zmienia też współczynnik replikacji, tworząc superużytkownik i przeprowadza naprawę w systemie system_auth keyspace.
  3. Powtórz kroki 1 i 2 na wszystkich węzłach Cassandra.