Mengaktifkan autentikasi Cassandra

Secara default, Cassandra menginstal tanpa mengaktifkan autentikasi. Itu berarti siapa pun yang memiliki akses ke server {i>Cassandra<i} Anda dapat melakukan kueri {i>database<i} Cassandra tanpa otentikasi apa pun. Anda dapat mengaktifkan otentikasi setelah menginstal Edge, atau sebagai bagian dari proses penginstalan.

Jika Anda memutuskan untuk mengaktifkan autentikasi di Cassandra tanpa memberikan kredensial apa pun sendiri, sistem ini menggunakan kredensial {i>default<i} berikut:

  • nama pengguna = 'cassandra'
  • sandi = 'cassandra'

Anda dapat menggunakan akun pengguna ini, menyetel sandi berbeda untuk akun pengguna ini, atau membuat pengguna Cassandra baru. Tambahkan, hapus, dan ubah pengguna menggunakan Cassandra Pernyataan CREATE/ALTER/DROP USER.

Untuk mengetahui informasi selengkapnya, lihat Perintah shell SQL Cassandra.

Aktifkan autentikasi Cassandra selama penginstalan

Anda dapat mengaktifkan autentikasi Cassandra pada waktu penginstalan. Namun, meski Anda dapat mengaktifkan ketika Anda menginstal {i>Cassandra<i}, Anda harus selalu menggunakan nama pengguna {i>cassandra<i} {i>default<i} dan sandi (‘cassandra’:’cassandra’) selama penginstalan. Jika ingin menggunakan kredensial Cassandra non-default, Anda harus mengaktifkan kembali Cassandra autentikasi setelah instalasi dengan mengikuti langkah-langkah yang tercantum di sini.

Jika Anda ingin mengaktifkan autentikasi Cassandra selama penginstalan Cassandra baru, sertakan properti di bawah ini dalam file konfigurasi untuk semua node Cassandra:

CASS_AUTH=y
CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

Penginstalan akan menyiapkan Cassandra dengan autentikasi diaktifkan dan setelan default Kredensial cassandra:cassandra.

Setelah penginstalan awal selesai, Anda dapat mengikuti satu atau beberapa langkah berikut:

  • Buat pengguna alternatif yang akan digunakan untuk autentikasi Cassandra dengan mengikuti prosedurnya di sini.
  • Ubah sandi pengguna Cassandra default dengan mengikuti langkah-langkah di sini.
  • Menginstal komponen Edge yang menggunakan Cassandra untuk menggunakan kredensial yang Anda tetapkan di atas.

Komponen edge yang terhubung ke Cassandra

Komponen Edge berikut mengakses Cassandra:

  • Server Pengelolaan
  • Pemroses Pesan
  • Router
  • Server Qpid
  • Server postgres

Instal komponen Edge saat autentikasi Cassandra diaktifkan

Jika Anda mengaktifkan autentikasi Cassandra saat menginstal komponen Edge ini untuk pertama kali, Anda perlu menyediakan setelan berikut dalam file konfigurasi senyap:

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

Anda dapat mengubah Cassandra setelah menginstal Cassandra. Namun, jika Anda telah menginstal Server Pengelolaan, Prosesor Pesan, Router, Qpid server, atau server Postgres, Anda juga harus mengupdate komponen tersebut untuk menggunakan kredensial baru, seperti yang dijelaskan di bagian berikutnya.

Mengupdate komponen Edge yang terhubung ke Cassandra

Gunakan prosedur berikut untuk memperbarui semua komponen Edge yang berkomunikasi dengan Cassandra dengan kredensial yang baru. Perhatikan bahwa Anda harus melakukan langkah ini sebelum benar-benar memperbarui Cassandra kredensial:

  1. Pada node Management Server, jalankan perintah berikut:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u cassandra_username -p cassandra_password

    Secara opsional, Anda dapat meneruskan file yang berisi nama pengguna dan sandi baru ke perintah:

    apigee-service edge-management-server store_cassandra_credentials  -f configFile

    dengan configFile berisi hal berikut:

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

    Perintah ini otomatis memulai ulang Server Pengelolaan.

  2. Ulangi langkah 1 untuk setiap layanan berikut:
    • Semua Pemroses Pesan
    • Semua Router
    • Semua server Qpid (edge-qpid-server)
    • Server postgres (server-edge-postgres)

    Saat Anda mengulangi langkah 1 untuk setiap layanan, ganti edge-management-server pada perintah di atas dengan nama layanan yang sesuai. Misalnya, saat Anda menjalankan langkah untuk layanan Router, gunakan perintah berikut:

    /opt/apigee/apigee-service/bin/apigee-service edge-router store_cassandra_credentials -u cassandra -p cassandra

    Aktifkan autentikasi Cassandra setelah penginstalan

    Bagian berikut menjelaskan cara mengaktifkan autentikasi Cassandra setelah penginstalan.

    Mengaktifkan autentikasi Cassandra di satu penyiapan pusat data

    Untuk satu penyiapan Apigee berbasis pusat data yang sudah menginstal Cassandra, Anda dapat:

    Catatan: 'Cassandra' adalah pengguna khusus di Cassandra. Otentikasi menggunakan pengguna memerlukan konsistensi QUORUM. Lihat Tentang tingkat konsistensi Cassandra.

    Aktifkan autentikasi Cassandra saat ada beberapa pusat data

    Saat memperluas pusat data, ikuti langkah-langkah dalam salah satu skenario berikut, tergantung yang sesuai dengan konfigurasi Anda.

    Skenario 1: Pusat data yang ada mengaktifkan autentikasi Cassandra

    Jika autentikasi Cassandra sudah diaktifkan di pusat data yang ada dengan setelan default cassandra:cassandra kredensial, ikuti langkah-langkah di bawah:

    1. Menyiapkan pusat data baru dengan Cassandra default:kredensial Cassandra & CASS_AUTH=y. Lihat Mengaktifkan autentikasi Cassandra untuk pertama kalinya.
    2. Menginstal Edge di pusat data baru menggunakan kredensial Cassandra default.

    Jika autentikasi Cassandra sudah diaktifkan di pusat data yang ada dengan kredensial non-default, ikuti langkah-langkah berikut:

    1. Siapkan pusat data baru dengan kredensial Cassandra:Cassandra default & CASS_AUTH=y. Lihat Mengaktifkan autentikasi Cassandra untuk pertama kalinya.
    2. Ikuti langkah-langkahnya Aktifkan autentikasi Cassandra untuk pertama kalinya untuk menggunakan kembali kredensial dari data pusat yang ada (jika yang ada menggunakan kredensial non-default).
    3. Menginstal Edge di pusat data baru menggunakan kredensial Cassandra non-default.

    Skenario 2: Pusat data yang ada tidak mengaktifkan autentikasi Cassandra

    Jika autentikasi cassandra tidak diaktifkan, lakukan langkah-langkah berikut:

    1. Siapkan pusat data baru tanpa autentikasi Cassandra.
    2. Ikuti langkah-langkahnya Mengaktifkan autentikasi Cassandra untuk pertama kalinya untuk mengaktifkan autentikasi Cassandra di seluruh cluster (pasca-perluasan).
    3. Mengupdate komponen Edge yang terhubung ke Cassandra dengan mengikuti langkah-langkah di sini.

    Mengaktifkan autentikasi Cassandra untuk pertama kalinya

    Gunakan prosedur berikut untuk mengaktifkan otentikasi {i>Cassandra <i}untuk pertama kalinya, atau untuk membuat nama pengguna dan sandi Cassandra baru:

    1. Buat file konfigurasi senyap dengan konten yang ditampilkan di bawah:
      # 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. Login ke node Cassandra pertama dan jalankan perintah berikut:
      apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG

      Secara opsional, Anda dapat meneruskan properti sebagai argumen perintah ke skrip, seperti yang ditunjukkan dalam contoh berikut:

      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

      Catatan:

      • Untuk kredensial Cassandra {i>default<i}, perintah di atas memungkinkan otentikasi Cassandra dan memulai ulang Cassandra.
      • Untuk kredensial non-default, perintah itu juga mengubah faktor replikasi, {i>superuser<i}, dan menjalankan perbaikan pada keyspace {i>system_auth<i}.
    3. Ulangi langkah 1 dan 2 pada semua node Cassandra satu per satu.

    Mengubah kredensial Cassandra setelah menginstal Cassandra

    Untuk mengubah kredensial Cassandra setelah menginstal Cassandra:

    1. Login ke salah satu node Cassandra menggunakan alat cqlsh dan setelan default memiliki kredensial yang lengkap. Anda hanya perlu mengubah sandi di satu {i>node<i} dan {i>node<i} akan disiarkan ke semua Node Cassandra di dalam cincin:
      /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

      Dengan keterangan:

      1. cassIP adalah alamat IP node Cassandra.
      2. 9042 adalah port Cassandra default.
      3. Pengguna default adalah cassandra.
      4. Sandi default-nya adalah cassandra. Jika Anda mengubah sandi sebelumnya, gunakan {i> password<i} saat ini. Jika {i>password<i} berisi karakter khusus, menggabungkannya dalam tanda kutip tunggal.
    2. Jalankan perintah berikut pada prompt cqlsh> untuk memperbarui sandi:
      ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
    3. Keluar dari alat cqlsh, seperti yang ditunjukkan contoh berikut:
      exit
    4. Jika belum menginstal Server Pengelolaan, Pemroses Pesan, Router, server Qpid, atau server Postgres, menetapkan properti berikut dalam file konfigurasi, lalu instal komponen tersebut:
      CASS_USERNAME=cassandra
      CASS_PASSWORD=NEW_PASSWORD
    5. Jika Anda telah menginstal Server Pengelolaan, Prosesor, Router, server Qpid, atau server Postgres, kemudian lihat Mereset Sandi Edge untuk mengetahui prosedur cara memperbaruinya untuk menggunakan {i>password<i} baru.