Menyiapkan Directory Active yang Dikelola Sendiri - 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 Directory Active yang Dikelola Sendiri

Untuk mengatur AD yang Dikelola Sendiri, lakukan langkah-langkah berikut.

Langkah 1: Buat Unit Organisasi di AD Anda

penting

Sebaiknya buat kredensi OU dan layanan khusus yang tercakup pada OU tersebut untuk AWS akun apa pun yang memiliki instans RDS untuk SQL Server DB yang bergabung dengan domain AD yang dikelola sendiri. Dengan mengkhususkan kredensial OU dan layanan, Anda dapat menghindari izin yang bertentangan dan mengikuti prinsip hak akses paling rendah.

Untuk membuat OU di AD Anda
  1. Hubungkan ke domain AD Anda sebagai administrator domain.

  2. Buka Active Directory Users and Computers dan pilih domain tempat Anda ingin membuat OU Anda.

  3. Klik kanan domain dan pilih New, lalu Organizational Unit.

  4. Masukkan nama untuk OU.

  5. Biarkan kotak tetap dicentang untuk Protect container from accidental deletion.

  6. Klik OK. OU baru Anda akan muncul di bawah domain Anda.

Langkah 2: Buat pengguna domain AD di AD Anda

Kredensi pengguna domain akan digunakan untuk AWS rahasia di Secrets Manager.

Untuk membuat pengguna domain AD di AD Anda
  1. Buka Active Directory Users and Computers dan pilih domain dan OU tempat Anda ingin membuat pengguna Anda.

  2. Klik kanan objek Users dan pilih New, lalu User.

  3. Masukkan nama depan, nama belakang, dan nama login untuk pengguna. Klik Next.

  4. Masukkan kata sandi untuk pengguna. Jangan pilih "User must change password at next login". Jangan pilih "Account is disabled". Klik Next.

  5. Klik OK. Pengguna baru Anda akan muncul di bawah domain Anda.

Langkah 3: Delegasikan kontrol ke pengguna AD

Untuk mendelegasikan kontrol ke pengguna domain AD di domain Anda
  1. Buka snap-in MMC Active Directory Users and Computers dan pilih domain tempat Anda ingin membuat pengguna Anda.

  2. Klik kanan OU yang Anda buat sebelumnya dan pilih Delegate Control.

  3. Pada bagian Delegation of Control Wizard, klik Next.

  4. Pada bagian Users or Groups, klik Add.

  5. Pada bagian Select Users, Computers, or Groups, masukkan pengguna AD yang Anda buat lalu klik Check Names. Jika pemeriksaan pengguna AD Anda berhasil, klik OK.

  6. Pada bagian Users or Groups, konfirmasikan bahwa pengguna AD Anda telah ditambahkan lalu klik Next.

  7. Pada bagian Tasks to Delegate, pilih Create a custom task to delegate lalu klik Next.

  8. Pada bagian Active Directory Object Type:

    1. Pilih Only the following objects in the folder.

    2. Pilih Computer Objects.

    3. Pilih Create selected objects in this folder.

    4. Pilih Delete selected objects in this folder lalu klik Next.

  9. Pada bagian Permissions:

    1. Tetap pilih General.

    2. Pilih Validated write to DNS host name.

    3. Pilih Validated write to service principal name lalu klik Next.

  10. Untuk Completing the Delegation of Control Wizard, tinjau dan konfirmasikan pengaturan Anda lalu klik Finish.

Langkah 4: Buat AWS KMS kunci

Kunci KMS digunakan untuk mengenkripsi rahasia Anda AWS .

Untuk membuat AWS KMS kunci
catatan

Untuk Kunci Enkripsi, jangan gunakan kunci KMS AWS default. Pastikan untuk membuat AWS KMS kunci di AWS akun yang sama yang berisi instans RDS untuk SQL Server DB yang ingin Anda gabungkan ke AD yang dikelola sendiri.

  1. Di AWS KMS konsol, pilih tombol Buat.

  2. Untuk Tipe Kunci, pilih Simetris.

  3. Untuk Penggunaan Kunci, pilih Enkripsi dan dekripsi.

  4. Untuk Opsi lanjutan:

    1. Untuk Asal materi kunci, pilih KMS.

    2. Untuk Regionalitas, pilih Kunci Wilayah Tunggal lalu klik Berikutnya.

  5. Untuk Alias, berikan nama untuk kunci KMS.

  6. (Opsional) Untuk Deskripsi, berikan deskripsi kunci KMS.

  7. (Opsional) Untuk Tag, berikan tag kunci KMS lalu klik Berikutnya.

  8. Untuk Administrator kunci, berikan nama pengguna IAM dan pilih nama pengguna tersebut.

  9. Untuk Penghapusan kunci, biarkan kotak dipilih untuk Izinkan administrator kunci untuk menghapus kunci ini lalu klik Berikutnya.

  10. Untuk Pengguna kunci, berikan pengguna IAM yang sama dari langkah sebelumnya dan pilih nama pengguna tersebut. Klik Berikutnya.

  11. Tinjau konfigurasi tersebut.

  12. Untuk Kebijakan kunci, sertakan yang berikut pada Pernyataan kebijakan:

    { "Sid": "Allow use of the KMS key on behalf of RDS", "Effect": "Allow", "Principal": { "Service": [ "rds.amazonaws.com" ] }, "Action": "kms:Decrypt", "Resource": "*" }
  13. Klik Selesai.

Langkah 5: Buat AWS rahasia

Untuk membuat rahasia
catatan

Pastikan untuk membuat rahasia di AWS akun yang sama yang berisi instans RDS untuk SQL Server DB yang ingin Anda gabungkan ke AD yang dikelola sendiri.

  1. Di AWS Secrets Manager, pilih Simpan rahasia baru.

  2. Untuk Tipe rahasia, pilih Tipe rahasia lainnya.

  3. Untuk Pasangan kunci/nilai, tambahkan dua kunci Anda:

    1. Untuk kunci pertama, masukkan SELF_MANAGED_ACTIVE_DIRECTORY_USERNAME.

    2. Untuk nilai kunci pertama, masukkan hanya nama pengguna (tanpa awalan domain) dari pengguna AD. Jangan sertakan nama domain karena ini menyebabkan pembuatan instance gagal.

    3. Untuk kunci kedua, masukkan SELF_MANAGED_ACTIVE_DIRECTORY_PASSWORD.

    4. Untuk nilai kunci kedua, masukkan kata sandi yang Anda buat untuk pengguna AD di domain Anda.

  4. Untuk Kunci enkripsi, masukkan kunci KMS yang Anda buat pada langkah sebelumnya lalu klik Berikutnya.

  5. Untuk Nama rahasia, masukkan nama deskriptif yang akan membantu Anda menemukan rahasia Anda nanti.

  6. (Opsional) Untuk Deskripsi, masukkan deskripsi untuk nama rahasia.

  7. Untuk Izin sumber daya, klik Edit.

  8. Tambahkan kebijakan berikut ke kebijakan izin:

    catatan

    Kami menyarankan Anda menggunakan kondisi aws:sourceAccount dan aws:sourceArn dalam kebijakan untuk menghindari masalah confused deputy. Gunakan Akun AWS untuk aws:sourceAccount dan RDS untuk SQL Server DB instance ARN untuk. aws:sourceArn Untuk informasi selengkapnya, lihat Pencegahan masalah confused deputy lintas layanan.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*", "Condition": { "StringEquals": { "aws:sourceAccount": "123456789012" }, "ArnLike": { "aws:sourceArn": "arn:aws:rds:us-west-2:123456789012:db:*" } } } ] }
  9. Klik Simpan lalu klik Berikutnya.

  10. Untuk Konfigurasikan pengaturan rotasi, pertahankan nilai default dan pilih Berikutnya.

  11. Tinjau pengaturan untuk rahasia lalu klik Simpan.

  12. Pilih rahasia yang Anda buat dan salin nilai ARN Rahasia. Nilai ini akan digunakan pada langkah berikutnya untuk mengatur Directory Active yang dikelola sendiri.

Langkah 6: Buat atau ubah instans DB SQL Server

Anda dapat menggunakan konsol, CLI, atau API RDS untuk SQL Server dengan domain AD yang dikelola sendiri. Anda dapat melakukannya dengan salah satu cara berikut:

Saat Anda menggunakan AWS CLI, parameter berikut diperlukan agar instans DB dapat menggunakan domain Active Directory yang dikelola sendiri yang Anda buat:

  • Untuk parameter --domain-fqdn, gunakan nama domain yang sepenuhnya memenuhi syarat (FQDN) dari Directory Active Anda yang dikelola sendiri.

  • Untuk parameter --domain-ou, gunakan OU yang Anda buat di AD yang dikelola sendiri.

  • Untuk parameter --domain-auth-secret-arn, gunakan nilai ARN Rahasia yang Anda buat pada langkah sebelumnya.

  • Untuk --domain-dns-ips parameter, gunakan IPv4 alamat primer dan sekunder server DNS untuk AD yang dikelola sendiri. Jika Anda tidak memiliki alamat IP server DNS sekunder, masukkan alamat IP primer dua kali.

Contoh perintah CLI berikut menunjukkan cara membuat, memodifikasi, dan menghapus instans DB RDS for SQL Server dengan domain AD yang dikelola sendiri.

penting

Jika Anda memodifikasi instans DB untuk menggabungkannya ke atau menghapusnya dari domain AD yang dikelola sendiri, boot ulang instans DB tersebut diperlukan agar modifikasi diterapkan. Anda dapat memilih untuk segera menerapkan perubahan atau menunggu hingga periode pemeliharaan berikutnya. Memilih opsi Terapkan Segera akan menyebabkan waktu henti untuk instans DB AZ Tunggal. Instans DB Multi-AZ akan melakukan failover sebelum menyelesaikan boot ulang. Untuk informasi selengkapnya, lihat Menggunakan pengaturan modifikasi jadwal.

Perintah CLI berikut membuat RDS baru untuk instans DB SQL Server dan menggabungkannya ke domain AD yang dikelola sendiri.

Untuk Linux, macOS, atau Unix:

aws rds create-db-instance \ --db-instance-identifier my-DB-instance \ --db-instance-class db.m5.xlarge \ --allocated-storage 50 \ --engine sqlserver-se \ --engine-version 15.00.4043.16.v1 \ --license-model license-included \ --master-username my-master-username \ --master-user-password my-master-password \ --domain-fqdn my_AD_domain.my_AD.my_domain \ --domain-ou OU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain \ --domain-auth-secret-arn "arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456" \ --domain-dns-ips "10.11.12.13" "10.11.12.14"

Untuk Windows:

aws rds create-db-instance ^ --db-instance-identifier my-DB-instance ^ --db-instance-class db.m5.xlarge ^ --allocated-storage 50 ^ --engine sqlserver-se ^ --engine-version 15.00.4043.16.v1 ^ --license-model license-included ^ --master-username my-master-username ^ --master-user-password my-master-password ^ --domain-fqdn my-AD-test.my-AD.mydomain ^ --domain-ou OU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain ^ --domain-auth-secret-arn "arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456" \ ^ --domain-dns-ips "10.11.12.13" "10.11.12.14"

Perintah CLI berikut memodifikasi RDS yang ada untuk instans DB SQL Server untuk menggunakan domain Active Directory yang dikelola sendiri.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-instance \ --db-instance-identifier my-DB-instance \ --domain-fqdn my_AD_domain.my_AD.my_domain \ --domain-ou OU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain \ --domain-auth-secret-arn "arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456" \ --domain-dns-ips "10.11.12.13" "10.11.12.14"

Untuk Windows:

aws rds modify-db-instance ^ --db-instance-identifier my-DBinstance ^ --domain-fqdn my_AD_domain.my_AD.my_domain ^ --domain-ou OU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain ^ --domain-auth-secret-arn "arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456" ^ --domain-dns-ips "10.11.12.13" "10.11.12.14"

Perintah CLI berikut menghapus DB RDS for SQL Server instans dari domain Active Directory yang dikelola sendiri.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-instance \ --db-instance-identifier my-DB-instance \ --disable-domain

Untuk Windows:

aws rds modify-db-instance ^ --db-instance-identifier my-DB-instance ^ --disable-domain

Langkah 7: Buat login SQL Server Autentikasi Windows

Gunakan kredensial pengguna master Amazon RDS untuk terhubung ke instans basis data SQL Server sebagaimana Anda lakukan dengan instans DB lain. Karena instans DB digabungkan ke domain AD yang dikelola sendiri, Anda dapat menyediakan login dan pengguna SQL Server. Anda melakukannya dari utilitas pengguna dan grup AD di domain AD yang dikelola sendiri. Izin basis data dikelola melalui izin SQL Server standar yang diberikan dan dicabut ke login Windows ini.

Agar pengguna AD yang dikelola sendiri dapat mengautentikasi dengan SQL Server, login Windows SQL Server harus ada untuk pengguna AD yang dikelola sendiri tersebut atau grup Directory Active yang dikelola sendiri tempat pengguna tersebut menjadi anggota. Kontrol akses fine-grained akan ditangani melalui pemberian dan pencabutan izin pada login SQL Server ini. Pengguna AD yang dikelola sendiri yang tidak memiliki login SQL Server atau yang tidak termasuk dalam grup AD yang dikelola sendiri dengan login tersebut tidak akan dapat mengakses instans DB SQL Server.

Izin ALTER ANY LOGIN diperlukan untuk membuat login SQL Server AD yang dikelola sendiri. Jika Anda belum membuat login apa pun dengan izin ini, hubungkan sebagai pengguna master instans DB menggunakan Autentikasi SQL Server dan buat login SQL Server AD yang dikelola sendiri dalam konteks pengguna master.

Anda dapat menjalankan perintah bahasa definisi data (DDL) berikut untuk membuat login SQL Server untuk pengguna atau grup AD yang dikelola sendiri.

catatan

Tentukan pengguna dan grup yang menggunakan nama login pra-Windows 2000 dalam format my_AD_domain\my_AD_domain_user. Anda tidak dapat menggunakan nama prinsipal pengguna (UPN) dalam format my_AD_domain_user@my_AD_domain.

USE [master] GO CREATE LOGIN [my_AD_domain\my_AD_domain_user] FROM WINDOWS WITH DEFAULT_DATABASE = [master], DEFAULT_LANGUAGE = [us_english]; GO

Untuk informasi selengkapnya, lihat CREATE LOGIN (Transact-SQL) dalam dokumentasi Microsoft Developer Network.

Pengguna (baik manusia maupun aplikasi) dari domain Anda kini dapat terhubung ke instans RDS for SQL Server dari mesin klien yang tergabung dengan domain AD yang dikelola sendiri menggunakan autentikasi Windows.