Topik ini menjelaskan cara memberikan izin kepada pengguna Resource Access Management (RAM) untuk mengelola PolarDB menggunakan kebijakan kustom. Jika kebijakan sistem yang disediakan oleh RAM tidak memenuhi persyaratan bisnis Anda, Anda dapat membuat kebijakan kustom untuk mengelola izin PolarDB. Sebagai contoh, Anda dapat membuat kebijakan kustom untuk memberikan izin pada sumber daya dan operasi tertentu.
Prasyarat
Pastikan akun Alibaba Cloud telah dibuat sebelum menggunakan RAM untuk mengelola izin. Jika belum, kunjungi halaman Daftar di Alibaba Cloud.
Informasi latar belakang
Kebijakan mendefinisikan serangkaian izin berdasarkan struktur dan sintaksis kebijakan. Kebijakan mencakup sumber daya yang diberi izin, operasi yang diberi izin, serta kondisi otorisasi. Untuk informasi lebih lanjut, lihat Struktur dan Sintaksis Kebijakan.
Sebelum menggunakan kebijakan kustom untuk manajemen izin PolarDB yang lebih rinci, pahami cara menentukan sumber daya PolarDB untuk pengguna RAM dalam kebijakan. Untuk informasi lebih lanjut, lihat Gunakan RAM untuk Otorisasi Sumber Daya.
Untuk menyesuaikan izin atau memberikan izin spesifik pada tabel, Anda dapat menggunakan fitur manajemen izin dari Database Management Service (DMS). Untuk informasi lebih lanjut, lihat Kelola Izin Pengguna pada Database MySQL.
Prosedur
Buat kebijakan kustom. Untuk informasi lebih lanjut, lihat Buat Kebijakan Kustom.
Contoh kebijakan kustom:
Batasi akses ke kluster tertentu
Misalkan Anda memiliki beberapa kluster PolarDB dalam akun Alibaba Cloud Anda. Anda ingin memberi izin kepada pengguna RAM untuk menggunakan hanya dua kluster dengan ID i-001 dan i-002. Dalam kasus ini, Anda dapat membuat kebijakan berikut:
{ "Statement": [ { "Action": "polardb:*", "Effect": "Allow", "Resource": [ "acs:polardb:*:*:*/i-001", "acs:polardb:*:*:*/i-002" ] }, { "Action": "polardb:Describe*", "Effect": "Allow", "Resource": "*" } ], "Version": "1" }CatatanPengguna RAM yang diberi izin dapat melihat semua kluster dan sumber daya, tetapi hanya dapat mengelola dua kluster dengan ID i-001 dan i-002. Anda masih dapat mengelola dua kluster tersebut menggunakan operasi API, antarmuka baris perintah (CLI), atau kit pengembangan perangkat lunak (SDK).
Kebijakan harus mencakup
Describe*. Jika tidak, pengguna RAM yang diberi izin tidak dapat melihat kluster di konsol PolarDB.
Batasi akses ke fitur tertentu
Jika Anda ingin memberi izin kepada pengguna RAM untuk menggunakan hanya beberapa fitur PolarDB, Anda dapat membuat kebijakan berikut:
{ "Statement": [ { "Action": [ "polardb:Describe*", "polardb:CreateBackup", "polardb:DeleteBackup", "polardb:ModifyDBClusterAccessWhitelist" ], "Resource": "*", "Effect": "Allow" } ], "Version": "1" }CatatanPengguna RAM yang diberi izin hanya dapat menanyakan informasi kluster dan cadangan, membuat dan menghapus cadangan, serta memodifikasi daftar putih untuk semua kluster PolarDB dalam akun Anda.
PolarDB memungkinkan Anda menentukan apakah pengguna RAM dapat melakukan operasi tertentu pada sumber daya PolarDB. Anda dapat menentukan operasi API dalam kebijakan untuk manajemen izin PolarDB yang lebih rinci. Untuk informasi lebih lanjut, lihat Layanan yang Bekerja dengan RAM .
Batasi akses IP
Jika Anda ingin membatasi akses IP pengguna RAM target, Anda dapat membuat kebijakan izin berikut:
{ "Version": "1", "Statement": [ { "Action": "*", "Effect": "Allow", "Resource": "*", "Condition": { "IpAddress": { "acs:SourceIp": [ "xxx.xxx.x.x" ] } } } ] }CatatanPengguna RAM yang terlampir pada kebijakan ini hanya dapat mengelola semua kluster PolarDB dalam akun dari alamat IP yang diberi izin.
Ubah nilai parameter acs:SourceIp menjadi alamat IP lingkungan Anda.
Batasi status TDE
Jika Anda ingin membatasi status TDE untuk pengguna RAM saat membuat kluster, buat kebijakan izin berikut:
{ "Version": "1", "Statement": [ { "Effect": "Deny", "Action": "polardb:*", "Resource": "*", "Condition": { "Bool": { "polardb:EncryptionRequired": [ "false" ] } } } ] }Lampirkan kebijakan kustom ke pengguna RAM. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM.