Edge dla chmury prywatnej w wersji 4.17.05
Domyślnie Cassandra jest instalowana bez włączonego uwierzytelniania. Oznacza to, że każdy może uzyskać dostęp do systemu Cassandra. Uwierzytelnianie możesz włączyć po zainstalowaniu Edge lub w ramach procesu instalacji.
Jeśli zdecydujesz się włączyć uwierzytelnianie w systemie Cassandra, używa on tych domyślnych danych logowania:
- username = 'cassandra'
- password = 'cassandra'
Możesz użyć tego konta, ustawić dla niego inne hasło lub utworzyć nowego użytkownika Cassandra. Dodawaj, usuwaj i modyfikuj użytkowników za pomocą instrukcji Cassandra CREATE/ALTER/DROP USER.
Więcej informacji znajdziesz na stronie http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/cqlCommandsTOC.html.
Włączanie uwierzytelniania Cassandra podczas instalacji
Uwierzytelnianie Cassandra możesz włączyć podczas instalacji. Podczas instalowania Cassandry możesz włączyć uwierzytelnianie, ale nie możesz zmienić domyślnej nazwy użytkownika i hasła. Po zakończeniu instalacji Cassandry musisz wykonać ten krok ręcznie.
Uwaga: użyj tej procedury podczas instalowania Cassandry za pomocą opcji „-p c”, „-p ds”, „-p sa”, „-p aio”, „-p asa” i „-p ebp”.
Aby włączyć uwierzytelnianie Cassandra podczas instalacji, dodaj właściwość CASS_AUTH do pliku konfiguracji wszystkich węzłów Cassandra:
CASS_AUTH=y # The default value is n.
Dostęp do Cassandra mają te komponenty Edge:
- Serwer zarządzania
- procesory komunikatów,
- Routery
- Serwery Qpid
- Serwery Postgres
- Stos BaaS
Dlatego podczas instalowania tych komponentów musisz ustawić te właściwości w pliku konfiguracji, aby określić dane logowania do Cassandra:
CASS_USERNAME=cassandra CASS_PASSWORD=cassandra
Dane logowania do Cassandry możesz zmienić po jej zainstalowaniu. Jeśli jednak masz już zainstalowany serwer zarządzania, procesory komunikatów, routery, serwery Qpid, serwery Postgres lub stos BaaS, musisz też zaktualizować te komponenty, aby używały nowych danych logowania.
Aby zmienić dane logowania do Cassandra po zainstalowaniu Cassandra:
- Zaloguj się w dowolnym węźle Cassandra za pomocą narzędzia cqlsh i domyślnych danych logowania. Hasło musisz zmienić tylko na jednym węźle, a zostanie ono rozesłane do wszystkich węzłów Cassandra w pierścieniu:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
Gdzie:- cassIP to adres IP węzła Cassandra.
- 9042 to domyślny port Cassandra.
- Domyślny użytkownik to cassandra.
- Domyślne hasło to cassandra. Jeśli hasło zostało wcześniej zmienione, użyj bieżącego hasła.
- Aby zaktualizować hasło, uruchom to polecenie w wierszu poleceń cqlsh>:
cqlsh> ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD'; - Zamknij narzędzie cqlsh:
cqlsh> exit - Jeśli nie masz jeszcze zainstalowanego serwera zarządzania, procesorów komunikatów, routerów, serwerów Qpid, serwerów Postgres ani stosu BaaS, ustaw w pliku konfiguracji te właściwości, a następnie zainstaluj te komponenty:
CASS_USERNAME=cassandra
CASS_PASSWORD=NEW_PASSWORD - Jeśli masz już zainstalowany serwer zarządzania, procesory komunikatów, routery, serwery Qpid, serwery Postgres lub stos BaaS, zapoznaj się z artykułem Resetowanie haseł Edge, aby dowiedzieć się, jak zaktualizować te komponenty, aby używały nowego hasła.
Włączanie uwierzytelniania Cassandra po instalacji
Aby włączyć uwierzytelnianie:
- Zaktualizuj wszystkie komponenty Edge, które łączą się z Cassandra, podając nazwę użytkownika i hasło Cassandra.
- Włącz uwierzytelnianie we wszystkich węzłach Cassandra.
- Ustaw nazwę użytkownika i hasło Cassandra w dowolnym węźle. Wystarczy zmienić dane logowania na jednym węźle Cassandra, a zostaną one rozesłane do wszystkich węzłów Cassandra w pierścieniu.
Aby zaktualizować wszystkie komponenty Edge, które komunikują się z systemem Cassandra, za pomocą nowych danych logowania, wykonaj te czynności. Pamiętaj, że ten krok należy wykonać przed zaktualizowaniem danych logowania Cassandra:
- On the Management Server node, run the following command:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u CASS_USERNAME -p CASS_PASSWORD
Optionally, you can pass a file to the command containing the new username and password:
> apigee-service edge-management-server store_cassandra_credentials -f configFile
Where the configFile contains the following:
CASS_USERNAME=cassandra
CASS_PASSWORD=CASS_PASSWROD
This command automatically restarts the Management Server. - Powtórz krok 1 na:
- Wszystkie procesory komunikatów
- Wszystkie routery
- Wszystkie serwery Qpid (edge-qpid-server)
- Serwery Postgres (edge-postgres-server)
- W węźle stosu BaaS w wersji 4.16.05.04 i nowszych:
- Uruchom to polecenie, aby wygenerować zaszyfrowane hasło:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid secure_password
To polecenie poprosi o podanie hasła w postaci zwykłego tekstu i zwróci zaszyfrowane hasło w postaci:
SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050 - Ustaw te tokeny w pliku /opt/apigee/customer/application/usergrid.properties.
Jeśli ten plik nie istnieje, utwórz go:
usergrid-deployment_cassandra.username=cassandra
usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050
W tym przykładzie użyto domyślnej nazwy użytkownika Cassandra. Jeśli nazwa użytkownika została zmieniona, odpowiednio ustaw wartość usergrid-deployment_cassandra.username.
Upewnij się, że hasło zawiera prefiks „SECURE:”. W przeciwnym razie stos BaaS interpretuje wartość jako niezaszyfrowaną.
Uwaga: każdy węzeł stosu BaaS ma własny unikalny klucz używany do szyfrowania hasła. Dlatego musisz wygenerować zaszyfrowaną wartość osobno na każdym węźle stosu BaaS. - Zmień właściciela pliku usergrid.properties na użytkownika „apigee”:
> chown apigee:apigee /opt/apigee/customer/application/usergrid.properties - Skonfiguruj węzeł Stack:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure - Uruchom ponownie stos BaaS:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart - Powtórz te czynności w przypadku wszystkich węzłów stosu BaaS.
- Uruchom to polecenie, aby wygenerować zaszyfrowane hasło:
Aby włączyć uwierzytelnianie Cassandra i ustawić nazwę użytkownika oraz hasło, wykonaj te czynności:
- Zaloguj się w pierwszym węźle Cassandra.
- Uruchom to polecenie:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra enable_cassandra_authentication -e y
To polecenie włącza uwierzytelnianie i ponownie uruchamia Cassandrę.
- Powtórz kroki 1 i 2 na wszystkich węzłach Cassandra.
- Zaloguj się w dowolnym węźle Cassandra za pomocą narzędzia
cqlshi domyślnych danych logowania. Wystarczy zmienić hasło na jednym węźle Cassandra, a zostanie ono rozesłane do wszystkich węzłów Cassandra w pierścieniu:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
Gdzie
- cassIP to adres IP węzła Cassandra.
- 9042 to port Cassandra.
- Domyślny użytkownik to
cassandra. - Domyślne hasło to
cassandra. Jeśli hasło zostało wcześniej zmienione, użyj bieżącego hasła.
- Aby zaktualizować hasło, uruchom to polecenie w wierszu poleceń
cqlsh>:ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
- Aby mieć pewność, że przestrzeń kluczy jest zawsze dostępna, uruchom w wierszu poleceń
cqlsh>to polecenie. W przypadku jednego centrum danych: W przypadku 2 centrów danych:ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'}; - Zamknij narzędzie
cqlsh:exit
- Uruchom
nodetool repair, aby upewnić się, że zmiana została wprowadzona we wszystkich węzłach Cassandra:/opt/apigee/apigee-cassandra/bin/nodetool repair system_auth