Mengaktifkan autentikasi Cassandra

Secara default, Cassandra menginstal tanpa mengaktifkan autentikasi. Itu berarti siapa pun dapat mengakses Cassandra. Anda dapat mengaktifkan autentikasi setelah menginstal Edge, atau sebagai bagian dari penginstalan {i>checkout<i}.

Anda dapat menambahkan, menghapus, dan mengubah pengguna menggunakan CREATE/ALTER/DROP USER Cassandra pernyataan pribadi Anda. Untuk mengetahui informasi selengkapnya, lihat Perintah shell SQL Cassandra.

Aktifkan autentikasi Cassandra selama penginstalan

Anda dapat mengaktifkan autentikasi Cassandra pada waktu penginstalan.

Untuk mengaktifkan autentikasi Cassandra pada waktu penginstalan, sertakan CASS_AUTH di file konfigurasi untuk semua node Cassandra:

CASS_AUTH=y # The default value is n.

Komponen Edge berikut mengakses Cassandra:

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

Saat menginstal komponen ini, Anda harus menetapkan nama pengguna dan sandi di file konfigurasi:

CASS_USERNAME=cassandra_username
CASS_PASSWORD=cassandra_password

Anda dapat mengubah kredensial Cassandra setelah menginstal Cassandra. Namun, jika Anda memiliki sudah menginstal Server Pengelolaan, Pemroses Pesan, Router, server Qpid, atau Postgres server, Anda juga harus memperbarui komponen tersebut agar dapat menggunakan kredensial baru.

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_username -p cassandra_password

    Dengan keterangan:

    1. cassIP adalah alamat IP node Cassandra.
    2. 9042 adalah port Cassandra default.
  2. Jalankan perintah berikut pada prompt cqlsh> untuk memperbarui sandi:
    ALTER USER cassandra_username/var> WITH PASSWORD 'new_cassandra_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_username
    CASS_PASSWORD=new_cassandra_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.

Aktifkan postingan autentikasi Cassandra penginstalan

Untuk mengaktifkan autentikasi setelah penginstalan:

Mengupdate komponen Edge yang terhubung ke Cassandra

Gunakan prosedur berikut untuk memperbarui semua komponen Edge yang berkomunikasi dengan Cassandra dengan kredensial baru. Perhatikan bahwa Anda 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 ke perintah yang berisi nama pengguna dan sandi baru:

    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 chars

    Perintah ini otomatis memulai ulang Server Pengelolaan.

  2. Untuk setiap layanan berikut, ulangi Langkah 1:
    • Semua Pemroses Pesan
    • Semua Router
    • Semua server Qpid (edge-qpid-server)
    • Server postgres (server-edge-postgres)

    Jika Anda mengulangi Langkah 1 untuk setiap layanan, ganti edge-management-server di di atas dengan nama layanan yang sesuai. Misalnya, ketika Anda mengeksekusi 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

Gunakan prosedur berikut untuk mengaktifkan otentikasi Cassandra dan menetapkan nama pengguna dan kata sandi:

  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_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. 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=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

    Catatan:

    • Untuk default Kredensial Cassandra, perintah di atas memungkinkan autentikasi Cassandra dan memulai ulang Cassandra.
    • Untuk kredensial non-default, perintah itu juga mengubah faktor replikasi, superuser, dan menjalankan perbaikan pada system_auth keyspace.
  3. Ulangi langkah 1 dan 2 pada semua node Cassandra.