全部产品
Search
文档中心

PolarDB:Izin Akun

更新时间:Dec 10, 2025

Topik ini menjelaskan izin untuk akun istimewa dan akun standar.

Pendahuluan

Untuk menjaga keamanan database, Anda harus mengelola dan membatasi izin pengguna dengan hanya memberikan izin yang diperlukan untuk tugas mereka. ApsaraDB menggunakan model Kontrol akses berbasis peran (RBAC) untuk mengelola izin pengguna. Dalam model ini, pengguna ditetapkan ke peran tertentu, dan setiap peran memiliki serangkaian izin yang telah ditentukan. Pendekatan ini memungkinkan kontrol akses yang efektif dan meningkatkan keamanan database.

Database menyediakan dua jenis peran pengguna: Pengguna dengan hak istimewa dan pengguna biasa.

  • Pengguna dengan hak istimewa melakukan tugas manajemen, seperti membuat database, memberikan izin dasar, serta membuat publication dan subscription.

  • Pengguna biasa menjalankan berbagai operasi logika bisnis.

PolarDB menerapkan sistem izin ini untuk mendefinisikan jenis operasi database dan menerapkan model kontrol akses guna meningkatkan keamanan ApsaraDB.

Izin Pengguna dengan Hak Istimewa

Jenis Akun

Izin

Akun istimewa

Membuat, memperbarui, mengakses, dan menghapus semua objek non-sistem, seperti tabel, indeks, tipe, tampilan, fungsi, dan prosedur. Izin pada objek-objek ini dibagikan di antara semua pengguna dengan hak istimewa, sehingga memungkinkan pengguna dengan hak istimewa mana pun untuk mengakses objek yang dimiliki oleh pengguna dengan hak istimewa lainnya.

Membuat database. Untuk informasi selengkapnya, lihat Create a database.

Membuat ekstensi. Untuk informasi selengkapnya, lihat Extensions.

Membuat pengguna dengan izin yang tidak lebih besar daripada izin mereka sendiri. Untuk informasi selengkapnya, lihat Membuat Pengguna.

Membuat dan menggunakan event trigger. Untuk informasi selengkapnya, lihat Create a trigger.

Membuat dan memodifikasi tipe. Untuk informasi selengkapnya, lihat Create an object type.

Memanggil instruksi garbage collection. Untuk informasi selengkapnya, lihat Garbage collection mechanism.

Membuat dan memodifikasi foreign data wrapper (FDW). Untuk informasi selengkapnya, lihat Use oss_fdw to read and write external text files.

Membuat publikasi dan langganan. Contoh:

-- Create a publication
CREATE PUBLICATION my_publication FOR TABLE test_t;

-- Create a subscription
CREATE SUBSCRIPTION my_subscription
CONNECTION 'channel_name=XXXX dbname=XXXX user=XXXX password=XXXX'
PUBLICATION my_publication;
Catatan

Anda harus menggunakan saluran untuk membuat langganan. Untuk membuat saluran, lihat Saluran jaringan. Jika terjadi kesalahan saat membuat langganan, hubungi kami.

Menggunakan transaksi dua fase. Contoh:

-- session_1
begin;
insert into t values (1,'a');
prepare transaction 'test_1';

-- session_2
commit prepared 'test_1';
-- Or roll back
rollback prepared 'test_1';

Mengirim sinyal. Contoh:

-- 4300 adalah proses non-superuser
select pg_cancel_backend(4300);
select pg_terminate_backend(4300);

Menampilkan status proses latar belakang. Contoh:

select * from pg_stat_activity;

Izin Pengguna Standar

Jenis Akun

Izin

Akun standar

Izin untuk terhubung ke semua database.

Izin untuk melakukan kueri terhadap objek yang memiliki izin PUBLIC.

Izin yang Tidak Tersedia untuk Pengguna Istimewa dan Standar

Izin berikut dilarang untuk semua pengguna karena menimbulkan risiko keamanan bagi database.

Jenis Akun

Izin

Akun istimewa/Akun standar

Memodifikasi parameter sistem.

Membuat tablespace.

Menghentikan proses superuser.

Menjalankan bahasa yang tidak tepercaya.

Catatan

plpgsql adalah bahasa tepercaya. Semua bahasa lain tidak tepercaya dan tidak dapat dijalankan.

Izin grup pengguna

Database cloud-native PolarDB for PostgreSQL dibangun di atas PostgreSQL dan mewarisi beberapa izin kelompok dari PostgreSQL. Bagian ini menjelaskan mekanisme pewarisan izin kelompok tersebut. Izin-izin ini dikombinasikan dengan izin pengguna dengan hak istimewa yang telah dijelaskan sebelumnya. Set izin akhir merupakan gabungan (union) dari keduanya.

Nama Izin

Status Izin

Deskripsi

pg_read_all_stats & pg_stat_scan_tables

Penuh

Izin lengkap terkait informasi statistik.

pg_signal_backend

Penuh

Izin lengkap untuk mengirim sinyal ke proses lain.

pg_polar_superuser

Penuh

Kelompok pengguna dengan hak istimewa yang mencakup serangkaian izin untuk pengguna dengan hak istimewa. Dimiliki sepenuhnya.

pg_polar_replication

Penuh

Memberikan izin untuk menggunakan streaming replication. Dimiliki sepenuhnya.

pg_monitor

Lengkap

Memberikan izin pemantauan, tetapi memblokir izin baca dan tulis untuk file lokal.

pg_read_all_data & pg_write_all_data

Dibatasi

Izin untuk membaca dan menulis tabel apa pun. Anda dapat membaca dan menulis tabel pengguna apa pun serta membaca sebagian besar tabel sistem. Akses ke beberapa tabel sistem diblokir karena alasan keamanan.

pg_read_all_settings

Dibatasi

Izin untuk membaca parameter apa pun. Anda dapat membaca parameter dalam cakupan izin Anda. Akses ke beberapa parameter diblokir karena alasan keamanan.

pg_read_server_files & pg_write_server_files

Diblokir

Izin untuk membaca dan menulis file lokal tidak didukung.

pg_execute_server_program

Diblokir

Izin untuk menjalankan perintah biner tidak didukung.