Menyiapkan otentikasi Kerberos untuk cluster Aurora My DB SQL - Amazon Aurora

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

Menyiapkan otentikasi Kerberos untuk cluster Aurora My DB SQL

Gunakan AWS Managed Microsoft AD untuk mengatur otentikasi Kerberos untuk cluster Aurora My DB. SQL Untuk menyiapkan autentikasi Kerberos, lakukan langkah berikut.

Langkah 1: Buat direktori menggunakan AWS Managed Microsoft AD

AWS Directory Service membuat Direktori Aktif yang dikelola sepenuhnya di AWS Cloud. Saat Anda membuat AWS Managed Microsoft AD direktori, AWS Directory Service buat dua pengontrol domain dan server Domain Name System (DNS) atas nama Anda. Server direktori dibuat dalam subnet yang berbeda di 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 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.

    catatan

    Pastikan untuk menyimpan kata sandi ini. AWS Directory Service tidak menyimpannya. Anda dapat mengaturnya ulang, tetapi tidak dapat mengambilnya.

  • Membuat grup keamanan untuk pengontrol direktori.

Saat Anda meluncurkan AWS Managed Microsoft AD, AWS buat Unit Organisasi (OU) yang berisi semua objek direktori Anda. OU ini memiliki BIOS nama Net yang Anda masukkan ketika Anda membuat direktori Anda. Itu terletak di root domain, yang dimiliki dan dikelola oleh AWS.

AdminAkun yang dibuat dengan AWS Managed Microsoft AD direktori Anda memiliki izin untuk kegiatan administratif yang paling umum untuk OU Anda, termasuk:

  • Membuat, memperbarui, atau menghapus pengguna

  • Tambahkan sumber daya ke domain Anda, seperti server file atau server cetak, kemudian tetapkan izin untuk sumber daya itu kepada pengguna di OU Anda

  • Buat OUs dan kontainer tambahan

  • Melimpahkan kewenangan

  • Memulihkan objek-objek yang dihapus dari Keranjang Sampah Active Directory

  • 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

  • Melihat log peristiwa keamanan

Untuk membuat direktori dengan AWS Managed Microsoft AD
  1. Masuk ke AWS Management Console dan buka AWS Directory Service konsol di https://console.aws.amazon.com/directoryservicev2/.

  2. Di panel navigasi, pilih Direktori, lalu pilih Siapkan direktori.

  3. Pilih AWS Managed Microsoft AD. AWS Managed Microsoft AD adalah satu-satunya pilihan yang saat ini dapat Anda gunakan dengan AmazonRDS.

  4. Masukkan informasi berikut:

    Nama Directory DNS

    Nama berkualifikasi penuh untuk direktori, seperti corp.example.com.

    BIOSNama Direktori Net

    Nama singkat untuk direktori, seperti CORP.

    Deskripsi direktori

    (Opsional) Deskripsi untuk direktori.

    Kata sandi admin

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

    Kata sandi administrator direktori dan tidak boleh menyertakan kata “admin”. Kata sandi bersifat peka kapital dan harus terdiri atas 8–64 karakter. Kata sandi juga harus berisi setidaknya satu karakter dari tiga di antara empat kategori berikut:

    • Huruf kecil (a-z)

    • Huruf besar (A-Z)

    • Angka (0–9)

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

    Konfirmasikan kata sandi

    Kata sandi administrator dimasukkan kembali.

  5. Pilih Selanjutnya.

  6. Masukkan informasi berikut di bagian Jaringan, lalu pilih Berikutnya:

    VPC

    VPCUntuk direktori. Buat cluster Aurora My SQL DB dalam hal yang sama. VPC

    Subnet

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

  7. Tinjau informasi direktori dan buat perubahan yang diperlukan. Jika informasi sudah benar, pilih Buat direktori.

    Halaman detail direktori selama pembuatan

Dibutuhkan beberapa menit untuk membuat direktori. Setelah direktori berhasil dibuat, nilai Status berubah menjadi Aktif.

Untuk melihat informasi tentang direktori Anda, pilih nama direktori di daftar direktori. Perhatikan nilai ID Direktori karena Anda memerlukan nilai ini saat membuat atau memodifikasi klaster Aurora My SQL DB Anda.

ID Direktori di halaman detail Direktori

Langkah 2: (Opsional) Buat kepercayaan untuk Active Directory on-premise

Jika Anda tidak berencana menggunakan Microsoft Active Directory on-premise Anda sendiri, langsung lompat ke Langkah 3: Buat IAM peran untuk digunakan oleh Amazon Aurora.

Untuk menggunakan autentikasi Kerberos dengan Active Directory lokal, Anda perlu membuat hubungan domain yang dapat dipercaya menggunakan trust hutan antara Microsoft Active Directory lokal dan direktori (dibuat di AWS Managed Microsoft AD ). Langkah 1: Buat direktori menggunakan AWS Managed Microsoft AD Kepercayaan dapat bersifat satu arah, di mana direktori AWS Managed Microsoft AD mempercayai Microsoft Active Directory on-premise. Kepercayaan juga dapat bersifat dua arah, di mana kedua Active Directory saling mempercayai. Untuk informasi selengkapnya tentang menyiapkan trust menggunakan AWS Directory Service, lihat Kapan membuat hubungan kepercayaan di Panduan AWS Directory Service Administrasi.

catatan

Jika Anda menggunakan Microsoft Active Directory on-premise:

  • Klien Windows tidak dapat terhubung menggunakan titik akhir kustom Aurora. Untuk mempelajari selengkapnya, lihat Koneksi titik akhir Amazon Aurora.

  • Untuk basis data global:

    • Klien Windows dapat terhubung menggunakan titik akhir instans atau klaster di Wilayah AWS utama dari basis data global saja.

    • Klien Windows tidak dapat terhubung menggunakan titik akhir cluster di sekunder Wilayah AWS.

Pastikan nama domain Microsoft Active Directory lokal Anda menyertakan perutean DNS akhiran yang sesuai dengan hubungan kepercayaan yang baru dibuat. Tangkapan layar berikut menunjukkan sebuah contoh.

DNSrouting sesuai dengan kepercayaan yang dibuat

Langkah 3: Buat IAM peran untuk digunakan oleh Amazon Aurora

Agar Amazon Aurora memanggil AWS Directory Service Anda, Anda memerlukan peran AWS Identity and Access Management (IAM) yang menggunakan kebijakan terkelolaIAM. AmazonRDSDirectoryServiceAccess Peran ini memungkinkan Aurora untuk melakukan panggilan ke AWS Directory Service.

Saat Anda membuat cluster DB menggunakan AWS Management Console, dan Anda memiliki iam:CreateRole izin, konsol akan membuat peran ini secara otomatis. Dalam hal ini, nama perannya adalah rds-directoryservice-kerberos-access-role. Jika tidak, Anda harus membuat IAM peran secara manual. Saat Anda membuat IAM peran ini, pilihDirectory Service, dan lampirkan kebijakan AWS terkelola AmazonRDSDirectoryServiceAccess padanya.

Untuk informasi selengkapnya tentang membuat IAM peran untuk layanan, lihat Membuat peran untuk mendelegasikan izin ke AWS layanan di IAMPanduan Pengguna.

Secara opsional, Anda dapat membuat kebijakan dengan izin yang diperlukan alih-alih menggunakan kebijakan terkelolaIAM. AmazonRDSDirectoryServiceAccess Dalam hal ini, IAM peran harus memiliki kebijakan IAM kepercayaan berikut.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "directoryservice.rds.amazonaws.com", "rds.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Peran tersebut juga harus memiliki kebijakan IAM peran berikut.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ds:DescribeDirectories", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:GetAuthorizedApplicationDetails" ], "Effect": "Allow", "Resource": "*" } ] }

Langkah 4: Buat dan konfigurasikan pengguna

Anda dapat membuat pengguna dengan alat Pengguna Active Directory dan Komputer. Alat ini bagian dari alat-alat Active Directory Domain Services dan Active Directory Lightweight Directory Services. Pengguna mewakili orang atau entitas individual yang memiliki akses ke direktori Anda.

Untuk membuat pengguna di AWS Directory Service direktori, Anda menggunakan EC2 instans lokal atau Amazon berdasarkan Microsoft Windows yang digabungkan ke AWS Directory Service direktori Anda. Anda harus login ke instans sebagai pengguna yang memiliki hak istimewa untuk membuat pengguna. Untuk informasi selengkapnya, lihat Mengelola pengguna dan grup di AWS Managed Microsoft AD di Panduan Administrasi Layanan Direktori AWS .

Langkah 5: Buat atau modifikasi cluster Aurora My DB SQL

Buat atau modifikasi cluster Aurora My SQL DB untuk digunakan dengan direktori Anda. Anda dapat menggunakan konsol, AWS CLI, atau RDS API untuk mengaitkan cluster DB dengan direktori. Anda dapat melakukan tugas ini dengan salah satu cara berikut:

Otentikasi Kerberos hanya didukung untuk cluster Aurora My SQL DB di file. VPC Cluster DB bisa VPC sama dengan direktori, atau berbedaVPC. Cluster DB VPC harus memiliki grup VPC keamanan yang memungkinkan komunikasi keluar ke direktori Anda.

Saat Anda menggunakan konsol untuk membuat, memodifikasi, atau memulihkan klaster DB, pilih Autentikasi Kerberos di bagian Autentikasi basis data. Pilih Jelajah Direktori lalu pilih direktori, atau pilih Buat direktori baru.

Pengaturan autentikasi Kerberos saat membuat klaster DB

Saat Anda menggunakan AWS CLI or RDSAPI, kaitkan cluster DB dengan direktori. Parameter berikut diperlukan agar klaster DB dapat menggunakan direktori domain yang Anda buat:

  • Untuk parameter --domain, gunakan pengidentifikasi domain (pengidentifikasi "d-*") 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 cluster DB untuk menggunakan direktori.

Untuk Linux, macOS, atau Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --domain d-ID \ --domain-iam-role-name role-name

Untuk Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --domain d-ID ^ --domain-iam-role-name role-name
penting

Jika Anda memodifikasi klaster DB untuk mengaktifkan autentikasi Kerberos, lakukan boot ulang terhadap instans DB pembaca setelah melakukan perubahan.

Langkah 6: Buat Aurora SQL Pengguna saya yang menggunakan otentikasi Kerberos

Cluster DB bergabung ke AWS Managed Microsoft AD domain. Dengan demikian, Anda dapat membuat pengguna Aurora My dari SQL pengguna Active Directory di domain Anda. Izin database dikelola melalui izin Aurora SQL My standar yang diberikan kepada dan dicabut dari pengguna ini.

Anda dapat mengizinkan pengguna Active Directory untuk mengautentikasi dengan SQL Aurora My. Untuk melakukan ini, pertama-tama gunakan kredensyal pengguna RDS utama Amazon untuk terhubung ke cluster Aurora My SQL DB seperti halnya cluster DB lainnya. Setelah Anda masuk, buat pengguna yang diautentikasi secara eksternal dengan otentikasi Kerberos di Aurora My seperti yang ditunjukkan di sini: SQL

CREATE USER user_name@'host_name' IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name';
  • Ganti user_name dengan nama pengguna. Pengguna (baik manusia maupun aplikasi) dari domain Anda sekarang dapat terhubung ke klaster DB dari mesin klien yang digabungkan ke domain menggunakan autentikasi Kerberos.

  • Ganti host_name dengan nama host. Anda dapat menggunakan % sebagai wildcard. Anda juga dapat menggunakan alamat IP tertentu untuk nama host.

  • Ganti realm_name dengan nama ranah direktori domain. Nama ranah biasanya sama dengan nama DNS domain dalam huruf besar, seperti. CORP.EXAMPLE.COM Realm adalah sekelompok sistem yang menggunakan Pusat Distribusi Kunci Kerberos yang sama.

Contoh berikut ini menciptakan pengguna basis data dengan nama Admin yang mengautentikasi terhadap Active Directory dengan nama realm MYSQL.LOCAL.

CREATE USER Admin@'%' IDENTIFIED WITH 'authentication_kerberos' BY 'MYSQL.LOCAL';

Memodifikasi Aurora yang ada Login saya SQL

Anda juga dapat memodifikasi SQL login Aurora My yang ada untuk menggunakan otentikasi Kerberos dengan menggunakan sintaks berikut:

ALTER USER user_name IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name';

Langkah 7: Konfigurasikan SQL klien saya

Untuk mengkonfigurasi SQL klien Saya, lakukan langkah-langkah berikut:

  1. Buat file krb5.conf (atau yang setara) untuk menunjuk ke domain.

  2. Verifikasi bahwa lalu lintas dapat mengalir antara host klien dan AWS Directory Service. Gunakan utilitas jaringan seperti Netcat, untuk tugas-tugas berikut:

    • Verifikasi lalu lintas DNS untuk port 53.

    • Verifikasi lalu lintas di atasTCP/UDPuntuk port 53 dan untuk Kerberos, yang mencakup port 88 dan 464 untuk. AWS Directory Service

  3. Periksa bahwa lalu lintas dapat mengalir antara host klien dan instans basis data melalui port basis data. Misalnya, gunakan mysql untuk menghubungkan dan mengakses basis data.

Berikut ini adalah contoh krb5.conf konten untuk AWS Managed Microsoft AD.

[libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = example.com admin_server = example.com } [domain_realm] .example.com = EXAMPLE.COM example.com = EXAMPLE.COM

Berikut ini adalah contoh konten krb5.conf untuk Microsoft Active Directory on-premise.

[libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = example.com admin_server = example.com } ONPREM.COM = { kdc = onprem.com admin_server = onprem.com } [domain_realm] .example.com = EXAMPLE.COM example.com = EXAMPLE.COM .onprem.com = ONPREM.COM onprem.com = ONPREM.COM .rds.amazonaws.com = EXAMPLE.COM .amazonaws.com.cn = EXAMPLE.COM .amazon.com = EXAMPLE.COM

Langkah 8: (Opsional) Lakukan konfigurasi perbandingan nama pengguna yang tidak peka huruf besar/kecil

Secara default, kasus karakter dari nama pengguna SQL database Saya harus cocok dengan login Direktori Aktif. Namun, Anda sekarang dapat menggunakan perbandingan nama pengguna yang tidak peka huruf besar/kecil dengan plugin authentication_kerberos. Untuk melakukannya, Anda mengatur parameter klaster DB authentication_kerberos_caseins_cmp ke true.

Menggunakan perbandingan nama pengguna yang tidak peka huruf besar/kecil
  1. Buat grup parameter klaster DB kustom. Ikuti prosedur di Membuat grup parameter cluster DB di Amazon Aurora.

  2. Edit grup parameter baru untuk mengatur nilai authentication_kerberos_caseins_cmp ke true. Ikuti prosedur di Memodifikasi parameter dalam grup parameter cluster DB di Amazon Aurora.

  3. Kaitkan grup parameter cluster DB dengan cluster Aurora My SQL DB Anda. Ikuti prosedur di Mengaitkan grup parameter cluster DB dengan cluster DB di Amazon Aurora.

  4. Boot ulang klaster DB.