Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Penyembunyian Data dalam Aplikasi DB

Melindungi Data saat Diam dan Bergerak

Aplikasi database yang memperbarui dan tabel kueri mungkin perlu mengamankan data yang masuk ke, atau diambil dari, tabel tersebut. Data sensitif harus dilindungi saat masuk ke tabel, sekali di tabel, atau saat keluar. Dalam setiap kasus, tujuannya adalah untuk mencegah orang yang tidak berwenang mengakses baris atau nilai kolom tertentu yang dianggap sensitif.

Untuk data bentuk normal (terstruktur) dalam database relasional, utilitas penyembunyian data mandiri IRI FieldShield, atau pustaka yang kompatibel dari fungsi penyembunyian yang dapat dipanggil, dapat mengakomodasi skenario di atas, menyediakan banyak opsi untuk statis (persisten, saat istirahat) dan dinamis (dalam -transit) opsi penyembunyian data. Jika Anda juga memiliki nilai PII/PHI yang mengambang secara acak dalam kolom RDB semi dan tidak terstruktur (seperti teks, C/BLOB, XML/JSON), lihat artikel ini tentang pendekatan IRI DarkShield.

Artikel ini akan membahas opsi FieldShield, karena sebagian besar pengguna RDB prihatin dengan menemukan dan menutupi nilai kolom tetap. Pengguna FieldShield dapat mengklasifikasikan, menemukan, dan menyembunyikan data dalam tabel DB, dan untuk pengguna aplikasi, dijalankan melalui:

  • penyembunyian data statis pada tabel produksi, dan penyembunyian dinamis oleh pengguna aplikasi resmi
  • fungsi penyamaran yang disematkan dalam tugas transformasi, pembersihan, atau pelaporan yang kompatibel dengan metadata
  • sistem redaksi data dinamis berbasis proxy
  • melalui SDK API, atau sistem, panggilan dari program
  • in-situ, melalui prosedur SQL menggunakan perpustakaan khusus

Jika data Anda berada di database NoSQL seperti MongoDB, Cassandra, Elasticsearch, atau MarkLogic, FieldShield akan menangani koleksi terstruktur, sedangkan DarkShield akan menangani koleksi terstruktur dan tidak terstruktur.

Secara default — dan cara IRI Workbench GUI menyajikan FieldShield kepada pengguna akhir dan DBA — satu atau beberapa tabel lengkap biasanya diamankan dengan fungsi penyembunyian data statis (seperti enkripsi, redaksi, nama samaran) sesuai dengan aturan bisnis. Pilihan setiap 'perisai bidang (kolom)' harus didasarkan pada keamanan, realisme, reversibilitas, dan mungkin pertimbangan CPU atau penyimpanan.

Pendekatan statis berfungsi dengan baik saat data dalam keadaan diam. Tabel sumber dapat diproteksi, atau tabel atau file target baru dengan perlindungan yang diterapkan dapat dibuat. Aplikasi yang mengambil data yang dilindungi tidak perlu khawatir tentang keamanan karena sumber datanya sudah dilindungi sebelumnya. Program FieldShield yang dirancang untuk melindungi data saat istirahat juga dapat dijadwalkan atau dipanggil ke tugas batch untuk pembaruan rutin.

Namun, dalam lingkungan waktu nyata di mana baris yang diperbarui memerlukan perlindungan dinamis, fungsi FieldShield harus diintegrasikan ke dalam aliran data aplikasi. Ada beberapa pendekatan untuk dipertimbangkan:

1) Program Anda Memanggil FieldShield
Database dan program lain yang mengambil dari, atau mengirim data baru atau yang diubah ke dalam, tabel dapat meneruskannya ke dalam fungsi enkripsi, hashing, encoding, atau redaksi FieldShield di C, Java, atau .NET. Anda juga dapat meneruskan data bergerak ke program FieldShield mandiri melalui pipa atau prosedur masukan. Salah satu metode ini dapat mengisi target dengan fungsi perlindungan (atau pengungkapan) tingkat kolom yang diterapkan.

2) FieldShield Hanya Melindungi Pembaruan
Program FieldShield juga dapat dikustomisasi melalui fungsi /QUERY dan /UPDATE, atau untuk memfilter hanya record baru secara kondisional, di mana baris yang akan dilindungi memenuhi kriteria tertentu, seperti kebaruan. Panggilan API akan memungkinkan logika bisnis yang lebih terperinci dan memfasilitasi lebih banyak kondisi 'kecepatan' (atau latensi) data — misalnya, penyembunyian data yang lebih real-time — karena kebutuhan tersebut dapat diungkapkan melalui aplikasi dan ditentukan oleh logikanya. Lihat contoh PL/SQL ini penyembunyian real-time berdasarkan pemicu.

3) Tangkap dan Lindungi Delta di CoSort (FieldShield Parent)
Tugas Change data capture (CDC) juga dapat diprogram dalam Sort's Sort Control Language (SortCL), di mana hanya sisipan, pembaruan, penghapusan, atau baris yang tidak diubah yang dapat diteruskan ke tabel atau file dengan perlindungan kolom yang diterapkan saat hal ini terjadi. Pengguna CoSort memiliki semua fungsi perlindungan FieldShield yang mereka miliki, jadi ada kemungkinan hanya menutupi data yang diubah dalam paradigma pelaporan massal ini.

4) Query Intercepts berbasis proxy
IRI sekarang menyediakan driver "JDBC SQL Trail" khusus untuk aplikasi yang digunakan yang memfilter kueri DB untuk pengguna yang berwenang serta tabel dan kolom tertentu. Mereka yang tidak dikecualikan untuk definisi kebijakan DDM hanya akan melihat nilai yang dihapus sepenuhnya atau sebagian dalam penerbangan ke aplikasi yang terhubung secara khusus dari database, yang tetap terbuka saat istirahat.

5) Integrasi Khusus
IRI dapat bekerja dengan DBA atau pemrogram aplikasi Anda untuk merancang solusi dipesan lebih dahulu yang melibatkan elemen-elemen di atas, atau untuk menyediakan pustaka FieldShield, prosedur SQL Anda dapat memanggil in-situ seperti ini untuk melindungi atau mengungkapkan (mengenkripsi atau mendekripsi) kueri hasil, tabel kueri, tampilan terwujud, dan sebagainya.

Hubungi untuk mendapatkan bantuan dalam mengintegrasikan fungsi penyamaran data dinamis seperti redaksi atau enkripsi yang mempertahankan format ke dalam aplikasi Anda.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Memangkas String di SQL

  2. Menggabungkan File Data dengan Statistica, Bagian 2

  3. Cara menghapus data dari Elastisearch

  4. Menghitung Median dengan Kursor Dinamis

  5. Baris Sasaran, Bagian 4:Pola Anti Gabung Anti