Menyiapkan Otentikasi Windows untuk instans SQL Server DB - 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 Otentikasi Windows untuk instans SQL Server DB

Anda menggunakan AWS Directory Service for Microsoft Active Directory, juga disebut AWS Managed Microsoft AD, untuk mengatur Otentikasi Windows untuk instance SQL Server DB. Untuk mengatur Autentikasi Windows, lakukan langkah-langkah berikut.

Langkah 1: Buat direktori menggunakan AWS Directory Service for Microsoft Active Directory

AWS Directory Service membuat Microsoft Active Directory yang dikelola sepenuhnya di AWS Cloud. Saat Anda membuat AWS Managed Microsoft AD direktori, AWS Directory Service buat dua pengontrol domain dan server Layanan Nama Domain (DNS) atas nama Anda. Server direktori dibuat dalam dua subnet di dua Availability Zone yang berbeda dalam file. VPC Redundansi ini membantu memastikan bahwa direktori Anda tetap dapat diakses meskipun terjadi kegagalan.

Saat Anda membuat AWS Managed Microsoft AD direktori, AWS Directory Service lakukan tugas-tugas berikut atas nama Anda:

  • Menyiapkan Microsoft Active Directory di dalam fileVPC.

  • Membuat akun administrator direktori dengan nama pengguna Admin dan kata sandi yang ditentukan. Anda menggunakan akun ini untuk mengelola direktori Anda.

  • Membuat grup keamanan untuk pengontrol direktori.

Saat Anda meluncurkan AWS Directory Service for Microsoft Active Directory, AWS buat Unit Organisasi (OU) yang berisi semua objek direktori Anda. OU ini, yang memiliki BIOS nama Net yang Anda ketik ketika Anda membuat direktori Anda, terletak di root domain. Root domain dimiliki dan dikelola oleh AWS.

Akun admin yang dibuat dengan direktori AWS Managed Microsoft AD Anda memiliki izin untuk aktivitas administratif paling umum untuk OU Anda:

  • Membuat, memperbarui, atau menghapus pengguna, grup, dan komputer.

  • Menambahkan sumber daya ke domain Anda seperti server file atau cetak, lalu memberikan izin untuk sumber daya tersebut ke pengguna dan grup di OU Anda.

  • Buat OUs tambahan dan kontainer.

  • Delegasikan otoritas.

  • Membuat dan menautkan kebijakan grup.

  • Memulihkan objek yang dihapus dari Keranjang Sampah Directory Active.

  • Jalankan PowerShell modul AD dan DNS Windows pada Layanan Web Direktori Aktif.

Akun admin juga memiliki hak untuk melakukan aktivitas di seluruh domain berikut:

  • Mengelola DNS konfigurasi (menambah, menghapus, atau memperbarui catatan, zona, dan forwarder).

  • Lihat log DNS peristiwa.

  • Lihat log peristiwa keamanan.

Untuk membuat direktori dengan AWS Managed Microsoft AD
  1. Di panel navigasi konsol AWS Directory Service, pilih Direktori, lalu pilih Siapkan direktori.

  2. Pilih AWS Managed Microsoft AD. Ini adalah satu-satunya opsi yang saat ini didukung untuk digunakan dengan AmazonRDS.

  3. Pilih Berikutnya.

  4. Di halaman Masukkan informasi direktori, berikan informasi berikut:

    Edisi

    Pilih edisi sesuai kebutuhan Anda.

    Nama Directory DNS

    Nama berkualifikasi penuh untuk direktori, seperti corp.example.com. Nama yang lebih panjang dari 47 karakter tidak didukung oleh SQL Server.

    BIOSNama Direktori Net

    Nama pendek opsional untuk direktori, seperti CORP.

    Deskripsi direktori

    Deskripsi opsional untuk direktori.

    Kata sandi admin

    Kata sandi untuk administrator direktori. Proses pembuatan direktori akan membuat akun administrator dengan nama pengguna Admin dan kata sandi ini.

    Kata sandi administrator direktori tidak dapat menyertakan kata admin. Kata sandi peka huruf besar/kecil dan harus memiliki panjang 8–64 karakter. Kata sandi juga harus berisi minimal satu karakter dalam tiga dari empat kategori berikut:

    • Huruf kecil (a-z)

    • Huruf besar (A-Z)

    • Angka (0-9)

    • Karakter non-alfanumerik (~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/)

    Konfirmasi kata sandi

    Ketik ulang kata sandi administrator.

  5. Pilih Berikutnya.

  6. Pada halaman Pilih VPC dan subnet, berikan informasi berikut:

    VPC

    Pilih VPC untuk direktori.

    catatan

    Anda dapat menemukan direktori dan instans DB secara berbedaVPCs, tetapi jika Anda melakukannya, pastikan untuk mengaktifkan lintas lalu VPC lintas. Untuk informasi selengkapnya, lihat Langkah 4: Aktifkan VPC lintas lintas antara direktori dan instans DB.

    Subnet

    Pilih subnet untuk server direktori. Kedua subnet harus berada di Zona Ketersediaan yang berbeda.

  7. Pilih Berikutnya.

  8. Tinjau informasi direktori. Jika perubahan diperlukan, pilih Sebelumnya. Jika informasi sudah benar, pilih Buat direktori.

    Periksa dan buat halaman

Pembuatan direktori memerlukan waktu beberapa menit. Setelah berhasil dibuat, nilai Status berubah menjadi Aktif.

Untuk melihat informasi tentang direktori Anda, pilih ID direktori di daftar direktori. Catat ID Direktori. Anda memerlukan nilai ini saat membuat atau memodifikasi instans SQL Server DB Anda.

Halaman detail direktori

Langkah 2: Buat IAM peran untuk digunakan oleh Amazon RDS

Jika Anda menggunakan konsol untuk membuat instance SQL Server DB, Anda dapat melewati langkah ini. Jika Anda menggunakan CLI atau RDS API untuk membuat instans SQL Server DB, Anda harus membuat IAM peran yang menggunakan IAM kebijakan AmazonRDSDirectoryServiceAccess terkelola. Peran ini memungkinkan Amazon RDS untuk melakukan panggilan ke AWS Directory Service untuk Anda.

Jika Anda menggunakan kebijakan khusus untuk bergabung dengan domain, daripada menggunakan AmazonRDSDirectoryServiceAccess kebijakan AWS-managed, pastikan Anda mengizinkan ds:GetAuthorizedApplicationDetails tindakan tersebut. Persyaratan ini berlaku mulai Juli 2019, karena perubahan dalam AWS Directory Service API.

IAMKebijakan berikut,AmazonRDSDirectoryServiceAccess, menyediakan akses ke AWS Directory Service.

contoh IAMkebijakan untuk menyediakan akses ke AWS Directory Service
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ds:DescribeDirectories", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:GetAuthorizedApplicationDetails" ], "Effect": "Allow", "Resource": "*" } ] }

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 Nama Sumber Daya Amazon (ARN) lengkap dari sumber daya yang mengakses peran. Untuk Autentikasi Windows, pastikan untuk menyertakan instans DB, seperti yang ditunjukkan pada contoh berikut.

contoh relasi kepercayaan dengan kunci konteks kondisi global untuk Autentikasi Windows
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceArn": [ "arn:aws:rds:Region:my_account_ID:db:db_instance_identifier" ] } } } ] }

Buat IAM peran menggunakan IAM kebijakan ini dan hubungan kepercayaan. Untuk informasi selengkapnya tentang membuat IAM peran, lihat Membuat kebijakan yang dikelola pelanggan di Panduan IAM Pengguna.

Langkah 3: Buat dan konfigurasikan pengguna dan grup

Anda dapat membuat pengguna dan grup dengan alat Active Directory Users and Computers. Alat ini merupakan salah satu alat Active Directory Domain Services dan Active Directory Lightweight Directory Services. Pengguna merepresentasikan orang individu atau entitas yang memiliki akses ke direktori Anda. Grup sangat berguna untuk memberikan atau menolak hak akses ke grup pengguna, daripada harus menerapkan hak akses tersebut ke setiap pengguna.

Untuk membuat pengguna dan grup dalam AWS Directory Service direktori, Anda harus terhubung ke EC2 instance Windows yang merupakan anggota AWS Directory Service direktori. Anda juga harus masuk sebagai pengguna yang memiliki hak akses untuk membuat pengguna dan grup. Untuk informasi selengkapnya, lihat Menambahkan pengguna dan grup (Simple AD dan AWS Managed Microsoft AD) di Panduan AWS Directory Service Administrasi.

Langkah 4: Aktifkan VPC lintas lintas antara direktori dan instans DB

Jika Anda berencana untuk menemukan direktori dan instans DB yang samaVPC, lewati langkah ini dan lanjutkan keLangkah 5: Membuat atau memodifikasi instance SQL Server DB.

Jika Anda berencana untuk menemukan direktori dan instans DB yang berbedaVPCs, konfigurasikan VPC lintas lintas menggunakan VPC peering atau AWS Transit Gateway.

Prosedur berikut memungkinkan lalu lintas antara VPCs menggunakan VPC peering. Ikuti instruksi di Apa itu VPC mengintip? di Panduan Peering Cloud Pribadi Amazon Virtual.

Untuk mengaktifkan lintas VPC lalu lintas menggunakan VPC peering
  1. Siapkan aturan VPC perutean yang sesuai untuk memastikan bahwa lalu lintas jaringan dapat mengalir dua arah.

  2. Pastikan grup keamanan instans DB dapat menerima lalu lintas masuk dari grup keamanan direktori.

  3. Pastikan tidak ada aturan daftar kontrol akses jaringan (ACL) untuk memblokir lalu lintas.

Jika AWS akun lain memiliki direktori, Anda harus berbagi direktori.

Untuk berbagi direktori antar AWS akun
  1. Mulai berbagi direktori dengan AWS akun tempat instans DB akan dibuat dengan mengikuti petunjuk di Tutorial: Berbagi AWS Managed Microsoft AD direktori Anda untuk EC2 domain-join yang mulus di Panduan Administrasi.AWS Directory Service

  2. Masuk ke AWS Directory Service konsol menggunakan akun untuk instans DB, dan pastikan domain memiliki SHARED status sebelum melanjutkan.

  3. Saat masuk ke AWS Directory Service konsol menggunakan akun untuk instans DB, perhatikan nilai ID Direktori. Anda menggunakan ID direktori ini untuk menggabungkan instans DB ke domain.

Langkah 5: Membuat atau memodifikasi instance SQL Server DB

Buat atau modifikasi instance SQL Server DB untuk digunakan dengan direktori Anda. Anda dapat menggunakan konsol,CLI, atau RDS API untuk mengaitkan instance DB dengan direktori. Anda dapat melakukannya dengan salah satu cara berikut:

Otentikasi Windows hanya didukung untuk instans SQL Server DB di file. VPC

Agar instans DB dapat menggunakan direktori domain yang Anda buat, hal berikut diperlukan:

  • Untuk Direktori, Anda harus memilih pengidentifikasi domain (d-ID) yang dibuat saat Anda membuat direktori.

  • Pastikan bahwa grup VPC keamanan memiliki aturan keluar yang memungkinkan instans DB berkomunikasi dengan direktori.

Direktori Otentikasi Microsoft SQL Server Windows

Saat Anda menggunakan AWS CLI, parameter berikut diperlukan agar instans DB dapat menggunakan direktori yang Anda buat:

  • Untuk parameter --domain, gunakan pengidentifikasi domain (d-ID) yang dihasilkan saat Anda membuat direktori.

  • Untuk --domain-iam-role-name parameter, gunakan peran yang Anda buat yang menggunakan IAM kebijakan terkelolaAmazonRDSDirectoryServiceAccess.

Misalnya, CLI perintah berikut memodifikasi instance DB untuk menggunakan direktori.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --domain d-ID \ --domain-iam-role-name role-name

Untuk Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --domain d-ID ^ --domain-iam-role-name role-name
penting

Jika Anda mengubah instans basis data untuk mengaktifkan autentikasi Kerberos, boot ulang instans basis data setelah membuat perubahan.

Langkah 6: Buat login Windows Authentication SQL Server

Gunakan kredenal pengguna RDS master Amazon untuk terhubung ke instans SQL Server DB seperti yang Anda lakukan pada instans DB lainnya. Karena instans DB bergabung dengan AWS Managed Microsoft AD domain, Anda dapat menyediakan login SQL Server dan pengguna. Anda melakukannya dari pengguna dan grup Active Directory di domain Anda. Izin database dikelola melalui izin SQL Server standar yang diberikan dan dicabut ke login Windows ini.

Untuk pengguna Active Directory untuk mengautentikasi dengan SQL SQL Server, login Server Windows harus ada untuk pengguna atau grup yang pengguna adalah anggota. Kontrol akses berbutir halus ditangani melalui pemberian dan pencabutan izin pada login Server ini. SQL Pengguna yang tidak memiliki login SQL Server atau termasuk dalam grup dengan login seperti itu tidak dapat mengakses instance SQL Server DB.

ALTERANYLOGINIzin diperlukan untuk membuat login Active Directory SQL Server. Jika Anda belum membuat login dengan izin ini, sambungkan sebagai pengguna utama instans DB menggunakan SQL Server Authentication.

Jalankan perintah data definition language (DDL) seperti contoh berikut untuk membuat login SQL Server untuk pengguna atau grup Active Directory.

catatan

Tentukan pengguna dan grup yang menggunakan nama login pra-Windows 2000 dalam format domainName\login_name. Anda tidak dapat menggunakan nama utama pengguna (UPN) dalam format login_name@DomainName.

Anda hanya dapat membuat login Otentikasi Windows pada instance RDS for SQL Server dengan menggunakan SQL pernyataan T-. Anda tidak dapat menggunakan studio Manajemen SQL Server untuk membuat login Otentikasi Windows.

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

Untuk informasi selengkapnya, lihat CREATELOGIN(Transact-SQL) di dokumentasi Microsoft Developer Network.

Pengguna (baik manusia maupun aplikasi) dari domain Anda sekarang dapat terhubung ke instance RDS for SQL Server dari mesin klien yang bergabung dengan domain menggunakan otentikasi Windows.