

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Buat pengguna dan peran aplikasi di Aurora PostgreSQL yang kompatibel
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible"></a>

*Abhishek Verma, Amazon Web Services*

## Ringkasan
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-summary"></a>

Saat Anda bermigrasi ke Amazon Aurora PostgreSQL Compatible Edition, pengguna database dan peran yang ada di database sumber harus dibuat dalam database yang kompatibel dengan Aurora PostgreSQL. Anda dapat membuat pengguna dan peran di Aurora PostgreSQL kompatibel dengan menggunakan dua pendekatan yang berbeda:
+ Gunakan pengguna dan peran serupa dalam target seperti dalam database sumber. Dalam pendekatan ini, bahasa definisi data (DDLs) diekstraksi untuk pengguna dan peran dari database sumber. Kemudian mereka ditransformasikan dan diterapkan ke database target yang kompatibel dengan Aurora PostgreSQL. Misalnya, posting blog [Gunakan SQL untuk memetakan pengguna, peran, dan hibah dari Oracle ke PostgreSQL mencakup menggunakan ekstraksi dari mesin](https://aws.amazon.com/blogs/database/use-sql-to-map-users-roles-and-grants-from-oracle-to-postgresql) database sumber Oracle.
+ Gunakan pengguna standar dan peran yang umum digunakan selama pengembangan, administrasi, dan untuk melakukan operasi terkait lainnya dalam database. Ini termasuk operasi read-only, read/write, development, administration, dan deployment yang dilakukan oleh masing-masing pengguna.

Pola ini berisi hibah yang diperlukan untuk pengguna dan pembuatan peran di Aurora PostgreSQL kompatibel yang diperlukan untuk pengguna standar dan pendekatan peran. Langkah-langkah pembuatan pengguna dan peran disejajarkan dengan kebijakan keamanan untuk memberikan hak istimewa paling sedikit kepada pengguna database. Tabel berikut mencantumkan pengguna, peran yang sesuai, dan detailnya di database.


| 
| 
| Pengguna | Peran | Tujuan | 
| --- |--- |--- |
| `APP_read` | `APP_RO` | Digunakan untuk akses hanya-baca pada skema `APP` | 
| `APP_WRITE` | `APP_RW` | Digunakan untuk operasi tulis dan baca pada skema `APP` | 
| `APP_dev_user` | `APP_DEV` | Digunakan untuk tujuan pengembangan pada skema`APP_DEV`, dengan akses hanya-baca pada skema `APP` | 
| `Admin_User` | `rds_superuser` | Digunakan untuk melakukan operasi administrator pada database | 
| `APP` | `APP_DEP` | Digunakan untuk membuat objek di bawah `APP` skema dan untuk penyebaran objek dalam skema `APP` | 

## Prasyarat dan batasan
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-prereqs"></a>

**Prasyarat**
+ Akun Amazon Web Services (AWS) yang aktif
+ Database PostgreSQL, database Edisi Amazon Aurora PostgreSQL yang kompatibel, atau Amazon Relational Database Service (Amazon RDS) untuk database PostgreSQL

**Versi produk**
+ Semua versi PostgreSQL

## Arsitektur
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-architecture"></a>

**Tumpukan teknologi sumber**
+ Database apa pun

**Tumpukan teknologi target**
+ Kompatibel dengan Amazon Aurora PostgreSQL

**Arsitektur target**

Diagram berikut menunjukkan peran pengguna dan arsitektur skema dalam database Aurora PostgreSQL kompatibel.

![\[Peran pengguna dan arsitektur skema untuk database Aurora PostgreSQL-Comaptible.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/80105a81-e3d1-4258-b3c1-77f3a5e78592/images/b95cb9bc-8bf7-47d1-92e7-66cfb37d7ce7.png)


                                                                                                                                    

**Otomatisasi dan skala**

Pola ini berisi pengguna, peran, dan skrip pembuatan skema, yang dapat Anda jalankan beberapa kali tanpa berdampak pada pengguna database sumber atau target yang ada.

## Alat
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-tools"></a>

**Layanan AWS**
+ [Amazon Aurora PostgreSQL Compatible Edition](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraPostgreSQL.html) adalah mesin database relasional yang dikelola sepenuhnya dan sesuai dengan ACID yang membantu Anda mengatur, mengoperasikan, dan menskalakan penerapan PostgreSQL.

**Layanan lainnya**
+ [psql](https://www.postgresql.org/docs/current/app-psql.html) adalah alat front-end berbasis terminal yang diinstal dengan setiap instalasi PostgreSQL Database. Ini memiliki antarmuka baris perintah untuk menjalankan SQL, PL-PGSQL, dan perintah sistem operasi.
+ [pgAdmin](https://www.pgadmin.org/) adalah alat manajemen sumber terbuka untuk PostgreSQL. Ini menyediakan antarmuka grafis yang membantu Anda membuat, memelihara, dan menggunakan objek database.

## Epik
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-epics"></a>

### Buat pengguna dan peran
<a name="create-the-users-and-roles"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat pengguna penerapan. | Pengguna penyebaran `APP` akan digunakan untuk membuat dan memodifikasi objek database selama penerapan. Gunakan skrip berikut untuk membuat peran pengguna penerapan `APP_DEP` dalam skema. `APP` Validasi hak akses untuk memastikan pengguna ini hanya memiliki hak istimewa untuk membuat objek dalam skema yang diperlukan. `APP`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/create-application-users-and-roles-in-aurora-postgresql-compatible.html) | DBA | 
| Buat pengguna hanya-baca. | Pengguna hanya-baca `APP_read` akan digunakan untuk melakukan operasi hanya-baca dalam skema. `APP` Gunakan skrip berikut untuk membuat pengguna hanya-baca. Validasi hak akses untuk memastikan bahwa pengguna ini memiliki hak istimewa hanya untuk membaca objek dalam skema `APP` dan untuk secara otomatis memberikan akses baca untuk objek baru yang dibuat dalam skema. `APP`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/create-application-users-and-roles-in-aurora-postgresql-compatible.html) | DBA | 
| Buat read/write pengguna. |  read/write Pengguna `APP_WRITE` akan digunakan untuk melakukan operasi baca dan tulis pada skema`APP`. Gunakan skrip berikut untuk membuat read/write pengguna dan berikan `APP_RW` perannya. Validasi hak akses untuk memastikan bahwa pengguna ini memiliki hak baca dan tulis hanya pada objek dalam skema `APP` dan untuk secara otomatis memberikan akses baca dan tulis untuk objek baru yang dibuat dalam skema. `APP`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/create-application-users-and-roles-in-aurora-postgresql-compatible.html) |  | 
| Buat pengguna admin. | Pengguna admin `Admin_User` akan digunakan untuk melakukan operasi admin pada database. Contoh operasi ini adalah `CREATE ROLE` dan`CREATE DATABASE`. `Admin_User`menggunakan peran bawaan `rds_superuser` untuk melakukan operasi admin pada database. Gunakan skrip berikut untuk membuat dan menguji hak istimewa bagi pengguna admin `Admin_User` dalam database.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/create-application-users-and-roles-in-aurora-postgresql-compatible.html) | DBA | 
| Buat pengguna pengembangan. | Pengguna pengembangan `APP_dev_user` akan memiliki hak untuk membuat objek dalam skema lokalnya `APP_DEV` dan membaca akses dalam skema`APP`. Gunakan skrip berikut untuk membuat dan menguji hak istimewa pengguna `APP_dev_user` dalam database.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/create-application-users-and-roles-in-aurora-postgresql-compatible.html) | DBA | 

## Sumber daya terkait
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-resources"></a>

**Dokumentasi PostgreSQL**
+ [BUAT PERAN](https://www.postgresql.org/docs/9.1/sql-createrole.html)
+ [BUAT PENGGUNA](https://www.postgresql.org/docs/8.0/sql-createuser.html)
+ [Peran yang telah ditentukan](https://www.postgresql.org/docs/14/predefined-roles.html)

 

## Informasi tambahan
<a name="create-application-users-and-roles-in-aurora-postgresql-compatible-additional"></a>

**PostgreSQL 14 peningkatan**

PostgreSQL 14 menyediakan seperangkat peran yang telah ditentukan sebelumnya yang memberikan akses ke kemampuan dan informasi tertentu yang umum dibutuhkan dan istimewa. Administrator (termasuk peran yang memiliki `CREATE ROLE` hak istimewa) dapat memberikan peran ini atau peran lain di lingkungan mereka kepada pengguna, memberi mereka akses ke kemampuan dan informasi yang ditentukan.

Administrator dapat memberikan pengguna akses ke peran ini menggunakan `GRANT` perintah. Misalnya, untuk memberikan `pg_signal_backend` peran`Admin_User`, Anda dapat menjalankan perintah berikut.

```
GRANT pg_signal_backend TO Admin_User;
```

`pg_signal_backend`Peran ini dimaksudkan untuk memungkinkan administrator mengaktifkan peran non-superuser tepercaya untuk mengirim sinyal ke backend lain. Untuk informasi lebih lanjut, lihat peningkatan [PostgreSQL 14](https://www.postgresql.org/docs/14/predefined-roles.html).

**Akses fine-tuning**

Dalam beberapa kasus, mungkin perlu menyediakan akses yang lebih terperinci ke pengguna (misalnya, akses berbasis tabel atau akses berbasis kolom). Dalam kasus seperti itu, peran tambahan dapat dibuat untuk memberikan hak istimewa tersebut kepada pengguna. Untuk informasi lebih lanjut, lihat Hibah [PostgreSQL](https://www.postgresql.org/docs/8.4/sql-grant.html).