Cassandra, varsayılan olarak kimlik doğrulama etkinleştirilmeden yüklenir. Bu, Cassandra'ya herkesin erişebileceği anlamına gelir. Kimlik doğrulamayı Edge'i yükledikten sonra veya yükleme işleminin bir parçası olarak etkinleştirebilirsiniz.
Cassandra CREATE/ALTER/DROP USER ifadelerini kullanarak kullanıcı ekleyebilir, kaldırabilir ve değiştirebilirsiniz. Daha fazla bilgi için Cassandra SQL kabuk komutları başlıklı makaleyi inceleyin.
Yükleme sırasında Cassandra kimlik doğrulamasını etkinleştirme
Cassandra kimlik doğrulamasını yükleme sırasında etkinleştirebilirsiniz.
Yükleme sırasında Cassandra kimlik doğrulamasını etkinleştirmek için tüm Cassandra düğümlerinin yapılandırma dosyasına CASS_AUTH özelliğini ekleyin:
CASS_AUTH=y # The default value is n.
Aşağıdaki Edge bileşenleri Cassandra'ya erişir:
- Yönetim Sunucusu
- Mesaj İşlemcileri
- Yönlendiriciler
- Qpid sunucuları
- Postgres sunucuları
Bu bileşenleri yüklediğinizde yapılandırma dosyasında bir kullanıcı adı ve şifre ayarlamanız gerekir:
CASS_USERNAME=cassandra_username CASS_PASSWORD=cassandra_password
Cassandra'yı yükledikten sonra Cassandra kimlik bilgilerini değiştirebilirsiniz. Ancak Yönetim Sunucusu, Mesaj İşlemciler, Yönlendiriciler, Qpid sunucuları veya Postgres sunucularını zaten yüklediyseniz yeni kimlik bilgilerini kullanmak için bu bileşenleri de güncellemeniz gerekir.
Cassandra'yı yükledikten sonra Cassandra kimlik bilgilerini değiştirmek için:
cqlsharacını ve varsayılan kimlik bilgilerini kullanarak herhangi bir Cassandra düğümüne giriş yapın. Şifreyi yalnızca bir düğümde değiştirmeniz yeterlidir. Değişiklik, halkadaki tüm Cassandra düğümlerine yayınlanır:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra_username -p cassandra_password
Burada:
- cassIP, Cassandra düğümünün IP adresidir.
- 9042, varsayılan Cassandra bağlantı noktasıdır.
- Şifreyi güncellemek için
cqlsh>isteminde aşağıdaki komutu çalıştırın:ALTER USER cassandra_username/var> WITH PASSWORD 'new_cassandra_password';
- Aşağıdaki örnekte gösterildiği gibi
cqlsharacından çıkın:exit
- Yönetim Sunucusu, Mesaj İşlemciler, Yönlendiriciler, Qpid sunucuları veya Postgres sunucularını henüz yüklemediyseniz yapılandırma dosyasında aşağıdaki özellikleri ayarlayın ve ardından bu bileşenleri yükleyin:
CASS_USERNAME=cassandra_username CASS_PASSWORD=new_cassandra_password
- Yönetim Sunucusu, Mesaj İşlemciler, Yönlendiriciler, Qpid sunucuları veya Postgres sunucularını zaten yüklediyseniz bu bileşenleri yeni şifreyi kullanacak şekilde güncelleme prosedürü için Edge Şifrelerini Sıfırlama başlıklı makaleyi inceleyin.
Yükleme sonrasında Cassandra kimlik doğrulamasını etkinleştirme
Yükleme işleminden sonra kimlik doğrulamayı etkinleştirmek için:
- Cassandra'ya bağlanan tüm Edge bileşenlerini Cassandra kullanıcı adı ve şifresiyle güncelleyin.
- Tüm Cassandra düğümlerinde kimlik doğrulamayı etkinleştirin ve herhangi bir düğümde Cassandra kullanıcı adını ve şifresini ayarlayın. Kimlik bilgilerini yalnızca bir Cassandra düğümünde değiştirmeniz yeterlidir. Bu bilgiler, halkadaki tüm Cassandra düğümlerine yayınlanır.
Cassandra'ya bağlanan Edge bileşenlerini güncelleme
Cassandra ile iletişim kuran tüm Edge bileşenlerini yeni kimlik bilgileriyle güncellemek için aşağıdaki prosedürü uygulayın. Bu adımı, Cassandra kimlik bilgilerini güncellemeden önce uygulamanız gerektiğini unutmayın:
- Yönetim Sunucusu düğümünde aşağıdaki komutu çalıştırın:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u cassandra_username -p cassandra_password
İsterseniz yeni kullanıcı adını ve şifreyi içeren bir dosyayı komuta iletebilirsiniz:
apigee-service edge-management-server store_cassandra_credentials -f configFile
configFile aşağıdakileri içerir:
CASS_USERNAME=cassandra_username # Default is cassandra CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special chars
Bu komut, Yönetim Sunucusu'nu otomatik olarak yeniden başlatır.
- Aşağıdaki hizmetlerin her biri için 1. adımı tekrarlayın:
- Tüm Mesaj İşlemcileri
- Tüm Yönlendiriciler
- Tüm Qpid sunucuları (edge-qpid-server)
- Postgres sunucuları (edge-postgres-server)
Her hizmet için 1. adımı tekrarlarken yukarıdaki komutta
edge-management-serverifadesini uygun hizmet adıyla değiştirin. Örneğin, bir yönlendirici hizmeti için adımı yürütürken aşağıdaki komutu kullanın:/opt/apigee/apigee-service/bin/apigee-service edge-router store_cassandra_credentials -u cassandra -p cassandra
Kimlik doğrulamayı etkinleştir
Cassandra kimlik doğrulamasını etkinleştirmek ve kullanıcı adı ile şifreyi ayarlamak için aşağıdaki prosedürü uygulayın:
- Aşağıda gösterilen içeriğe sahip bir sessiz yapılandırma dosyası oluşturun:
# 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.
İlk Cassandra düğümüne giriş yapın ve aşağıdaki komutu çalıştırın:
apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG
İsterseniz özellikleri aşağıdaki örnekte gösterildiği gibi komut bağımsız değişkenleri olarak komut dosyasına iletebilirsiniz:
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
Notlar:
- Varsayılan Cassandra kimlik bilgileri için yukarıdaki komut, Cassandra kimlik doğrulamasını etkinleştirir ve Cassandra'yı yeniden başlatır.
- Varsayılan olmayan kimlik bilgileri için komut, replikasyon faktörünü de değiştirir, bir süper kullanıcı oluşturur ve
system_auth keyspaceüzerinde onarım işlemi çalıştırır.
- Tüm Cassandra düğümlerinde 1. ve 2. adımları tekrarlayın.