Cassandra kimlik doğrulamasını etkinleştir

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:

  1. cqlsh aracı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:

    1. cassIP, Cassandra düğümünün IP adresidir.
    2. 9042, varsayılan Cassandra bağlantı noktasıdır.
  2. Ş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';
  3. Aşağıdaki örnekte gösterildiği gibi cqlsh aracından çıkın:
    exit
  4. 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
  5. 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 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:

  1. 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.

  2. 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-server ifadesini 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:

  1. 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.
  2. İ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.
  3. Tüm Cassandra düğümlerinde 1. ve 2. adımları tekrarlayın.