全部产品
Search
文档中心

Data Management:SQL Correct

更新时间:Jun 28, 2025

Di Data Management (DMS), Anda dapat mengeksekusi pernyataan SQL untuk melakukan perubahan data. Namun, eksekusi pernyataan SQL ini memerlukan tingkat keamanan yang tinggi. DMS memungkinkan Anda mengonfigurasi aturan keamanan di tab SQL Correct untuk memvalidasi pengajuan dan persetujuan tiket perubahan data. Hanya pernyataan SQL yang divalidasi oleh aturan keamanan yang dapat dieksekusi.

Prasyarat

Anda harus menjadi DMS administrator, database administrator (DBA), atau security administrator.

Informasi latar belakang

DMS memungkinkan Anda menulis pernyataan bahasa domain-spesifik (DSL) untuk mendefinisikan aturan keamanan. Anda dapat menentukan tingkat risiko untuk perubahan data sesuai dengan kebutuhan bisnis Anda. Kemudian, Anda dapat menentukan proses persetujuan yang berbeda untuk tiket perubahan data berdasarkan tingkat risikonya. Sebagai contoh, Anda dapat menentukan proses persetujuan yang ketat untuk mengontrol eksekusi pernyataan SQL atau proses persetujuan yang lebih longgar untuk mengizinkan eksekusi semua pernyataan SQL.

Poin pemeriksaan yang disediakan di tab SQL Correct

Poin Pemeriksaan

Deskripsi

Contoh

Basic Configuration Item

Secara default, lima aturan berikut disediakan:

  • Data change default approval Template: Secara default, ID template persetujuan yang digunakan untuk tiket perubahan data adalah 853, dan pemberi persetujuan adalah DBA dari basis data terkait.

    Catatan

    Untuk informasi lebih lanjut tentang cara mengubah template persetujuan default, lihat bagian Ubah template persetujuan default dalam topik ini.

  • Data Change risk level list: Perubahan data dalam tiket dapat ditandai dengan tingkat risiko yang berbeda. Anda dapat menentukan tingkat risiko yang berbeda dan proses persetujuan untuk skenario yang berbeda. Daftar tingkat risiko ini terutama digunakan untuk membuat aturan untuk poin pemeriksaan Risk Identification Rules dan Risk Approval Rules.

    Secara default, empat tingkat risiko berikut didukung:

    • LOW: risiko rendah

    • MIDDLE: risiko sedang

    • HIGH: risiko tinggi

    • HIGHEST: risiko utama

  • Whether data import supports selecting speed mode: menentukan apakah data dapat diimpor dalam mode kecepatan ke dalam basis data. Untuk informasi lebih lanjut, lihat Impor data.

  • Skip Validation on Affected Rows for Regular Data Change: menentukan apakah akan melewati verifikasi jumlah baris yang terpengaruh dalam pra-pemeriksaan untuk tiket perubahan data. Jika Anda mengaktifkan aturan, verifikasi pada baris yang terpengaruh dapat dilewati. Jika Anda menonaktifkan aturan, verifikasi pada baris yang terpengaruh tidak dapat dilewati.

  • The Normal Data Modify ticket cannot be submitted if the specified number of affected rows is inconsistent with the result of the row count verification.: menentukan apakah akan mengajukan tiket perubahan data jika jumlah baris yang terpengaruh yang ditentukan tidak sesuai dengan hasil verifikasi hitungan baris. Jika Anda mengaktifkan aturan, tiket tidak dapat diajukan jika jumlah baris yang terpengaruh yang ditentukan tidak sesuai dengan hasil verifikasi hitungan baris. Jika Anda menonaktifkan aturan, tiket dapat diajukan jika jumlah baris yang terpengaruh yang ditentukan tidak sesuai dengan hasil verifikasi hitungan baris.

-

SQL execution rules

Aturan eksekusi SQL dapat digunakan untuk menentukan pernyataan SQL yang diizinkan untuk dieksekusi di modul SQL Console.

Catatan

Jika dua aturan yang bertentangan diaktifkan, aturan yang lebih ketat berlaku.

Sebagai contoh, jika dua aturan berikut diaktifkan, aturan kedua yang berlaku.

  • Semua DML dapat dieksekusi langsung di SQLConsole

  • Semua DML harus dieksekusi melalui tiket

Jika Anda ingin mengizinkan eksekusi pernyataan DML tertentu untuk mengubah data basis data dalam lingkungan online, Anda dapat membuat aturan eksekusi SQL berikut:

if
  @fac.env_type not in ['product']
  and
  @fac.sql_type in [ 'UPDATE','DELETE','INSERT']
then
  @act.allow_submit
end

Kode di atas menunjukkan bahwa pernyataan UPDATE, DELETE, dan INSERT diizinkan untuk dieksekusi pada basis data jika basis data tersebut berada dalam lingkungan offline.

Risk Identification Rules

Aturan identifikasi risiko digunakan untuk mengidentifikasi dan mengklasifikasikan risiko dalam perubahan data. Anda dapat membuat aturan identifikasi risiko berdasarkan lingkungan basis data Anda, jumlah baris tempat data terpengaruh, serta kategori dan subkategori pernyataan SQL.

Catatan

Perubahan data dapat ditandai dengan beberapa tingkat risiko oleh beberapa aturan keamanan. Tingkat risiko tertinggi yang berlaku.

Sebagai contoh, perubahan data ditandai dengan risiko rendah oleh lima aturan, risiko sedang oleh tiga aturan, dan risiko tinggi oleh satu aturan. Dalam hal ini, perubahan data diidentifikasi sebagai operasi berisiko tinggi.

Jika Anda ingin menandai perubahan data pada basis data yang berada dalam lingkungan offline dengan risiko rendah, Anda dapat membuat aturan identifikasi risiko berikut:

if
  @fac.env_type not in ['product','pre']
then
  @act.mark_risk 'low 'Tingkat risiko rendah: lingkungan offline'
end

Kode di atas menunjukkan bahwa perubahan data ditandai dengan risiko rendah jika basis data terkait berada dalam lingkungan offline.

Risk Approval Rules

Aturan persetujuan risiko digunakan untuk menentukan aturan persetujuan bawaan atau kustom untuk tiket yang melibatkan perubahan data yang ditandai dengan tingkat risiko yang berbeda.

Jika perubahan data diperiksa oleh semua aturan yang dikonfigurasikan untuk poin pemeriksaan Risk Identification Rules tetapi gagal ditandai dengan tingkat risiko, proses persetujuan yang ditentukan untuk aturan Data change default approval Template dari poin pemeriksaan Basic Configuration Item digunakan.

Secara default, lingkungan offline diidentifikasi sebagai faktor dengan risiko rendah dan tidak memerlukan persetujuan.

Batch Data import rules

Aturan ini hanya berlaku untuk validasi tiket impor data.

Mengizinkan impor massal pernyataan INSERT

Ubah template persetujuan default

  1. Masuk ke Konsol DMS V5.0.
  2. Geser penunjuk ke ikon 2023-01-28_15-57-17.png di sudut kiri atas dan pilih All Features > Security and Specifications (DBS) > Security Rules.

    Catatan

    Jika Anda menggunakan Konsol DMS dalam mode normal, pilih Security and Specifications (DBS) > Security Rules di bilah navigasi atas.

  3. Pada tab Security Rules, temukan set aturan keamanan yang ingin Anda kelola dan klik Edit di kolom Actions.

  4. Pada halaman Details, klik tab SQL Correct di sebelah kiri.

  5. Pada tab SQL Correct, pilih Basic Configuration Item untuk parameter Checkpoints.

  6. Temukan aturan Data change default approval Template dan klik Edit di kolom Actions.

  7. Di kotak dialog Change Configuration Item, klik Switch Approval Template.

  8. Di kotak dialog Switch Approval Template, temukan template yang ingin Anda gunakan dan klik Select di kolom Actions.

    Catatan

    Jika Anda tidak memerlukan persetujuan untuk tiket secara default, Anda dapat mengklik Reset to Free of Approval untuk melewati proses persetujuan.

  9. Klik Submit.

Faktor dan tindakan yang disediakan di tab SQL Correct

Faktor

Faktor adalah variabel yang telah ditentukan sebelumnya di DMS. Anda dapat menggunakan faktor untuk mendapatkan konteks yang akan divalidasi oleh aturan keamanan. Konteks mencakup kategori pernyataan SQL dan jumlah baris yang akan terpengaruh.

  • Nama faktor terdiri dari awalan @fac. dan nama tampilan faktor.

  • Setiap tab pada halaman Detail dari set aturan keamanan menyediakan faktor yang berbeda untuk poin pemeriksaan yang berbeda.

Tabel 1. Faktor yang Disediakan di Tab SQL Correct

Faktor

Deskripsi

@fac.env_type

Tipe lingkungan. Nilainya adalah nama tampilan tipe lingkungan, seperti DEV atau PRODUCT. Untuk informasi lebih lanjut, lihat Ubah tipe lingkungan instance.

@fac.sql_type

Tipe pernyataan SQL. Nilainya adalah subkategori pernyataan SQL, seperti UPDATE atau INSERT. Untuk informasi lebih lanjut, lihat subkategori SQL yang dijelaskan dalam topik SQLConsole untuk basis data relasional.

@fac.detail_type

Tipe tiket perubahan data. Nilai yang valid:

  • COMMON: tiket Modifikasi Data Normal

  • CHUNK_DML: tiket Perubahan Tanpa Kunci

  • PROCEDURE: tiket Objek Pemrograman

  • CRON_CLEAR_DATA: tiket Pembersihan Data Historis

  • BIG_FILE: tiket Impor Data Besar

@fac.is_logic

Nilai Boolean yang menunjukkan apakah basis data yang akan terpengaruh adalah basis data logis.

@fac.extra_info

Informasi lain tentang tiket. Faktor ini tidak digunakan.

@fac.is_ignore_affect_rows

Nilai Boolean yang menunjukkan apakah akan melewati verifikasi.

@fac.insert_rows

Jumlah baris data yang akan dimasukkan.

@fac.update_delete_rows

Jumlah baris data yang akan diperbarui.

@fac.max_alter_table_size

Ukuran ruang tabel terbesar di mana tabel yang akan dimodifikasi disimpan.

@fac.is_has_security_column

Nilai Boolean yang menunjukkan apakah pernyataan SQL yang akan dieksekusi melibatkan bidang sensitif.

@fac.security_column_list

Bidang sensitif yang dilibatkan oleh pernyataan SQL yang akan dieksekusi.

@fac.risk_level

Tingkat risiko perubahan data yang akan dilakukan oleh pernyataan SQL.

@fac.risk_reason

Alasan berdasarkan mana perubahan data ditandai dengan tingkat risiko ini.

@fac.table_name_list

Nama tabel yang terlibat dalam perubahan data. Contoh kode:

if    
   'tb_order' in @fac.table_name_list or 'tb1_order' in @fac.table_name_list
then    
    @ act.mark_risk 'high''Risiko tingkat tinggi: melibatkan tabel pesanan'
end

Kode di atas menunjukkan bahwa jika nama tabel yang terlibat dalam perubahan data adalah tb_order atau tb1_order, perubahan data ditandai dengan risiko tinggi.

Tindakan

Tindakan adalah operasi yang dilakukan sistem jika kondisi yang ditentukan dalam pernyataan if terpenuhi. Tindakan yang Anda tentukan untuk aturan keamanan menunjukkan tujuan aturan keamanan. Sebagai contoh, Anda dapat melarang pengajuan tiket, memilih proses persetujuan, menyetujui tiket, atau menolak tiket.

  • Nama tindakan terdiri dari awalan @act. dan nama tampilan tindakan.

  • Setiap tab pada halaman Detail dari set aturan keamanan menyediakan tindakan yang berbeda untuk poin pemeriksaan yang berbeda.

Tabel 2. Tindakan yang Disediakan di Tab SQL Correct

Tindakan

Deskripsi

@act.allow_submit

Mengizinkan pengajuan pernyataan SQL untuk dieksekusi dalam tiket.

@act.allow_execute_direct

Mengizinkan eksekusi pernyataan SQL di SQL Console.

@act.forbid_execute

Melarang eksekusi pernyataan SQL.

@act.mark_risk

Menandai perubahan data dengan tingkat risiko. Contoh: @act.mark_risk 'middle' 'Risiko tingkat sedang: lingkungan online'.

@act.do_not_approve

Menentukan ID template persetujuan. Untuk informasi lebih lanjut, lihat Konfigurasi proses persetujuan.

@act.choose_approve_template

@act.choose_approve_template_with_reason