Cassandra kimlik doğrulamasını etkinleştir

Cassandra, varsayılan olarak kimlik doğrulama etkinleştirilmeden yüklenir. Bu, Cassandra sunucunuza erişimi olan herkesin Cassandra veritabanını kimlik doğrulama olmadan sorgulayabileceği anlamına gelir. Kimlik doğrulamayı Edge'i yükledikten sonra veya yükleme işleminin bir parçası olarak etkinleştirebilirsiniz.

Cassandra'da kimlik doğrulamayı kendi kimlik bilgilerinizi sağlamadan etkinleştirmeye karar verirseniz aşağıdaki varsayılan kimlik bilgileri kullanılır:

  • username = 'cassandra'
  • password = 'cassandra'

Bu kullanıcı hesabını kullanabilir, bu kullanıcı hesabı için farklı bir şifre belirleyebilir veya yeni bir Cassandra kullanıcısı oluşturabilirsiniz. Cassandra CREATE/ALTER/DROP USER ifadelerini kullanarak kullanıcı ekleyin, kaldırın ve değiştirin.

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. Ancak Cassandra'yı yüklerken kimlik doğrulamayı etkinleştirebilseniz de yükleme sırasında her zaman varsayılan cassandra kullanıcı adını ve şifresini (‘cassandra’:’cassandra’) kullanmanız gerekir. Varsayılan olmayan Cassandra kimlik bilgilerini kullanmak istiyorsanız yükleme işleminden sonra burada listelenen adımları uygulayarak Cassandra kimlik doğrulamasını yeniden etkinleştirmeniz gerekir.

Yeni bir Cassandra kurulumu sırasında Cassandra kimlik doğrulamasını etkinleştirmek istiyorsanız tüm Cassandra düğümlerinin yapılandırma dosyasına aşağıdaki özellikleri ekleyin:

CASS_AUTH=y
CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

Ardından yükleme işlemi, Cassandra'yı kimlik doğrulama etkin ve varsayılan cassandra:cassandra kimlik bilgileriyle ayarlar.

İlk yükleme tamamlandıktan sonra aşağıdaki adımlardan birini veya daha fazlasını uygulayabilirsiniz:

  • Buradaki prosedürü uygulayarak Cassandra kimlik doğrulaması için kullanılacak alternatif bir kullanıcı oluşturun.
  • Buradaki adımları uygulayarak varsayılan Cassandra kullanıcısının şifresini değiştirin.
  • Yukarıda ayarladığınız kimlik bilgilerini kullanmak için Cassandra'yı kullanan Edge bileşenlerini yükleyin.

Cassandra'ya bağlanan Edge bileşenleri

Aşağıdaki Edge bileşenleri Cassandra'ya erişir:

  • Yönetim Sunucusu
  • Mesaj İşlemcileri
  • Yönlendiriciler
  • Qpid sunucuları
  • Postgres sunucuları

Cassandra kimlik doğrulaması etkinleştirildiğinde Edge bileşenlerini yükleme

Bu Edge bileşenlerini ilk kez yüklediğinizde Cassandra kimlik doğrulamasını etkinleştirdiyseniz katılımsız yapılandırma dosyasında aşağıdaki ayarları sağlamanız gerekir:

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

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. Bu işlem, sonraki bölümde açıklanmıştı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ü kullanın. Cassandra kimlik bilgilerini güncellemeden önce bu adımı 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

    Burada configFile şunları içerir:

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

    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 değerini uygun hizmet adıyla değiştirin. Örneğin, bir Router 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

    Yüklemeden sonra Cassandra kimlik doğrulamasını etkinleştirme

    Aşağıdaki bölümlerde, yükleme işleminden sonra Cassandra kimlik doğrulamasının nasıl etkinleştirileceği açıklanmaktadır.

    Tek bir veri merkezi kurulumunda Cassandra kimlik doğrulamasını etkinleştirme

    Cassandra'nın zaten yüklü olduğu tek bir veri merkezine dayalı Apigee kurulumu için şunları yapabilirsiniz:

    Not: "Cassandra" kullanıcısı, Cassandra'da özel bir kullanıcıdır. Bu kullanıcıyla kimlik doğrulama için QUORUM tutarlılığı gerekir. Cassandra tutarlılık düzeyleri hakkında başlıklı makaleyi inceleyin.

    Birden fazla veri merkezi olduğunda Cassandra kimlik doğrulamasını etkinleştirme

    Veri merkezlerini genişletirken kurulumunuza uygun olan aşağıdaki senaryolardan birindeki adımları uygulayın.

    1. senaryo: Mevcut veri merkezinde Cassandra kimlik doğrulaması etkinleştirilmiş

    Cassandra kimlik doğrulaması, varsayılan cassandra:cassandra kimlik bilgileriyle mevcut bir veri merkezinde zaten etkinleştirilmişse aşağıdaki adımları uygulayın:

    1. Varsayılan Cassandra:Cassandra kimlik bilgileri ve CASS_AUTH=y ile yeni bir veri merkezi oluşturun. Cassandra kimlik doğrulamasını ilk kez etkinleştirme başlıklı makaleyi inceleyin.
    2. Varsayılan Cassandra kimlik bilgilerini kullanarak yeni veri merkezine Edge bileşenlerini yükleyin.

    Cassandra kimlik doğrulaması, mevcut veri merkezinde varsayılan olmayan kimlik bilgileriyle zaten etkinleştirilmişse aşağıdaki adımları uygulayın:

    1. Varsayılan Cassandra:Cassandra kimlik bilgileri ve CASS_AUTH=y ile yeni bir veri merkezi oluşturun. Cassandra kimlik doğrulamasını ilk kez etkinleştirme başlıklı makaleyi inceleyin.
    2. Mevcut bir veri merkezindeki kimlik bilgilerini yeniden kullanmak için (mevcut veri merkezi varsayılan olmayan bir kimlik bilgisi kullanıyorsa) Cassandra kimlik doğrulamasını ilk kez etkinleştirme adımlarını uygulayın.
    3. Varsayılan olmayan Cassandra kimlik bilgilerini kullanarak yeni veri merkezine Edge bileşenlerini yükleyin.

    2. senaryo: Mevcut veri merkezinde Cassandra kimlik doğrulaması etkin değil

    Cassandra kimlik doğrulaması etkinleştirilmemişse aşağıdaki adımları uygulayın:

    1. Cassandra kimlik doğrulaması olmadan yeni bir veri merkezi oluşturun.
    2. Küme genelinde Cassandra kimlik doğrulamasını etkinleştirmek için (genişletme sonrası) Cassandra kimlik doğrulamasını ilk kez etkinleştirme adımlarını uygulayın.
    3. Buradaki adımları uygulayarak Cassandra'ya bağlanan Edge bileşenlerini güncelleyin.

    Cassandra kimlik doğrulamasını ilk kez etkinleştirme

    Cassandra kimlik doğrulamasını ilk kez etkinleştirmek veya yeni bir Cassandra kullanıcı adı ve şifresi oluşturmak 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 # 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. İ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=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

      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 anahtar alanında onarım işlemi çalıştırır.
    3. Tüm Cassandra düğümlerinde 1. ve 2. adımları tek tek tekrarlayın.

    Cassandra'yı yükledikten sonra Cassandra kimlik bilgilerini değiştirme

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

      Burada:

      1. cassIP, Cassandra düğümünün IP adresidir.
      2. 9042, varsayılan Cassandra bağlantı noktasıdır.
      3. Varsayılan kullanıcı: cassandra.
      4. Varsayılan şifre cassandra şeklindedir. Şifreyi daha önce değiştirdiyseniz mevcut şifreyi kullanın. Şifre özel karakterler içeriyorsa tek tırnak içine alın.
    2. Şifreyi güncellemek için cqlsh> isteminde aşağıdaki komutu çalıştırın:
      ALTER USER cassandra WITH PASSWORD 'NEW_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
      CASS_PASSWORD=NEW_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.