MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Menutupi PII di MongoDB, Cassandra, dan Elasticsearch dengan DarkShield:…

Artikel ini menunjukkan penggunaan IRI DarkShield untuk mengidentifikasi dan memulihkan (menyamarkan) informasi pengenal pribadi (PII) dan data sensitif lainnya di database MongoDB, Cassandra, dan Elasticsearch. Meskipun langkah-langkah ini terutama berfokus pada menemukan dan melindungi data dalam koleksi MongoDB, langkah yang sama juga dapat digunakan untuk data dalam tabel Cassandra. Lihat artikel ini di Elasticsearch juga.

Perhatikan bahwa artikel ini mewakili metode keempat yang didukung IRI untuk menutupi data di MongoDB, dan metode kedua untuk Cassandra. Metode sebelumnya dan masih didukung tersebut mengandalkan penemuan data terstruktur dan de-identifikasi melalui IRI FieldShield, sedangkan metode DarkShield mendukung data tekstual dalam koleksi terstruktur atau tidak terstruktur. Meskipun DarkShield dan FieldShield adalah produk penyamaran data IRI yang berdiri sendiri, keduanya disertakan dalam platform pengelolaan data IRI Voracity.

Pendekatan terbaru menggunakan beberapa elemen Klasifikasi Data , paradigma katalogisasi data terintegrasi untuk menentukan metode pencarian yang digunakan untuk menemukan PII secara independen dari sumber data. Meskipun artikel ini memberikan sedikit pengantar tentang Klasifikasi Data selama Langkah 1, Anda mungkin perlu membaca tentang bagaimana Klasifikasi Data cocok dengan pendekatan terpadu kami untuk melakukan pencarian. Untuk informasi lebih lanjut tentang Klasifikasi Data di front end IRI Workbench untuk DarkShield dkk, silakan baca artikel ini sebelum melanjutkan.

Identifikasi dan remediasi PII menggunakan IRI DarkShield melibatkan 4 langkah umum:

(Opsional) Langkah – Daftarkan Sumber Data Anda

Pada langkah (opsional) ini, sumber data untuk database Mongo, keyspace Cassandra, atau cluster Elasticsearch didaftarkan. Ini memungkinkan sumber data dapat digunakan kembali. Akibatnya, langkah ini opsional jika sumber data yang diinginkan sudah ada di registri, atau jika Anda berencana untuk menentukannya dari wizard.

Langkah 1 – Tentukan Parameter Pencarian

Di sini semua aspek pencarian dipilih. Pertama, kumpulan/tabel sumber dan target diatur berdasarkan koneksi data yang ditentukan dalam registri atau dibuat di wizard. Kemudian, Anda dapat menentukan kriteria pencarian dan remediasi untuk data Anda menggunakan Search Matchers, jenis informasi yang harus dicari dan bagaimana informasi tersebut harus diperbaiki. Hasil dari langkah ini adalah .pencarian berkas.

Langkah 2 – Lakukan Penelusuran

Pencarian dapat dijalankan dari .search mengajukan. Hasilnya adalah .darkdata file yang memberi anotasi pada PII yang teridentifikasi.

Langkah 3 – Remediasi (Penutupan)

Perbaikan dapat dilakukan dari .darkdata mengajukan. Setiap PII yang teridentifikasi akan diperbaiki dengan cara yang ditentukan selama pembuatan penelusuran.

(Opsional) Langkah – Daftarkan Sumber Data Anda

Sebagai langkah prasyarat, Anda harus mendaftarkan koneksi ke sumber data online (dan target) Anda di URL Connection Registry, yang terletak di Preferences> IRI> URL Connection Registry dialog di Meja Kerja IRI.

Semua Koneksi URL, termasuk string koneksi URI untuk MongoDB, Cassandra, dan Elasticsearch dapat disimpan. Hal ini memungkinkan URL, kredensial autentikasi, dan parameter tambahan apa pun disimpan dan disimpan oleh IRI Workbench untuk penggunaan di masa mendatang.

Langkah 1 – Tentukan Parameter Pencarian (Buat File .Search)

Di IRI Workbench IDE untuk DarkShield, Pilih Pekerjaan Penemuan Database Baru dari Menu DarkShield. Pilih folder proyek dan masukkan nama pekerjaan:

Menentukan Sumber dan Target

Setiap Mongo, Cassandra, atau ElasticsearchURL yang sebelumnya dibuat dan disimpan dalam registri dapat diakses dari URI dropdown untuk pemilih Sumber dan Target. Nama koleksi MongoDB yang sesuai, tabel Cassandra, atau indeks Elasticsearch juga harus dimasukkan:

URI baru juga dapat dibuat dengan menekan tombol New tombol. Ini akan membuka dialog Detail Koneksi URL. Masukkan nama untuk koneksi, pilih skema yang diinginkan, masukkan host, dan masukkan database. Jika tidak ada port, port default untuk skema akan diasumsikan.

Nama pengguna dan kata sandi juga dapat diberikan jika database memerlukan otorisasi. Setiap koneksi URL baru akan disimpan di URL Connection Registry, dan dapat digunakan kembali sebagai target.

Setelah sumber ditentukan, Anda dapat melanjutkan ke halaman berikutnya untuk memilih atau membuat URI target. Skema URI target akan dibatasi pada URI sumber yang dipilih, sehingga sumber MongoDB hanya dapat dikirim ke target MongoDB lain, dan juga untuk Cassandra atau Elasticsearch.

Saat pekerjaan penyamaran dijalankan, semua baris di sumber akan ditambahkan ke target, dan setiap baris dengan kunci yang cocok akan ditimpa. Untuk Cassandra, pastikan skema tabel target kompatibel dengan data dari tabel sumber.

Menambahkan Pencocokan Penelusuran

Setelah sumber dan target ditentukan, Anda dapat membuka halaman berikutnya untuk menambahkan pencocokan pencarian. Pilih lokasi perpustakaan yang berisi perpustakaan Pola atau Aturan yang ingin Anda gunakan dan klik Tambah untuk menambahkan Pencocokan Penelusuran baru.

KeyNameMatcher

Pencocokan Pencarian pertama yang akan kita buat akan digunakan untuk mencocokkan seluruh nilai yang sesuai dengan kunci "nama" apa pun yang terletak di struktur json bersarang sewenang-wenang dan menerapkan algoritma Enkripsi Pelestarian Format untuk menutupinya. Kita dapat mencapai ini dengan membuat filter jalur JSON “$..name”. Informasi lebih lanjut tentang jalur JSON dapat ditemukan di sini.

Karena koleksi MongoDB, tabel Cassandra, dan indeks Elasticsearch diuraikan oleh DarkShield sebagai dokumen json, filter dapat diterapkan ke keduanya untuk menutupi nilai apa pun yang terkait dengan kunci "nama" apa pun.

Untuk mencocokkan isi data yang difilter, kita perlu membuat Kelas Data new baru . Kelas Data mewakili PII dan pencocokan terkait yang digunakan untuk mengidentifikasinya. Pencocokan ini dapat mencakup kombinasi apa pun dari:

  • Pola Ekspresi Reguler
  • Menyetel pencarian kamus file
  • Model Pengenalan Entitas Bernama
  • Bounding Box Matcher (hanya gambar)
  • Pengenalan Wajah (hanya gambar)

Anda dapat menentukan Kelas Data dalam wizard atau dengan membuka Kelas dan Grup Data halaman di Preferensi IRI . Kelas Data yang ditentukan dalam preferensi dapat digunakan di FieldShield dan DarkShield untuk sumber data lain, termasuk data terstruktur dan tidak terstruktur.

Kita dapat membuat SEGALA . yang terkait Kelas Data untuk pencocokan ini yang akan cocok dengan seluruh isi nilai, karena kami cukup yakin bahwa semua yang akan kami temukan dalam nilai adalah nama. Anda dapat menggunakan pencarian file set yang berisi kamus nama jika Anda tidak yakin dengan isi kunci "nama" Anda atau jika Anda hanya ingin menutupi sebagian nama.

Untuk Nama Aturan field KeyNameMatcher, kita bisa memilih Data Rule yang sudah ada dari lokasi library yang telah kita pilih, atau membuat rule baru yang menggunakan Format Preserving Encryption (FPE), misalnya:

Untuk membuat aturan FPE, klik Buat di sebelah Nama Aturan bidang, pilih Fungsi Enkripsi atau Dekripsi dari Data Rule Wizard yang muncul:

Tentukan frasa sandi yang sesuai untuk digunakan sebagai kunci enkripsi/dekripsi Anda, yang dapat berupa string eksplisit, variabel lingkungan, atau nama file aman yang berisi string tersebut.

EmailsMatcher

Setelah menyelesaikan dialog sebelumnya dan membuat KeyNameMatcher baru, kita dapat menambahkan Search Matcher lain untuk alamat email. Cukup klik Tambahkan untuk membuat Search Matcher lain untuk ditambahkan ke daftar.

Meja Kerja IRI sudah dimuat sebelumnya dengan EMAIL Kelas Data yang dapat dipilih dengan mengklik Jelajahi di sebelah Nama Kelas Data dan pilih EMAIL dari menu tarik-turun.

Untuk Aturan Data, Anda dapat memilih aturan FPE yang telah Anda buat untuk Pencocokan Penelusuran sebelumnya dengan mengklik Jelajahi di sebelah Nama Aturan bidang, atau buat yang baru dengan salah satu dari beberapa fungsi penyembunyian yang tersedia. Saya membuat fungsi Redaksi Data sederhana yang menggantikan seluruh email dengan tanda bintang.

Search Matcher Anda sekarang dapat ditambahkan ke daftar dengan mengklik OK.

NamesMatcher

Pencocokan Pencarian terakhir kami akan digunakan untuk menemukan nama dalam teks yang mengalir bebas. Untuk ini, kita akan menggunakan Named Entity Recognition (NER) untuk menemukan nama menggunakan konteks kalimat. Untuk memulai, kita perlu mengklik Tambahkan untuk membuat Search Matcher baru, dan membuat Kelas Data baru bernama NAMES_NER:

Untuk membuat NAMES_NER Kelas Data, pertama-tama kita perlu mengunduh model Pencari Nama Orang, en-ner-person.bin , dari repositori sourceforge OpenNLP. Kemudian, klik Tambahkan untuk menambahkan matcher baru, pilih NER Model dari tarik-turun. Klik Jelajahi dan arahkan ke lokasi model yang diunduh; misalnya:

Setelah Anda membuat Kelas Data baru, klik OK dan pilih Aturan Data FPE yang Anda tentukan sebelumnya untuk menyelesaikan pembuatan Search Matcher:

Perhatikan bahwa NamesMatcher . kami dan KeyNameMatcher mungkin memiliki kecocokan yang tumpang tindih. Jika ini terjadi, DarkShield memilih kecocokan terpanjang yang tersedia dan menghapus kecocokan yang tumpang tindih lainnya. Dengan begitu, Anda tidak perlu khawatir tentang DarkShield yang menerapkan fungsi masking pada nilai yang sudah di-mask.

Setelah Anda menambahkan semua pencocokan yang diinginkan, klik selesai untuk menghasilkan .search berkas.

.search . yang dihasilkan file dapat diperiksa untuk menunjukkan detail tentang pencarian. Ini termasuk URI sumber dan target, serta informasi tentang semua pencocokan.

Langkah 2 – Lakukan Pencarian (Buat .Darkdata Berkas)

Menyelesaikan Pekerjaan Penemuan Data Gelap wizard menghasilkan .pencarian . baru berkas konfigurasi. File tersebut berisi opsi yang kami pilih, termasuk sumber dan target data kami, dan Search Matchers yang akan digunakan untuk menandai PII untuk penemuan, pengiriman, penghapusan, dan/atau de-identifikasi.

Untuk memulai pencarian, klik kanan pada .search file, pilih Jalankan Sebagai, dan pilih salah satu Pekerjaan Pencarian IRI atau IRI Mencari dan Memperbaiki Pekerjaan .

Telusuri hanya akan melakukan pencarian, sementara Cari dan Remediasi juga akan mencoba untuk menutupi (atau menghapus) data yang teridentifikasi. Keduanya akan menghasilkan .darkdata file yang mengidentifikasi data apa pun yang menarik.

Sumber yang saya gunakan diisi dengan nilai yang dibuat secara acak, jadi tidak ada salahnya membagikan .darkdata yang dihasilkan berkas di sini. Namun, saat menangani informasi yang sebenarnya sensitif, pengguna harus memastikan .darkdata file tidak diekspos dan diarsipkan atau dihapus dengan aman setelah penyelesaian perbaikan untuk mencegah kebocoran PII. IRI akan menambahkan opsi karantina untuk menyimpan .darkdata file dan artefak pencarian yang sesuai di lokasi yang aman; hubungi [email protected] untuk detail tentang fitur yang direncanakan ini.

Langkah 3 – Remediasi (Penutupan)

Sekali lagi, penyembunyian atau penghapusan data dapat dilakukan selama operasi Penelusuran melalui Penelusuran dan Pemulihan di wizard Penemuan Data Gelap. Namun, jika Anda hanya ingin memeriksa informasi yang teridentifikasi dan memulihkannya nanti, jalankan tugas penyamaran dari .darkdata file yang dihasilkan dalam Penelusuran (Langkah 2) dengan cara ini: 

Klik kanan pada .darkdata file, arahkan mouse ke Run As , dan klik IRI Remediate Job . Setelah pekerjaan berjalan, data yang diperbaiki akan muncul di database target.

Berikut adalah contoh yang menunjukkan sebelum dan sesudah kumpulan database MongoDB kecil menggunakan prompt perintah Workbench untuk mengakses server Mongo lokal:

kesimpulan

Dalam artikel ini kami mendemonstrasikan kemampuan IRI baru untuk mengakses data tidak terstruktur di database Mongo, ruang kunci Cassandra, dan Cluster Elasticsearch menggunakan beberapa Search Matcher di IRI DarkShield. Anda dapat memeriksa .darkdata . yang dihasilkan model untuk melihat hasil pencarian yang ditemukan dan diperbaiki, dan periksa database Anda untuk melihat tabel/koleksi yang diperbarui.

  1. Jika PII disematkan dalam objek biner dalam koleksi MongoDB, Cassandra, Elasticsearch Anda, kami dapat membantu mengotomatiskan ekstraksinya ke file mandiri untuk operasi pencarian/mask DarkShield, dan impor ulangnya.
  2. IRI Workbench IDE, dibangun di atas Eclipse™,  front-end semua FieldShield, DarkShield, dan penyembunyian data terkait — dan kemampuan penanganan data yang lebih luas — di platform IRI Voracity.
  3. Registri Koneksi URL digunakan untuk mengonfigurasi dan menyimpan sumber data berbasis URL yang digunakan dalam operasi pencarian/mask DarkShield dan CoSort/SortCL (Voracity) ETL; misalnya, HDFS, Kafka, ember S3, MongoDB, S/FTP. Registri ini serupa, tetapi tidak identik, dengan registri Koneksi Data di IRI Workbench untuk sumber database relasional di mana DSN ODBC dijembatani ke profil koneksi JDBC yang sesuai untuk kepentingan wizard pekerjaan yang memanfaatkan kedua koneksi.
  4. Pencocokan Penelusuran adalah asosiasi antara Kelas Data , yang digunakan untuk menentukan metode pencarian untuk menemukan dan mengklasifikasikan PII, dan Aturan Data yang akan diterapkan ke setiap instance Kelas Data yang ditemukan dalam koleksi atau tabel. Selain itu, Search Matchers memungkinkan Anda menentukan filter yang dapat digunakan untuk mengurangi cakupan pencarian. Ini sangat berguna dalam koleksi Mongo, tabel Cassandra, dan indeks Elasticsearch karena nama kunci dapat menunjukkan PII yang disimpan dalam nilai yang sesuai.

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana meningkatkan kinerja sisipan MongoDB

  2. Temukan semua dokumen duplikat dalam koleksi MongoDB dengan bidang kunci

  3. Agregasi MongoDB di Loopback

  4. Cara mengizinkan semua host ke set replika di mongodb

  5. Memuat sebagian gagal di server JS