Menggunakan otentikasi IAM untuk titik akhir Amazon RDS di AWS DMS - AWS Layanan Migrasi Database

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

Menggunakan otentikasi IAM untuk titik akhir Amazon RDS di AWS DMS

AWS Autentikasi database Identity and Access Management (IAM) menyediakan keamanan yang ditingkatkan untuk database Amazon RDS Anda dengan mengelola akses database melalui kredensyal IAM. AWS Alih-alih menggunakan kata sandi database tradisional, otentikasi IAM menghasilkan token otentikasi berumur pendek, berlaku selama 15 menit, menggunakan kredensyal. AWS Pendekatan ini secara signifikan meningkatkan keamanan dengan menghilangkan kebutuhan untuk menyimpan kata sandi database dalam kode aplikasi, mengurangi risiko paparan kredensi, dan menyediakan manajemen akses terpusat melalui IAM. Ini juga menyederhanakan manajemen akses dengan memanfaatkan peran dan kebijakan AWS IAM yang ada, memungkinkan Anda untuk mengontrol akses database menggunakan kerangka IAM yang sama yang Anda gunakan untuk layanan lain. AWS

AWS DMS sekarang mendukung otentikasi IAM untuk instance replikasi yang menjalankan DMS versi 3.6.1 atau yang lebih baru saat menghubungkan ke MySQL, PostgreSQL, Aurora PostgreSQL, Aurora MySQL, atau titik akhir MariaDB di Amazon RDS. Saat membuat endpoint baru untuk mesin ini, Anda dapat memilih autentikasi IAM dan menentukan peran IAM alih-alih memberikan kredensyal database. Integrasi ini meningkatkan keamanan dengan menghilangkan kebutuhan untuk mengelola dan menyimpan kata sandi database untuk tugas migrasi Anda.

Mengonfigurasi otentikasi IAM untuk titik akhir Amazon RDS di AWS DMS

Saat membuat titik akhir, Anda dapat mengonfigurasi autentikasi IAM untuk database Amazon RDS Anda. Untuk mengonfigurasi otentikasi IAM, lakukan hal berikut:

AWS CLI

  1. Pastikan Amazon RDS dan pengguna database mengaktifkan autentikasi IAM. Untuk informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan autentikasi database IAM di panduan pengguna Amazon Relational Database Service.

  2. Arahkan ke AWS CLI, buat peran IAM, dan izinkan DMS untuk mengambil peran:

    Kebijakan:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "rds-db:connect" ], "Resource": [ "arn:aws:rds-db:<region>:<account-id>:dbuser:<db-identifier>/<username>" ] } ] }

    Kebijakan kepercayaan:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "dms.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  3. Jalankan perintah berikut untuk mengimpor sertifikat dan mengunduh file PEM. Untuk informasi selengkapnya, lihat Mengunduh bundel sertifikat untuk Amazon RDS di panduan pengguna Amazon Relational Database Service.

    aws dms import-certificate --certificate-identifier rdsglobal --certificate-pem file://~/global-bundle.pem
  4. Jalankan perintah berikut untuk membuat endpoint IAM:

    • Untuk titik akhir PostgreSQL/Aurora PostgreSQL (sslmodeKapan diatur required ke--certificate-arn, bendera tidak diperlukan):

      aws dms create-endpoint --endpoint-identifier <endpoint-name> --endpoint-type <source/target> --engine-name <postgres/aurora-postgres> --username <db username with iam auth privileges> --server-name <db server name> --port <port number> --ssl-mode <required/verify-ca/verify-full> --postgre-sql-settings "{\"ServiceAccessRoleArn\": \"role arn created from step 2 providing permissions for iam authentication\", \"AuthenticationMethod\": \"iam\", \"DatabaseName\": \"database name\"}" --certificate-arn <if sslmode is verify-ca/verify full use cert arn generated in step 3, otherwise this parameter is not required>
    • Untuk titik akhir MySQL, MariaDB, atau Aurora MySQL:

      aws dms create-endpoint --endpoint-identifier <endpoint-name> --endpoint-type <source/target> --engine-name <mysql/mariadb/aurora> --username <db username with iam auth privileges> --server-name <db server name> --port <port number> --ssl-mode <verify-ca/verify-full> --my-sql-settings "{\"ServiceAccessRoleArn\": \"role arn created from step 2 providing permissions for iam authentication\", \"AuthenticationMethod\": \"iam\", \"DatabaseName\": \"database name\"}" --certificate-arn <cert arn from previously imported cert in step 3>
  5. Jalankan koneksi pengujian terhadap instance replikasi yang Anda inginkan untuk membuat asosiasi titik akhir instance dan memverifikasi semuanya sudah diatur dengan benar:

    aws dms test-connection --replication-instance-arn <replication instance arn> --endpoint-arn <endpoint arn from previously created endpoint in step 4>
    catatan

    Saat menggunakan otentikasi IAM, instance replikasi yang disediakan dalam koneksi uji harus pada AWS DMS versi 3.6.1 atau yang lebih baru.

Batasan

AWS DMS memiliki batasan berikut saat menggunakan otentikasi IAM dengan titik akhir Amazon RDS:

  • Saat ini Amazon RDS PostgreSQL dan Amazon Aurora PostgreSQL instans tidak mendukung koneksi CDC dengan otentikasi IAM. Untuk informasi selengkapnya, lihat Batasan untuk autentikasi database IAM di Panduan Pengguna Amazon Relational Database Service.