Włącz uwierzytelnianie Cassandra

Domyślnie system Cassandra instaluje oprogramowanie bez włączonego uwierzytelniania. Oznacza to, że każda osoba z dostępem do serwera Cassandra może wysyłać zapytania do bazy danych Cassandra bez uwierzytelniania. Dostępne opcje włącz uwierzytelnianie po zainstalowaniu Edge lub podczas procesu instalacji.

Jeśli zdecydujesz się włączyć uwierzytelnianie w Cassandra bez podawania żadnych danych logowania , używane są następujące domyślne dane logowania:

  • nazwa użytkownika = 'cassandra'
  • hasło = 'cassandra'

Możesz użyć tego konta użytkownika, ustawić dla niego inne hasło lub utwórz nowego użytkownika konta Cassandra. Dodawanie, usuwanie i modyfikowanie użytkowników za pomocą metody Cassandra Wyciągi: CREATE/ALTER/DROP USER.

Więcej informacji znajdziesz w artykule o poleceniach powłoki SQL w Cassandra.

Włącz uwierzytelnianie Cassandra podczas instalacja

Uwierzytelnianie Cassandra możesz włączyć podczas instalacji. Możesz jednak włączyć uwierzytelniania podczas instalowania Cassandra, należy zawsze używać domyślnej nazwy użytkownika Cassandra i hasło (‘cassandra’:’cassandra’) podczas instalacji. Jeśli chcesz używać innych danych logowania do systemu Cassandra, musisz ponownie włączyć Cassandra uwierzytelnienie po zainstalowaniu, postępując zgodnie z instrukcją tutaj.

Jeśli chcesz włączyć uwierzytelnianie Cassandra podczas nowej instalacji Cassandra, dodaj do niej poniższe właściwości w pliku konfiguracji dla wszystkich węzłów Cassandra:

CASS_AUTH=y
CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

Instalacja spowoduje następnie skonfigurowanie systemu Cassandra z włączonym i domyślnym uwierzytelnianiem. Dane logowania: cassandra:cassandra.

Po zakończeniu wstępnej instalacji możesz wykonać co najmniej jedną z tych czynności:

  • Utwórz dodatkowego użytkownika, który będzie używany do uwierzytelniania Cassandra, wykonując tę procedurę tutaj.
  • Aby zmienić hasło domyślnego użytkownika Cassandra, wykonaj te czynności tutaj.
  • Instalowanie komponentów Edge używający systemu Cassandra do używania podanych powyżej danych logowania.

Komponenty brzegowe łączące się z modelem Cassandra

Te komponenty Edge uzyskują dostęp do Cassandra:

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

Instalowanie komponentów Edge, gdy włączone jest uwierzytelnianie Cassandra

Jeśli masz włączone uwierzytelnianie Cassandra podczas instalowania tych komponentów Edge za pierwszym razem musisz podać następujące ustawienia w pliku konfiguracji cichej:

CASS_AUTH=Y
CASS_USERNAME=<valid username in Cassandra>
CASS_PASSWORD=<password for the above username>

Możesz przeprowadzić zmianę modelu Cassandra danych logowania po zainstalowaniu systemu Cassandra. Jeśli jednak Użytkownik ma już zainstalowany serwer zarządzania, procesory wiadomości, routery, Qpid lub serwerach Postgres, musisz też zaktualizuj te komponenty, aby korzystały z nowe dane logowania, jak opisano w następnej sekcji.

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 z nowe dane 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 możesz przekazać do polecenia plik zawierający nową nazwę użytkownika i hasło:

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

    gdzie configFile zawiera następujące elementy:

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

    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)

    Gdy powtarzasz krok 1 dla każdej usługi, zastąp edge-management-server w powyższym poleceniu z odpowiednią nazwą usługi. Na przykład, gdy wykonujesz krok w przypadku usługi routera użyj tego polecenia:

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

    Po instalacji włącz uwierzytelnianie Cassandra

    W poniższych sekcjach dowiesz się, jak włączyć uwierzytelnianie Cassandra po instalacji.

    Włącz uwierzytelnianie Cassandra w jednej konfiguracji centrum danych

    W przypadku konfiguracji Apigee opartej na jednym centrum danych, w której zainstalowano już system Cassandra, możesz:

    Uwaga: „Cassandra”. Użytkownik jest specjalnym użytkownikiem w systemie Cassandra. Uwierzytelnianie przy użyciu użytkownik wymaga spójności QUORUM. Zobacz Informacje o poziomach spójności Cassandra

    Włącz uwierzytelnianie Cassandra w przypadku wielu centrów danych

    Rozwijając centrum danych, wykonaj czynności opisane w jednym z poniższych scenariuszy: w zależności od konfiguracji.

    Scenariusz 1. Istniejące centrum danych ma włączone uwierzytelnianie Cassandra

    Jeśli uwierzytelnianie Cassandra jest już włączone w istniejącym centrum danych z domyślnym Dane logowania do cassandra:cassandra, wykonaj te czynności:

    1. Skonfiguruj nowe centrum danych z domyślnymi danymi logowania Cassandra:Cassandra i CASS_AUTH=y. Zobacz Włącz uwierzytelnianie Cassandra po raz pierwszy.
    2. Zainstaluj Edge w nowym centrum danych przy użyciu domyślnych danych logowania Cassandra.

    Jeśli uwierzytelnianie Cassandra jest już włączone w istniejącym centrum danych za pomocą innych danych logowania, wykonaj te czynności:

    1. Skonfiguruj nowe centrum danych z domyślnymi danymi logowania Cassandra:Cassandra i CASS_AUTH=y. Zobacz Włącz uwierzytelnianie Cassandra po raz pierwszy.
    2. Wykonaj kroki Włącz uwierzytelnianie Cassandra po raz pierwszy, aby ponownie użyć danych logowania z istniejącym centrum danych (jeśli używane są dane logowania inne niż domyślne).
    3. Zainstaluj Edge w nowym centrum danych przy użyciu innych niż domyślne danych logowania Cassandra.

    Scenariusz 2. Istniejące centrum danych nie mają włączonego uwierzytelniania Cassandra

    Jeśli uwierzytelnianie cassandra nie jest włączone, wykonaj te czynności:

    1. Skonfiguruj nowe centrum danych bez uwierzytelniania Cassandra.
    2. Wykonaj kroki Włączanie uwierzytelniania Cassandra po raz pierwszy aby włączyć uwierzytelnianie Cassandra w klastrze (poszerzenie po wywołaniu).
    3. Zaktualizuj komponenty Edge łączące się z Cassandra, wykonując te czynności tutaj.

    Włączanie uwierzytelniania Cassandra po raz pierwszy

    Aby włączyć uwierzytelnianie Cassandra po raz pierwszy, wykonaj poniższe czynności: lub utwórz nową nazwę użytkownika i hasło w Cassandra:

    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 # Default value is cassandra
      # Cassandra Password. If CASS_USERNAME does not exist, create SUPERUSER with this as password
      CASS_PASSWORD=cassandra # Default value is cassandra
      
      # 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 change details of the default cassandra user(‘cassandra’)
      CASS_EXISTING_USERNAME=cassandra  # The default username is cassandra
      # Password of an existing C* user. Only needed if you have disabled or change password of the default cassandra user(‘cassandra’)
      CASS_EXISTING_PASSWORD=cassandra  # The default password is cassandra
      
      # 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=cassandra CASS_EXISTING_PASSWORD=cassandra CASS_USERNAME=cassandra CASS_PASSWORD=cassandra  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:

      • W przypadku domyślnych danych logowania Cassandra powyższe polecenie włącza uwierzytelnianie Cassandra i uruchamia ponownie Cassandra.
      • W przypadku danych uwierzytelniających innych niż domyślne polecenie zmienia też współczynnik replikacji, tworząc superuser i uruchamia naprawę przestrzeni kluczy system_auth.
    3. Powtórz kroki 1 i 2 po kolei we wszystkich węzłach Cassandra.

    Zmiana danych logowania do systemu Cassandra po zainstalowaniu systemu Cassandra

    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 -p cassandra

      Gdzie:

      1. cassIP to adres IP węzła Cassandra.
      2. 9042 to domyślny port Cassandra.
      3. Domyślnym użytkownikiem jest cassandra.
      4. Domyślne hasło to cassandra. Jeśli hasło zostało przez Ciebie zmienione poprzednio użyj obecnego hasła. Jeśli hasło zawiera znaki specjalne, umieść go w cudzysłowach.
    2. Aby zaktualizować hasło, uruchom w wierszu cqlsh> następujące polecenie:
      ALTER USER cassandra WITH PASSWORD 'NEW_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
      CASS_PASSWORD=NEW_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.