全部产品
Search
文档中心

Data Management:SQL Console untuk basis data relasional

更新时间:Jul 02, 2025

Data Management (DMS) memungkinkan Anda mengonfigurasi aturan keamanan untuk operasi di modul SQL Console. Anda dapat mengelola basis data relasional dan non-relasional di SQL Console. Topik ini menjelaskan aturan keamanan untuk operasi di SQL Console. Dalam contoh ini, aturan keamanan untuk ApsaraDB RDS for MySQL digunakan.

Pemeriksaan di SQL Console

Pemeriksaan

Deskripsi

Basic Configuration Item

Memungkinkan Anda menentukan konfigurasi dasar seperti jumlah maksimum baris yang dapat dikembalikan per kueri, apakah set hasil dapat dimodifikasi, dan apakah data sensitif dapat dihitung.

SQL Execution Quantity Criteria

Memungkinkan Anda membatasi jumlah pernyataan SQL yang dapat diajukan sekaligus.

DQL SQL Criteria

Memungkinkan Anda menetapkan batasan pada eksekusi pernyataan bahasa kueri data (DQL).

Other SQL Criteria

Memungkinkan Anda menetapkan batasan pada eksekusi berbagai jenis pernyataan SQL. Sebagai contoh, Anda dapat mengizinkan eksekusi pernyataan SQL yang tidak teridentifikasi dan menolak eksekusi pernyataan yang menghapus tabel penuh.

SQL Permission Criteria

Memungkinkan Anda menetapkan batasan pada eksekusi pernyataan SQL berdasarkan izin pada basis data, tabel, kolom sensitif, dan baris.

SQL Execution Performance Criteria

Memungkinkan Anda menolak eksekusi pernyataan DDL jika ukuran tablespace yang terlibat melebihi batas atas atau menolak eksekusi pernyataan DML jika jumlah baris yang terpengaruh melebihi batas atas.

Exception Recognition Criteria of Database and Table Column Permissions

Memungkinkan Anda menentukan apakah akan melanjutkan atau menolak eksekusi pernyataan SQL seperti DQL, DML, DDL, atau pernyataan bahasa kontrol data (DCL) jika terjadi pengecualian penguraian.

SQL Execution Criteria in Logical Databases

Memungkinkan Anda menetapkan batasan pada eksekusi berbagai jenis pernyataan SQL.

Catatan

DMS menyediakan sejumlah besar konfigurasi dan aturan yang telah ditentukan sebelumnya untuk pemeriksaan. Anda dapat memodifikasi konfigurasi, mengubah status aturan, dan menyesuaikan aturan keamanan sesuai dengan kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat bagian Konfigurasikan Aturan Keamanan dari topik "Kelola Aturan Keamanan".

Bagan alir berikut menunjukkan cara kerja pemeriksaan.

Faktor dan tindakan

  • Faktor adalah variabel yang telah ditentukan sebelumnya yang disediakan oleh DMS. Anda dapat menggunakan faktor untuk mendapatkan konteks yang harus divalidasi oleh aturan keamanan, seperti kategori pernyataan SQL dan jumlah baris data yang akan terpengaruh.

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

    • Setiap modul di halaman Detail dari set aturan keamanan menyediakan faktor yang berbeda untuk pemeriksaan yang berbeda.

    Tabel 1. Faktor yang Disediakan oleh Modul SQL Console

    Faktor

    Deskripsi

    @fac.sql_count

    Jumlah pernyataan SQL yang diajukan sekaligus.

    @fac.select_sql_count

    Jumlah pernyataan DQL di antara pernyataan SQL yang diajukan sekaligus.

    @fac.dml_sql_count

    Jumlah pernyataan DML di antara pernyataan SQL yang diajukan sekaligus.

    @fac.sql_type

    Kategori pernyataan SQL. Untuk informasi lebih lanjut, lihat bagian Pernyataan SQL yang dapat dieksekusi di DMS dari topik ini.

    @fac.sql_sub_type

    Subkategori pernyataan SQL. Untuk informasi lebih lanjut, lihat bagian Pernyataan SQL yang dapat dieksekusi di DMS dari topik ini.

    @fac.env_type

    Jenis lingkungan. Nilainya adalah nama tampilan jenis lingkungan, seperti DEV atau PRODUCT. Untuk informasi lebih lanjut, lihat Ubah jenis lingkungan suatu instans.

    @fac.fulltable_delete

    Menunjukkan apakah pernyataan SQL saat ini menghapus tabel penuh. Nilai valid:

    • true

    • false

    @fac.fulltable_update

    Menunjukkan apakah pernyataan SQL saat ini memperbarui tabel penuh. Nilai valid:

    • true

    • false

    @fac.current_sql

    Pernyataan SQL saat ini.

    @fac.user_is_admin

    Menunjukkan apakah pengguna saat ini adalah administrator DMS. Nilai valid:

    • true

    • false

    @fac.user_is_dba

    Menunjukkan apakah pengguna saat ini adalah administrator basis data (DBA). Nilai valid:

    • true

    • false

    @fac.user_is_inst_dba

    Menunjukkan apakah pengguna saat ini adalah DBA dari instans basis data saat ini. Nilai valid:

    • true

    • false

    @fac.user_is_sec_admin

    Menunjukkan apakah pengguna saat ini adalah administrator keamanan. Nilai valid:

    • true

    • false

    @fac.sql_affected_rows

    Jumlah baris yang akan terpengaruh oleh pernyataan SQL saat ini.

    Catatan

    Faktor ini memicu operasi COUNT. Gunakan faktor ini dengan hati-hati.

    @fac.sql_relate_table_store_size

    Perkiraan total ukuran tabel yang akan diakses oleh pernyataan SQL saat ini. Satuan: MB.

    Catatan

    Nilai ini diperkirakan berdasarkan metadata yang diperoleh oleh DMS. Nilai tersebut bukan nilai aktual.

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

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

    • Setiap modul di halaman Detail dari set aturan keamanan menyediakan tindakan yang berbeda untuk pemeriksaan yang berbeda.

    Tabel 2. Tindakan yang Disediakan oleh Modul SQL Console

    Tindakan

    Deskripsi

    @act.reject_execute

    Menolak eksekusi pernyataan SQL saat ini.

    @act.allow_execute

    Mengizinkan eksekusi pernyataan SQL saat ini.

    @act.reject_sql_type_execute

    Menolak eksekusi subkategori tertentu dari pernyataan SQL. Anda harus menentukan subkategori jika menggunakan tindakan ini. Contoh: @act.reject_sql_type_execute 'UPDATE'.

    @act.allow_sql_type_execute

    Mengizinkan eksekusi subkategori tertentu dari pernyataan SQL. Anda harus menentukan subkategori jika menggunakan tindakan ini. Contoh: @act.allow_sql_type_execute 'UPDATE'.

    @act.check_dml_sec_column_permission

    Memeriksa apakah pengguna memiliki izin pada bidang sensitif. Jika pengguna tidak memiliki izin yang diperlukan, pernyataan DML untuk perubahan data tidak dieksekusi.

    @act.uncheck_dml_sec_column_permission

    Tidak memeriksa apakah pengguna memiliki izin pada bidang sensitif.

    @act.check_sql_access_permission

    Memeriksa apakah pengguna memiliki izin tertentu pada basis data, tabel, atau bidang yang terlibat dalam pernyataan SQL yang akan dieksekusi. Sebagai contoh, Anda dapat memeriksa apakah pengguna memiliki izin untuk menanyakan data atau mengubah data.

    @act.uncheck_sql_access_permission

    Tidak memeriksa apakah pengguna memiliki izin tertentu pada basis data, tabel, atau bidang yang terlibat dalam pernyataan SQL yang akan dieksekusi.

    @act.enable_sec_column_mask

    Menyamarkan bidang sensitif dalam set hasil kueri yang dikembalikan untuk pernyataan SQL yang diajukan oleh pengguna yang tidak memiliki izin pada bidang sensitif.

    @act.disable_sec_column_mask

    Tidak menyamarkan bidang sensitif dalam set hasil kueri yang dikembalikan untuk pernyataan SQL yang diajukan oleh pengguna yang tidak memiliki izin pada bidang sensitif.

Pernyataan SQL yang dapat dieksekusi di DMS

DML

  • INSERT

  • INSERT_SELECT

  • SELECT_INTO

  • MULTI_INSERT

  • REPLACE

  • REPLACE_INTO

  • UPDATE

  • DELETE

  • MERGE

  • REMOVE

  • MSCK_REPAIR

  • REFRESH_MATERIALIZED_VIEW

  • BEGIN

  • START_TRANSACTION

  • COMMIT

  • ROLLBACK

  • SAVEPOINT

  • RELEASE_SAVEPOINT

  • SET

  • ADD_EDGE

  • ADD_VERTEX

  • SET_PROPERTY

  • GDB_DROP

  • INSERT_MANY

  • INSERT_ONE

  • DELETE_MANY

  • DELETE_ONE

  • UPDATE_MANY

  • UPDATE_ONE

  • WLM_ADD_RULE

DDL

  • CREATE

  • CREATE_SCHEMA

  • CREATE_INDEX

  • CREATE_VIEW

  • CREATE_SEQUENCE

  • CREATE_TABLE

  • CREATE_TABLEGROUP

  • CREATE_PACKAGE

  • CREATE_SELECT

  • TRUNCATE

  • DROP

  • DROP_SCHEMA

  • DROP_INDEX

  • DROP_VIEW

  • DROP_TABLE

  • DROP_TABLEGROUP

  • DROP_SEQUENCE

  • RENAME

  • ALTER_TABLE_DROP_COLUMN

  • ALTER_TABLE_CHARACTER_COLLATE

  • ALTER_TABLE_AUTOINCREMENT

  • ALTER

  • ALTER_SCHEMA

  • ALTER_INDEX

  • ALTER_VIEW

  • ALTER_TABLE

  • ALTER_TABLEGROUP

  • ALTER_SEQUENCE

  • CREATE_FUNCTION

  • ALTER_FUNCTION

  • DROP_FUNCTION

  • CREATE_PROCEDURE

  • ALTER_PROCEDURE

  • DROP_PROCEDURE

  • MONGO_CREATE_INDEX

  • MONGO_DROP_INDEX

  • CREATE_DATABASE

  • ALTER_DATABASE

  • DROP_DATABASE

  • CREATE_USER

  • ALTER_USER

  • DROP_USER

  • CREATE_ROLE

  • DROP_ROLE

  • EXEC

  • CALL_PROCEDURE

  • CREATE_TRIGGER

  • ALTER_TRIGGER

  • DROP_TRIGGER

  • CREATE_EVENT

  • ALTER_EVENT

  • DROP_EVENT

  • ROLLBACK_DDL

  • CANCEL_DDL

  • VACUUM

  • SUBMIT_JOB

  • CANCEL_JOB

  • BUILD_TABLE

  • IF

DQL

  • SELECT

  • DESC

  • EXPLAIN

  • SHOW_INDEX

  • SHOW

  • CHECK_TABLE

  • SHOW_DDL

  • LIST

  • GDB_QUERY

  • CHECKSUM

  • SELECT_PG_TERMINATION_BACKEND

  • WLM_LIST_RULE

DCL

  • GRANT

  • DECLARE

  • SET

  • ANALYZE

  • FLUSH

  • OPTIMIZE

  • KILL

  • RECOVER_DDL

  • REMOVE_DDL

  • SELECT_PG_TERMINATION_BACKEND