Topik ini menjelaskan cara menggunakan model izin sederhana (SPM) atau model otorisasi PostgreSQL standar untuk memberikan izin pengembangan pada instance Hologres kepada pengguna RAM melalui akun Alibaba Cloud Anda.
Informasi latar belakang
Secara default, sistem menetapkan akun Alibaba Cloud yang digunakan untuk membeli instance sebagai superuser dari instance tersebut. Superuser memiliki semua izin pada instance, termasuk kemampuan untuk membuat dan menghapus database, membuat peran, serta memberikan izin kepada peran.
Saat mengakses Hologres sebagai pengguna RAM, perhatikan hal-hal berikut:
Pengguna RAM harus diberi otorisasi oleh akun Alibaba Cloud sebelum dapat mengakses instance Hologres. Pengguna RAM juga dapat diberi peran superuser.
Meskipun pengguna RAM memiliki izin untuk membeli instance, mereka hanya dapat melakukan pengembangan data di instance Hologres setelah izin pengembangan terkait diberikan oleh akun Alibaba Cloud.
Izin RAM dan izin pengembangan pada instance berlaku untuk skenario yang berbeda. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM.
Gunakan SPM untuk memberikan izin kepada pengguna RAM (direkomendasikan)
(Opsional) Berikan Izin kepada Pengguna RAM.
SPM juga memungkinkan Anda memberikan izin kepada pengguna RAM dengan mengeksekusi pernyataan SQL. Untuk informasi lebih lanjut, lihat Gunakan SPM.
Gunakan model otorisasi PostgreSQL standar untuk memberikan izin kepada pengguna RAM
Untuk menggunakan model otorisasi PostgreSQL standar untuk memberikan izin kepada pengguna RAM, lakukan langkah-langkah berikut:
Buat Pengguna RAM.
Buat pengguna RAM untuk instance Hologres. Contoh pernyataan:
CREATE USER "p4_Account ID"; // Tentukan UID dari pengguna RAM. CREATE USER "p4_Account ID" SUPERUSER; // Berikan peran superuser kepada pengguna RAM.Berikan Izin kepada Pengguna RAM.
Anda dapat melakukan operasi pada instance Hologres sebagai pengguna RAM hanya setelah izin yang diperlukan diberikan kepada pengguna RAM. Contoh pernyataan:
GRANT SELECT ON TABLE TABLENAME TO "Account ID"; // Berikan izin SELECT kepada pengguna RAM pada tabel. GRANT SELECT,INSERT,UPDATE ON ALL TABLES IN SCHEMA PUBLIC TO "p4_Account ID"; // Berikan izin SELECT, INSERT, dan UPDATE kepada pengguna RAM pada semua tabel.CatatanHanya superuser dan pemilik tabel yang dapat menghapus tabel.
Untuk informasi lebih lanjut tentang otorisasi menggunakan model otorisasi PostgreSQL standar, lihat Model Otorisasi PostgreSQL Standar.
Gunakan Hologres sebagai pengguna RAM
Setelah pengguna RAM diberi izin yang diperlukan pada instance Hologres, Anda dapat menggunakan klien PostgreSQL untuk terhubung dan melakukan operasi pada instance Hologres sebagai pengguna RAM. Untuk informasi lebih lanjut, lihat Klien PostgreSQL.
Contoh pernyataan:
PGUSER=<AccessID> PGPASSWORD=<AccessKey> psql -p <Port> -h <Endpoint> -d <Database>Lihat izin yang diberikan kepada pengguna RAM
Gunakan pernyataan SQL untuk melihat izin pengguna RAM.
Setelah menghubungkan alat pengembangan ke instance Hologres, Anda dapat menggunakan pernyataan SQL berikut untuk melihat izin pengguna RAM:
SELECT * FROM pg_roles WHERE rolname = 'p4_ID'; //Lihat peran yang dimiliki oleh anggota tertentu.
SELECT rolname FROM pg_roles;
SELECT user_display_name(rolname) FROM pg_roles;Anda dapat menggunakan pernyataan SELECT * FROM pg_catalog.pg_roles; untuk melihat izin semua pengguna.