Menyiapkan pencadangan dan pemulihan native - Layanan Basis Data Relasional Amazon

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

Menyiapkan pencadangan dan pemulihan native

Untuk mengatur pencadangan dan pemulihan native, Anda memerlukan tiga komponen:

  1. Bucket Amazon S3 untuk menyimpan file cadangan Anda.

    Anda harus memiliki bucket S3 untuk digunakan untuk file cadangan Anda dan kemudian mengunggah cadangan yang ingin Anda migrasikan. RDS Jika sudah memiliki bucket Amazon S3, Anda dapat menggunakannya. Jika tidak, Anda dapat membuat bucket. Atau, Anda dapat memilih untuk dibuatkan bucket baru untuk Anda saat menambahkan opsi SQLSERVER_BACKUP_RESTORE dengan menggunakan AWS Management Console.

    Untuk informasi tentang penggunaan S3, lihat Panduan Pengguna Amazon Simple Storage Service

  2. Peran AWS Identity and Access Management (IAM) untuk mengakses bucket.

    Jika Anda sudah memiliki IAM peran, Anda dapat menggunakannya. Anda dapat memilih untuk memiliki IAM peran baru yang dibuat untuk Anda ketika Anda menambahkan SQLSERVER_BACKUP_RESTORE opsi dengan menggunakan AWS Management Console. Atau, Anda dapat membuatnya secara manual.

    Jika Anda ingin membuat IAM peran baru secara manual, ambil pendekatan yang dibahas di bagian selanjutnya. Lakukan hal yang sama jika Anda ingin melampirkan kebijakan hubungan kepercayaan dan izin ke IAM peran yang ada.

  3. Opsi SQLSERVER_BACKUP_RESTORE ditambahkan ke grup opsi di instans DB Anda.

    Untuk mengaktifkan pencadangan dan pemulihan native pada instans DB Anda, tambahkan opsi SQLSERVER_BACKUP_RESTORE untuk kelompok opsi pada instans DB Anda. Untuk informasi dan petunjuk selengkapnya, silakan lihat Dukungan untuk pencadangan dan pemulihan native di SQL Server.

Membuat IAM peran secara manual untuk pencadangan dan pemulihan asli

Jika Anda ingin membuat IAM peran baru secara manual untuk digunakan dengan cadangan dan pemulihan asli, Anda dapat melakukannya. Dalam hal ini, Anda membuat peran untuk mendelegasikan izin dari RDS layanan Amazon ke bucket Amazon S3 Anda. Saat membuat IAM peran, Anda melampirkan hubungan kepercayaan dan kebijakan izin. Hubungan kepercayaan memungkinkan RDS untuk mengambil peran ini. Kebijakan izin menentukan tindakan yang dapat dilakukan peran ini. Untuk informasi selengkapnya tentang pembuatan peran, lihat Membuat peran untuk mendelegasikan izin ke layanan AWS.

Untuk fitur pencadangan dan pemulihan native, gunakan hubungan kepercayaan dan kebijakan perizinan yang serupa dengan contoh dalam bagian ini. Dalam contoh berikut, kami menggunakan nama pengguna utama layanan rds.amazonaws.com sebagai alias untuk semua akun layanan. Dalam contoh lain, kami menentukan Amazon Resource Name (ARN) untuk mengidentifikasi akun, pengguna, atau peran lain yang kami berikan akses dalam kebijakan kepercayaan.

Sebaiknya gunakan kunci konteks kondisi global aws:SourceArn dan aws:SourceAccount dalam hubungan kepercayaan berbasis sumber daya untuk membatasi izin layanan ke sumber daya tertentu. Ini adalah cara yang paling efektif untuk melindungi dari masalah confused deputy.

Anda dapat menggunakan kedua kunci konteks kondisi global tersebut dan nilai aws:SourceArn berisi ID akun. Dalam hal ini, nilai aws:SourceAccount dan akun dalam nilai aws:SourceArn harus menggunakan ID akun yang sama saat digunakan dalam pernyataan yang sama.

  • Gunakan aws:SourceArn jika Anda menginginkan akses lintas layanan untuk satu sumber daya.

  • Gunakan aws:SourceAccount jika Anda ingin mengizinkan sumber daya apa pun di akun tersebut dikaitkan dengan penggunaan lintas layanan.

Dalam hubungan kepercayaan, pastikan untuk menggunakan kunci konteks kondisi aws:SourceArn global dengan penuh ARN sumber daya yang mengakses peran. Untuk pencadangan dan pemulihan native, pastikan untuk menyertakan grup opsi DB dan instans DB, seperti yang ditunjukkan dalam contoh berikut.

contoh hubungan kepercayaan dengan kunci konteks kondisi global untuk pencadangan dan pemulihan asli
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:s3:::amzn-s3-demo-bucket", "aws:SourceAccount": "0123456789" } } } ] }

Contoh berikut menggunakan ARN untuk menentukan sumber daya. Untuk informasi selengkapnya tentang penggunaanARNs, lihat nama sumber daya Amazon (ARNs).

contoh kebijakan izin untuk pencadangan dan pemulihan asli tanpa dukungan enkripsi
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket" }, { "Effect": "Allow", "Action": [ "s3:GetObjectAttributes", "s3:GetObject", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }
contoh kebijakan perizinan untuk pencadangan dan pemulihan native dengan didukung enkripsi

Jika Anda ingin mengenkripsi file backup, sertakan kunci enkripsi dalam kebijakan perizinan Anda. Untuk informasi kunci enkripsi selengkapnya, lihat Memulai di Panduan Developer AWS Key Management Service .

catatan

Anda harus menggunakan KMS kunci enkripsi simetris untuk mengenkripsi cadangan Anda. Amazon RDS tidak mendukung KMS kunci asimetris. Untuk informasi selengkapnya, lihat Membuat KMS kunci enkripsi simetris di Panduan AWS Key Management Service Pengembang.

IAMPeran juga harus menjadi pengguna kunci dan administrator kunci untuk KMS kunci, yaitu, itu harus ditentukan dalam kebijakan kunci. Untuk informasi selengkapnya, lihat Membuat KMS kunci enkripsi simetris di Panduan AWS Key Management Service Pengembang.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Encrypt", "kms:Decrypt" ], "Resource": "arn:aws:kms:region:account-id:key/key-id" }, { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket" }, { "Effect": "Allow", "Action": [ "s3:GetObjectAttributes", "s3:GetObject", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }