News & Events

Bagaimana Menjauhkan Para Peretas dari "Data" Anda dengan Cassandra Rbac?

Published on November 27, 2020

Penyimpanan data selalu menjadi poin utama dalam database. Kehilangan data atau kecolongan data bisa jadi sangat merugikan bagi pihak terkait karena data yang disimpan bisa jadi merupakan data penting seperti alamat dan nomor rekening.

Bagaimana Menjauhkan Para Peretas dari "Data" Anda dengan Cassandra Rbac?

"Hacker" biasanya menggunakan celah untuk memebus keamanan dan mendapatkan data yang tersimpan didalamnya. Datastax menawarkan strategi agar data tetap aman yaitu dengan menggunakan Cassandra Role-Based Access Control (RBAC).

Dengan beberapa strategi yang sangat sederhana untuk diterapkan, kita semua dapat mengambil langkah-langkah dasar untuk menggunakan Cassandra RBAC agar data kita lebih aman. Pada contoh kali ini kami akan berasumsi bahwa kami berurusan dengan pengguna yang dikelola secara internal oleh Cassandra, dan tidak berasal dari sumber eksternal seperti Lightweight Directory Access Protocol (LDAP), tetapi prinsipnya sangat mirip.

1. Cassandra memiliki model yang membingungkan yang memperlakukan semua peran sebagai peran, dan semua pengguna sebagai peran.

Daripada memperlakukan pengguna dan peran sebagai tipe objek database yang berbeda, Cassandra menggunakan objek "peran" untuk merujuk ke peran sebagai kumpulan izin dan juga entitas yang masuk untuk menggunakan izin tersebut. Pengguna Anda adalah manusia, dan perangkat lunak yang melakukan login ke database. Peran Anda akan menjadi kumpulan izin database tertentu yang kemudian diberikan kepada pengguna. Kecuali Anda memiliki alasan yang sangat spesifik untuk melakukannya, hindari memberikan izin database secara langsung kepada pengguna. Untuk memperjelasnya, berikut ini contohnya:

BUAT PERAN alicethehuman dengan LOGIN = true;

BUAT PERAN HANYA;

GRANT SELECT, JELASKAN DI mykeyspace.mytable UNTUK HANYA BACA;

GRANT SELECT, JELASKAN di mykeyspace.myothertable UNTUK READONLY;

PEMBERIAN PERAN READONLY UNTUK alicethehuman;

Jadi, perhatikan dalam contoh di atas bahwa manusia kita dibedakan oleh fakta bahwa LOGIN = true diberikan padanya, lalu kita membuat peran yang diberi label dengan jelas, dan memberikan izin khusus untuk itu, lalu kita menetapkan peran tersebut ke alicetheuser. Yang harus kita hindari adalah pernyataan seperti ini:

GRANT SELECT ON mykeyspace.mytable TO alicethehuman; # Jangan lakukan ini

Mengikuti pola umum ini akan membuat perizinan database Anda jauh lebih dapat dipelihara karena individu yang membentuk organisasi datang dan pergi dan memiliki perubahan dalam tanggung jawab mereka.

2. Buat peran dasar untuk izin yang sangat umum seperti "hanya-baca" dan standarisasi pada mereka.

Ini adalah saran yang relatif mudah, tetapi sangat membantu untuk menambahkan kejelasan pada penyiapan otorisasi Anda. Contoh akan bervariasi tergantung pada peran dan tanggung jawab organisasi Anda, tetapi contoh tipikal adalah READONLY, READWRITE, & CREATOR. Ini juga dapat membantu untuk menyertakan prefiks atau sufiks untuk cakupan umum. Jika peran khusus untuk ruang kunci, awali nama peran dengan singkatan untuk nama ruang kunci. Demikian pula, jika peran khusus untuk tabel, sufiks nama peran dengan singkatan tabel. Ini hanyalah saran untuk Anda mulai, gunakan beberapa kreativitas di sini, tetapi dokumentasikan dan distandarisasi di seluruh tim database Anda.

3. Jangan berikan terlalu banyak peran pada peran

Akhirnya, ada baiknya untuk tidak menyusun skema Role-based access control (RBAC) Anda terlalu dalam. Mungkin sulit untuk melacak izin khusus yang disampaikan dengan terlalu banyak hierarki atau bersarang. Tetap sederhana. Sebagian besar, peran Anda harus hanya terdiri dari HIBAH untuk izin objek tertentu, dan pengguna harus diberikan peran tunggal atau sangat kecil. Hindari menetapkan "peran peran" kepada pengguna, dan demi kebaikan harap jangan memberikan pengguna kepada pengguna lain meskipun sistem akan mengizinkan Anda.

Sumber: Datastax

PT Strategic Partner Solution

  The Bellezza Shopping Arcade
    2nd Floor Unit SA15-16
    Jl. Arteri Permata Hijau, Kec. Kby. Lama
    DKI Jakarta 12210
  +62 812 8700 0879
  info@myspsolution.com

NETWORKING

Bandung

  Jl. Jend. Sudirman No. 757
    Bandung 40212
(62-22) 603 0590 (Hunting)
(62-22) 603 0967

Medan

  Kawasan Industri Medan Star
    Jl. Pelita Raya I Blok F No. 5
    Tanjung Morawa Km 19,2
    Deli Serdang 20362
  (62-61) 7940800
  (62-61) 7941990

Semarang

  Jl. Tambak Aji I / 6
    Komp. Industri Guna Mekar
    Semarang 50185
  (62-24) 866 3521
  (62-24) 866 3529

Surabaya

  Jl. Ngemplak No. 30
    Komplek Ambengan Plaza
    Blok B 35-37
    Surabaya 60272
  (62-31) 531 9635 (Hunting)
  (62-31) 531 9634

Lampung

  Perumahan Gunung Madu Plantation
    Jalan Pulau Morotai Blok B No. 1
    Kecamatan Sukarame - Tanjung Baru
    Bandar Lampung

Surakarta

  Jalan Melati No. 2,
    Kelurahan Purwosari
    Laweyan, Surakarta

Palembang

  Komplek Ilir Barat Permai
    Blok D.I. No. 31
    Kelurahan 24 Ilir, Palembang

Samarinda

  Jalan Ir. Sutami, Pergudangan Tahap II
    Blok S No.3B
    Karang Asam, Samarinda

Makassar

  Jalan Ir. Sutami,
    Komplek Pergudangan Parangloe Indah
    Blok C-II 3/6, Makassar

Pontianak

  Jalan Raya Wajok Hilir Km. 15,65
    Siantan, Pontianak