Akun database digunakan untuk mengelola izin di AnalyticDB for PostgreSQL. Sebuah akun dapat memiliki izin untuk menjalankan operasi pada objek database. Sebelum menghubungkan ke database atau melakukan operasi pada objeknya, Anda harus membuat akun database.
Jenis akun
AnalyticDB for PostgreSQL menyediakan dua jenis akun database:
-
Akun istimewa: Jenis ini mencakup akun awal yang dibuat di Konsol dan akun yang dibuat menggunakan pernyataan SQL dengan role
RDS_SUPERUSER. Akun istimewa memiliki semua izin operasional pada semua database. Izin tersebut meliputi:-
Izin
CREATEROLE,CREATEDB, danLOGIN. Artinya, akun tersebut dapat membuat database dan akun database serta login ke database. Namun, akun ini tidak memiliki izinSUPERUSER. -
Izin untuk melihat dan memodifikasi tabel data milik akun lain menggunakan pernyataan
SELECT,UPDATE, danDELETE, atau dengan mengubah pemiliknya. -
Izin untuk melihat informasi koneksi akun lain, membatalkan pernyataan SQL mereka, atau menghentikan koneksi mereka.
-
Izin untuk menjalankan perintah
CREATE EXTENSIONdanDROP EXTENSIONguna membuat dan menghapus ekstensi. -
Izin untuk membuat akun lain dengan role
RDS_SUPERUSER.
CatatanAnalyticDB for PostgreSQL tidak memberikan izin SUPERUSER. Izin yang sesuai adalah RDS_SUPERUSER, yang konsisten dengan sistem izin ApsaraDB RDS for PostgreSQL.
-
-
Akun standar: Secara default, akun standar tidak memiliki izin apa pun. Akun istimewa atau akun yang memiliki izin
GRANTharus memberikan izin tersebut pada satu atau beberapa objek database.
Rekomendasi
Akun istimewa memiliki semua izin operasional pada semua database. Untuk memastikan keamanan data, kami menyarankan agar Anda tidak menggunakan akun istimewa untuk operasi bisnis rutin. Sebagai gantinya, buatlah akun standar dan berikan hanya izin yang diperlukan pada objek database tertentu. Hal ini membantu mencegah akses dan modifikasi yang tidak sah.
Buat akun
Buat akun awal
Akun awal adalah akun istimewa yang memiliki role RDS_SUPERUSER. Anda harus membuat akun awal terlebih dahulu. Setelah login ke database menggunakan akun awal, Anda dapat membuat akun istimewa atau akun standar lainnya.
Akun awal tidak dapat dihapus. Jika Anda lupa kata sandi akun awal, Anda dapat mengatur ulangnya.
Anda dapat membuat akun awal di Konsol AnalyticDB for PostgreSQL atau dengan memanggil operasi API.
Konsol
-
Login ke Konsol AnalyticDB for PostgreSQL. Dari bagian atas halaman, pilih wilayah instans Anda. Lalu, temukan instans Anda dan klik ID-nya.
-
Di panel navigasi sebelah kiri, klik Account Management.
-
Klik Create Account. Di kotak dialog Create Account, masukkan nama akun dan kata sandi. Lalu, klik OK.
Parameter
Deskripsi
Account
Nama akun awal harus memenuhi persyaratan berikut:
-
Hanya boleh berisi huruf kecil, angka, dan garis bawah (_).
-
Harus diawali dengan huruf kecil dan diakhiri dengan huruf kecil atau angka.
-
Tidak boleh diawali dengan
gp. -
Panjangnya harus antara 2 hingga 16 karakter.
New Password dan Confirm Password
Kata sandi harus memenuhi persyaratan berikut:
-
Harus berisi karakter dari minimal tiga kategori berikut: huruf kapital, huruf kecil, angka, dan karakter khusus.
-
Karakter khusus yang didukung adalah
!@#$%^&*()_+-=. -
Panjangnya harus antara 8 hingga 32 karakter.
PentingUntuk keamanan data, ubah kata sandi Anda secara berkala dan jangan gunakan kembali kata sandi sebelumnya.
-
API
Panggil operasi API CreateAccount untuk membuat akun awal.
Buat akun RDS_SUPERUSER istimewa
Untuk membuat akun istimewa, berikan role RDS_SUPERUSER saat membuat akun tersebut. Contohnya:
CREATE ROLE username WITH LOGIN ENCRYPTED PASSWORD 'userPassword' RDS_SUPERUSER;
Buat akun standar
Akun standar adalah akun database yang tidak memiliki role RDS_SUPERUSER. Anda tidak dapat membuat akun standar di Konsol AnalyticDB for PostgreSQL atau dengan memanggil operasi API.
Anda dapat membuat akun standar dengan menjalankan pernyataan SQL. Contohnya:
CREATE ROLE username WITH LOGIN ENCRYPTED PASSWORD 'userPassword';
Untuk sintaks SQL lengkap dalam membuat akun istimewa dan akun standar, lihat CREATE ROLE.
Kueri akun database
Konsol AnalyticDB for PostgreSQL hanya menampilkan akun awal. Konsol tidak menampilkan akun istimewa atau akun standar lain yang dibuat menggunakan pernyataan SQL. Anda dapat mengkueri semua akun istimewa (termasuk akun awal) dan akun standar dalam suatu instans menggunakan pernyataan SQL atau dengan memanggil operasi API.
SQL
SELECT * FROM pg_roles;
Akunadbpgadmindanauroradalam hasil kueri adalah akun sistem.
API
-
Panggil operasi API DescribeAccounts untuk mengkueri semua nama akun database, jenisnya (istimewa atau standar), dan status pembuatannya.
-
Panggil operasi API DescribeDiagnosisDimensions untuk mengkueri semua akun database dan database. Operasi ini tidak mengembalikan jenis akun atau status pembuatannya.
-
Panggil operasi API DescribeRoles untuk mengkueri semua akun database. Operasi ini tidak mengembalikan jenis akun atau status pembuatannya.
Atur ulang kata sandi
Jika Anda lupa kata sandi akun database, Anda dapat mengaturnya ulang di Konsol AnalyticDB for PostgreSQL, dengan menjalankan pernyataan SQL, atau dengan memanggil operasi API.
Konsol
Di Konsol, Anda hanya dapat mengatur ulang kata sandi akun awal. Untuk mengatur ulang kata sandi akun standar, Anda harus menggunakan pernyataan SQL.
-
Login ke Konsol AnalyticDB for PostgreSQL. Dari bagian atas halaman, pilih wilayah instans Anda. Lalu, temukan instans Anda dan klik ID-nya.
-
Di panel navigasi sebelah kiri, klik Account Management.
-
Temukan akun tersebut dan klik Reset Password. Di kotak dialog, masukkan kata sandi baru.
SQL
ALTER ROLE username WITH PASSWORD 'userPassword';
Untuk sintaks SQL lengkap dalam memodifikasi kata sandi dan atribut lain dari akun database, lihat ALTER ROLE.
API
Panggil operasi API ResetAccountPassword untuk mengatur ulang kata sandi akun.
Langkah selanjutnya
Setelah akun standar dibuat, akun tersebut tidak memiliki izin untuk menjalankan operasi atau mengakses database apa pun. Anda harus memberikan izin yang diperlukan pada objek database tersebut. Untuk informasi lebih lanjut, lihat Manage account permissions.