По умолчанию Cassandra устанавливается без включенной аутентификации. Это означает, что любой, у кого есть доступ к вашему серверу Cassandra, может запросить базу данных Cassandra без какой-либо аутентификации. Вы можете включить аутентификацию после установки Edge или в рамках процесса установки.
Если вы решите включить аутентификацию в Cassandra без предоставления каких-либо собственных учетных данных, она будет использовать следующие учетные данные по умолчанию:
- имя пользователя = 'Кассандра'
- пароль = 'Кассандра'
Вы можете использовать эту учетную запись пользователя, установить другой пароль для этой учетной записи пользователя или создать нового пользователя Cassandra. Добавляйте, удаляйте и изменяйте пользователей с помощью операторов Cassandra CREATE/ALTER/DROP USER
.
Дополнительные сведения см. в разделе Команды оболочки Cassandra SQL .
Включить аутентификацию Cassandra во время установки
Вы можете включить аутентификацию Cassandra во время установки. Однако, хотя вы можете включить аутентификацию при установке Cassandra, вам всегда следует использовать имя пользователя и пароль Cassandra по умолчанию ( 'cassandra':'cassandra'
) во время установки. Если вы хотите использовать учетные данные Cassandra не по умолчанию, вам необходимо повторно включить аутентификацию Cassandra после установки, выполнив действия, перечисленные здесь .
Если вы хотите включить аутентификацию Cassandra во время новой установки Cassandra, включите приведенные ниже свойства в файл конфигурации для всех узлов Cassandra:
CASS_AUTH=y CASS_USERNAME=cassandra CASS_PASSWORD=cassandra
Затем при установке будет настроена Cassandra с включенной аутентификацией и учетными данными cassandra:cassandra
по умолчанию.
После завершения первоначальной установки вы можете выполнить один или несколько из следующих шагов:
- Создайте альтернативного пользователя, который будет использоваться для аутентификации Cassandra, выполнив процедуру, описанную здесь .
- Измените пароль пользователя Cassandra по умолчанию, выполнив следующие действия.
- Установите компоненты Edge , использующие Cassandra, чтобы использовать учетные данные, которые вы установили выше.
Edge-компоненты, подключающиеся к Cassandra
Следующие компоненты Edge получают доступ к Cassandra:
- Сервер управления
- Процессоры сообщений
- Маршрутизаторы
- Qpid-серверы
- Серверы Postgres
Установите компоненты Edge, если включена аутентификация Cassandra.
Если при первой установке этих компонентов Edge у вас включена аутентификация Cassandra, вам необходимо указать следующие параметры в файле автоматической конфигурации:
CASS_AUTH=Y CASS_USERNAME=<valid username in Cassandra> CASS_PASSWORD=<password for the above username>
Вы можете изменить учетные данные Cassandra после установки Cassandra . Однако если вы уже установили сервер управления, процессоры сообщений, маршрутизаторы, серверы Qpid или серверы Postgres, вам также необходимо обновить эти компоненты, чтобы они использовали новые учетные данные, как описано в следующем разделе.
Обновите компоненты Edge, которые подключаются к Cassandra.
Используйте следующую процедуру, чтобы обновить все компоненты Edge, которые взаимодействуют с Cassandra, с использованием новых учетных данных. Обратите внимание, что вы должны выполнить этот шаг до того, как фактически обновите учетные данные Cassandra:
- На узле Сервер управления выполните следующую команду:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u cassandra_username -p cassandra_password
При желании вы можете передать команде файл, содержащий новое имя пользователя и пароль:
apigee-service edge-management-server store_cassandra_credentials -f configFile
где
configFile
содержит следующее:CASS_USERNAME=cassandra_username # Default is cassandra CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special characters.
Эта команда автоматически перезапускает Сервер управления.
- Повторите шаг 1 для каждой из следующих служб:
- Все процессоры сообщений
- Все маршрутизаторы
- Все серверы Qpid (edge-qpid-server)
- Серверы Postgres (edge-postgres-server)
При повторении шага 1 для каждой службы замените
edge-management-server
в приведенной выше команде на соответствующее имя службы. Например, когда вы выполняете шаг для службы маршрутизатора, используйте следующую команду:/opt/apigee/apigee-service/bin/apigee-service edge-router store_cassandra_credentials -u cassandra -p cassandra
Включить аутентификацию Cassandra после установки
В следующих разделах объясняется, как включить аутентификацию Cassandra после установки.
Включите аутентификацию Cassandra в одном центре обработки данных.
Для установки Apigee на базе одного центра обработки данных, в которой уже установлена Cassandra, вы можете:
- Включите аутентификацию Cassandra в первый раз, используя пользователя Cassandra по умолчанию (
cassandra:cassandra
) или создав совершенно нового суперпользователя. Для этого выполните следующие действия:- Выполните действия, описанные в разделе Включение аутентификации Cassandra в первый раз .
- Обновите компоненты Edge, которые подключаются к Cassandra, используя имя пользователя и пароль Cassandra.
- Измените пароль существующего пользователя Cassandra. Если вы включили аутентификацию Cassandra, используя учетные данные Cassandra по умолчанию (
cassandra:cassandra
), вы можете изменить пароль, выполнив следующие действия:- Измените пароль пользователя Cassandra.
- Обновите компоненты Edge, которые подключаются к Cassandra, используя имя пользователя и пароль Cassandra.
Примечание. Пользователь «Кассандра» — это специальный пользователь в Кассандре. Аутентификация с использованием этого пользователя требует согласованности QUORUM. См. раздел «Об уровнях согласованности Cassandra» .
Включить аутентификацию Cassandra при наличии нескольких центров обработки данных
При расширении центра обработки данных выполните действия одного из следующих сценариев, в зависимости от того, что соответствует вашей настройке.
Сценарий 1. В существующем центре обработки данных включена аутентификация Cassandra.
Если аутентификация Cassandra уже включена в существующем центре обработки данных с учетными данными
cassandra:cassandra
по умолчанию, выполните следующие действия:- Настройте новый центр обработки данных с учетными данными Cassandra:Cassandra по умолчанию и CASS_AUTH=y. См. раздел «Первое включение аутентификации Cassandra» .
- Установите компоненты Edge в новом центре обработки данных, используя учетные данные Cassandra по умолчанию.
Если аутентификация Cassandra уже включена в существующем центре обработки данных с учетными данными, отличными от стандартных, выполните следующие действия:
- Настройте новый центр обработки данных с учетными данными Cassandra:Cassandra по умолчанию и CASS_AUTH=y. См. раздел «Первое включение аутентификации Cassandra» .
- Следуйте инструкциям Включите аутентификацию Cassandra в первый раз, чтобы повторно использовать учетные данные из существующего центра обработки данных (если существующий использует учетные данные, отличные от учетных данных по умолчанию).
- Установите компоненты Edge в новом центре обработки данных, используя учетные данные Cassandra, отличные от стандартных.
Сценарий 2. В существующем центре обработки данных не включена аутентификация Cassandra.
Если аутентификация cassandra не включена, выполните следующие действия:
- Настройте новый центр обработки данных без аутентификации Cassandra.
- Следуйте инструкциям по включению аутентификации Cassandra в первый раз, чтобы включить аутентификацию Cassandra во всем кластере (после расширения).
- Обновите компоненты Edge, которые подключаются к Cassandra, выполнив действия, описанные здесь .
Включите аутентификацию Cassandra в первый раз
Используйте следующую процедуру, чтобы включить аутентификацию Cassandra в первый раз или создать новое имя пользователя и пароль Cassandra:
- Создайте файл автоматической конфигурации с содержимым, показанным ниже:
# 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.
- Войдите на первый узел Cassandra и выполните следующую команду:
apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG
При желании вы можете передать свойства в качестве аргументов команды сценарию, как показано в следующем примере:
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
Примечания:
- Для учетных данных Cassandra по умолчанию приведенная выше команда включает аутентификацию Cassandra и перезапускает Cassandra.
- Для учетных данных, отличных от заданных по умолчанию, команда также изменяет коэффициент репликации, создает суперпользователя и запускает восстановление пространства ключей system_auth.
- Повторите шаги 1 и 2 на всех узлах Cassandra один за другим.
Измените учетные данные Cassandra после установки Cassandra
Чтобы изменить учетные данные Cassandra после установки Cassandra:
- Войдите в любой узел Cassandra, используя инструмент
cqlsh
и учетные данные по умолчанию. Вам нужно изменить пароль только на одном узле, и он будет транслироваться на все узлы Cassandra в кольце:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
Где:
- cassIP — IP-адрес узла Cassandra.
- 9042 — это порт Cassandra по умолчанию.
- Пользователь по умолчанию —
cassandra
. - Пароль по умолчанию —
cassandra
. Если вы ранее меняли пароль, используйте текущий пароль. Если пароль содержит специальные символы, заключите его в одинарные кавычки.
- Выполните следующую команду в приглашении
cqlsh>
, чтобы обновить пароль:ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
- Выйдите из инструмента
cqlsh
, как показано в следующем примере:exit
- Если вы еще не установили сервер управления, процессоры сообщений, маршрутизаторы, серверы Qpid или серверы Postgres, установите следующие свойства в файле конфигурации, а затем установите эти компоненты:
CASS_USERNAME=cassandra CASS_PASSWORD=NEW_PASSWORD
- Если вы уже установили сервер управления, процессоры сообщений, маршрутизаторы, серверы Qpid или серверы Postgres, см. раздел «Сброс паролей Edge» , чтобы узнать о процедуре обновления этих компонентов для использования нового пароля.