Fitur SQL Correct merupakan titik masuk untuk mengeksekusi perubahan SQL dan memerlukan tingkat keamanan yang tinggi. Saat Anda mengajukan tiket untuk persetujuan, serangkaian aturan keamanan akan memverifikasi permintaan tersebut. Hanya pernyataan SQL yang lolos verifikasi ini yang dapat dieksekusi.
Prasyarat
Anda adalah Administrator, DBA, atau Security Administrator.
Informasi latar belakang
Aturan keamanan di Data Management (DMS) menyediakan kemampuan bahasa domain-spesifik (DSL) yang fleksibel, memungkinkan Anda menyesuaikan tingkat risiko sesuai kebutuhan dan menerapkan alur kerja persetujuan berbeda untuk perubahan dengan tingkat risiko yang berbeda. Misalnya, Anda dapat membatasi eksekusi SQL secara ketat atau mengizinkan semua pernyataan SQL secara longgar.
Checkpoint modul SQL Correct
Checkpoint | Deskripsi | Contoh |
Basic Configuration Item | Bagian ini berisi lima aturan default:
| - |
SQL execution rules | Membatasi pernyataan SQL yang dapat dieksekusi di jendela SQL. Hanya pernyataan SQL yang diizinkan yang dapat dieksekusi. Catatan Jika dua aturan yang saling bertentangan diaktifkan, aturan yang lebih ketat akan diberlakukan. Misalnya, jika kedua aturan berikut diaktifkan bersamaan, sistem akan memberlakukan aturan kedua.
| Untuk hanya mengizinkan pernyataan DML memodifikasi database produk online, tambahkan aturan eksekusi SQL berikut: Asumsi Makna: Jika lingkungan database bukan lingkungan produksi dan pernyataan SQL bertipe |
Risk Identification Rules | Mengidentifikasi tingkat risiko tiket yang diajukan. Anda dapat menyesuaikan tingkat risiko berdasarkan kondisi seperti lingkungan database, jumlah baris yang terpengaruh, dan tipe SQL. Catatan Aturan keamanan berbeda menandai tugas perubahan dengan tingkat risiko berbeda. Tingkat risiko akhir adalah tingkat tertinggi di antara semua tingkat yang ditandai. Misalnya, tugas perubahan SQL yang memiliki 5 risiko rendah, 3 risiko menengah, dan 1 risiko tinggi diklasifikasikan sebagai risiko tinggi. | Untuk menetapkan lingkungan offline sebagai risiko rendah, tambahkan aturan identifikasi risiko berikut: Makna: Jika lingkungan database bukan lingkungan produksi, tingkat risikonya rendah. |
Risk Approval Rules | Konfigurasikan atau sesuaikan aturan persetujuan untuk tingkat risiko berbeda. Jika perubahan database tidak mencocokkan tingkat risiko apa pun pada checkpoint Risk Identification Rules, maka alur kerja persetujuan yang digunakan adalah yang ditentukan oleh Default approval template for data changes di bagian Basic Configuration Item. | Secara default, lingkungan staging dianggap berisiko rendah dan tidak memerlukan persetujuan. |
Batch data import rules | Aturan validasi yang berlaku untuk tiket Data Import. | Mengizinkan impor batch pernyataan insert. |
Ubah templat persetujuan default
Masuk ke DMS 5.0.
-
Arahkan penunjuk ke ikon
di pojok kiri atas dan pilih . CatatanJika Anda menggunakan konsol DMS dalam mode normal, pilih di bilah navigasi atas.
Pada tab Security Rules, temukan set aturan target dan klik Edit di kolom Actions.
Di bilah navigasi kiri pada halaman Details, klik SQL Correct.
Di bagian Checkpoints, klik Basic Configuration Item.
Pada baris Data change default approval Template, klik Edit di kolom Actions.
Di kotak dialog Change Configuration Item, klik Switch Approval Template.
Di kotak dialog Switch Approval Template, temukan templat target dan klik Select di kolom Actions.
CatatanJika tiket tidak memerlukan persetujuan, Anda dapat mengklik Reset to Approval-Free untuk melewati langkah persetujuan.
Klik Submit.
Faktor dan aksi untuk modul SQL Correct
Faktor
Faktor adalah variabel sistem bawaan yang dapat digunakan untuk memperoleh informasi konteks guna verifikasi aturan keamanan, seperti tipe SQL dan jumlah baris yang terpengaruh.
Semua faktor diawali dengan
@fac.diikuti nama faktor.Checkpoint berbeda di setiap modul menyediakan faktor berbeda.
Tabel 1. Daftar faktor
Faktor | Deskripsi |
@fac.env_type | Tipe lingkungan. Nilainya adalah pengenal lingkungan, seperti |
@fac.sql_type | Tipe skrip SQL, seperti |
@fac.detail_type | Tipe perubahan data:
|
@fac.is_logic | Menunjukkan apakah database merupakan database logis. |
@fac.extra_info | Informasi perubahan lainnya. Faktor ini tidak sedang digunakan. |
@fac.is_ignore_affect_rows | Menunjukkan apakah akan melewati pemeriksaan. |
@fac.insert_rows | Jumlah baris yang terpengaruh untuk operasi insert. |
@fac.update_delete_rows | Jumlah baris yang terpengaruh. |
@fac.max_alter_table_size | Ukuran ruang tabel maksimum dari tabel yang dimodifikasi. |
@fac.is_has_security_column | Menunjukkan apakah skrip SQL berisi kolom sensitif. |
@fac.security_column_list | Daftar kolom sensitif yang terdapat dalam skrip SQL. |
@fac.risk_level | Tingkat risiko yang terdeteksi. Nilai yang valid adalah string bahasa Inggris huruf kecil, diurutkan dari terendah ke tertinggi:
|
@fac.risk_reason | Alasan mengapa tingkat risiko ini terdeteksi. |
@fac.table_name_list | Daftar nama tabel yang terlibat dalam perubahan SQL. Contoh: Makna: Jika perubahan SQL melibatkan tabel tb_order atau tb1_order, tingkat risikonya tinggi. |
Aksi
Aksi adalah perilaku yang dilakukan sistem saat kondisi if terpenuhi, seperti melarang pengajuan tiket, memilih alur kerja, mengizinkan eksekusi, atau menolak eksekusi.
Semua aksi diawali dengan
@act.diikuti nama aksi.Checkpoint berbeda di setiap modul menyediakan aksi berbeda.
Tabel 2. Daftar aksi
Tindakan | Deskripsi |
@act.allow_submit | Mengizinkan tiket diajukan untuk eksekusi. |
@act.allow_execute_direct | Mengizinkan eksekusi langsung di konsol SQL. |
@act.forbid_execute | Melarang eksekusi. |
@act.mark_risk | Menandai risiko. Parameter pertama menentukan tingkat risiko dan hanya mendukung empat nilai huruf kecil berikut (dari terendah ke tertinggi): |
@act.do_not_approve | Menentukan ID templat persetujuan. Untuk informasi selengkapnya, lihat Set approval workflows. |
@act.choose_approve_template | |
@act.choose_approve_template_with_reason |