使用 設定 Amazon RDS for Microsoft SQL Server 的 Windows 身分驗證 AWS Managed Microsoft AD - AWS 方案指引

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 設定 Amazon RDS for Microsoft SQL Server 的 Windows 身分驗證 AWS Managed Microsoft AD

Ramesh Babu Donti,Amazon Web Services

總結

此模式示範如何使用 AWS Directory Service for Microsoft Active Directory () 為 SQL Server 執行個體的 Amazon Relational Database Service (Amazon RDS) 設定 Windows 身分驗證AWS Managed Microsoft AD。Windows 身分驗證允許使用者使用其網域登入資料來連線至 RDS 執行個體,而不是資料庫特定的使用者名稱和密碼。

您可以在建立新的 RDS SQL Server 資料庫時啟用 Windows 身分驗證,或將其新增至現有的資料庫執行個體。資料庫執行個體與 整合 AWS Managed Microsoft AD ,為存取 SQL Server 資料庫的網域使用者提供集中式身分驗證和授權。

此組態透過利用現有的 Active Directory 基礎設施來增強安全性,無需為網域使用者管理單獨的資料庫登入資料。

先決條件和限制

先決條件

  • AWS 帳戶 具有適當許可的作用中

  • 具有下列項目的虛擬私有雲端 (VPC):

    • 設定的網際網路閘道和路由表

    • 公有子網路中的 NAT 閘道 (如果執行個體需要網際網路存取)

  • AWS Identity and Access Management (IAM) 角色:

    • 具有下列 AWS 受管政策的網域角色:

      • AmazonSSMManagedInstanceCore 以啟用 AWS Systems Manager

      • AmazonSSMDirectoryServiceAccess 提供將執行個體加入目錄的許可

    • RDS 增強型監控角色 (如果已啟用增強型監控)

  • 安全群組:

    • 目錄服務安全群組,以允許 Active Directory 通訊連接埠

    • Amazon Elastic Compute Cloud (Amazon EC2) 安全群組,允許 RDP 3389和網域通訊

    • 允許1433來自授權來源之 SQL Server 連接埠的 RDS 安全群組

  • 網路連接:

    • 子網路之間的適當 DNS 解析和網路連線

限制

Architecture

來源技術堆疊

  • 內部部署 Active Directory 或 AWS Managed Microsoft AD

目標技術堆疊

  • Amazon EC2

  • Amazon RDS for Microsoft SQL Server

  • AWS Managed Microsoft AD

目標架構

架構包含下列項目:

  • 將 Amazon EC2 執行個體加入 AWS Managed Microsoft AD 網域的 IAM 角色。

  • 用於資料庫管理和測試的 Amazon EC2 Windows 執行個體。

  • 具有私有子網路的 Amazon VPC,可跨可用區域託管 Amazon RDS 執行個體和內部資源。

  • 網路存取控制的安全群組:

    • Amazon RDS 安全群組,用於控制1433從授權來源對 SQL Server 連接埠的傳入存取。

    • 透過連接埠3389和網域通訊連接埠管理 RDP 存取的 Amazon EC2 安全群組。

    • 透過連接埠 5338988和 進行 Active Directory 通訊的 Directory Services 安全群組445

  • AWS Managed Microsoft AD 為 Windows 資源提供集中式身分驗證和授權服務。

  • 啟用 Windows 身分驗證之私有子網路中的 Amazon RDS for SQL Server 資料庫執行個體。

工具

AWS 服務

  • Amazon Elastic Compute Cloud (Amazon EC2) 在 AWS 雲端中提供可擴展的運算容量。您可以視需要啟動任意數量的虛擬伺服器,,並快速進行擴展或縮減。

  • Amazon Relational Database Service (Amazon RDS) 可協助您在 中設定、操作和擴展關聯式資料庫 AWS 雲端。

  • AWS Directory Service 提供多種搭配其他 使用 Microsoft Active Directory (AD) 的方式, AWS 服務 例如 Amazon Elastic Compute Cloud (Amazon EC2)、適用於 SQL Server 的 Amazon Relational Database Service (Amazon RDS) 和適用於 Windows File Server 的 Amazon FSx。

  • AWS Directory Service for Microsoft Active Directory 可讓您的目錄感知工作負載 AWS 和資源在 中使用 Microsoft Active Directory AWS 雲端。

  • AWS Identity and Access Management (IAM) 透過控制已驗證並獲授權使用的人員,協助您安全地管理對 AWS 資源的存取。

其他服務

最佳實務

史詩

任務Description所需的技能

設定目錄類型。

  1. 從 AWS 管理主控台導覽至 AWS Directory Service

  2. 選擇設定目錄

  3. AWS Managed Microsoft AD 針對目錄類型選取 。

  4. 選擇建立新的 AWS 受管 AD 網域,然後選擇下一步

DBA,DevOps 工程師

設定目錄資訊。

目錄資訊區段中,輸入必要資訊,並保留選用值:

  1. 版本下,選取符合您需求的版本。

  2. 目錄 DNS 名稱下,輸入完整網域名稱 (FQDN)。

  3. 管理員密碼下,設定管理員帳戶的密碼,然後選擇下一步

DBA,DevOps 工程師

設定 VPC 和子網路。

  1. 聯網下,選取目標 VPC (您至少必須分別設定兩個子網路 AWS 可用區域)。

  2. 網路類型下,僅選取 IPv4

  3. 子網路下,選取個別的兩個私有子網路 AWS 可用區域,然後選擇下一步

DBA,DevOps 工程師

檢閱並建立 目錄。

  1. 檢閱組態值,然後選擇建立目錄

  2. 等待目錄狀態變更為作用中

DBA,DevOps 工程師
任務Description所需的技能

設定適用於 Windows 的 AMI。

  1. 從 AWS 管理主控台導覽至 EC2

  2. 選擇啟動執行個體

  3. 名稱和標籤下,輸入名稱和任何適用的標籤。

  4. 為 Windows Server 選擇符合您需求的 Amazon Machine Image (AMI)。

  5. 執行個體類型下,選取適當大小的類型。

  6. 金鑰對 (登入) 下,選取現有的金鑰對或建立新的金鑰對。

DBA,DevOps 工程師

設定網路設定。

  1. 網路設定下,選取用於 的相同 VPC AWS Directory Service。

  2. 選擇私有子網路。

  3. 防火牆 (安全群組) 下,建立允許 RDP 連接埠3389和網域通訊的群組。

DBA,DevOps 工程師

設定儲存體。

視需要設定 Amazon EBS 磁碟區。

DBA,DevOps 工程師

設定進階詳細資訊並啟動執行個體。

  1. 展開進階詳細資訊區段。

  2. 對於網域聯結目錄,選取先前建立的 AWS Managed Microsoft AD。

  3. 針對 IAM 執行個體描述檔,選取具有 政策和 AmazonSSMManagedInstanceCore 的角色AmazonSSMDirectoryServiceAccess

  4. 檢閱所有組態值,然後選擇啟動執行個體

DBA,DevOps 工程師
任務Description所需的技能

建立資料庫並設定引擎選項。

  1. 導覽至 Aurora 和 RDS 主控台,然後選擇建立資料庫

  2. 引擎選項下,選擇 Microsoft SQL Server

  3. 請為資料庫管理類型選擇 Amazon RDS

  4. 針對版本,選擇符合您需求的 SQL Server。

  5. 針對引擎版本,選擇最新的支援版本。

DBA,DevOps 工程師

選擇一個範本。

選擇符合您需求的範例範本。

DBA,DevOps 工程師

設定資料庫設定。

  1. 資料庫執行個體識別符下的設定區段中,輸入唯一名稱。

  2. 主要使用者名稱下,設定管理員登入資料。

  3. 登入資料管理下,選擇在 中受管 AWS Secrets Manager自我管理

DBA,DevOps 工程師

設定執行個體。

執行個體組態區段的資料庫執行個體類別下,選取符合您需求的執行個體大小。

DBA,DevOps 工程師

設定儲存體。

  1. 儲存區段的儲存類型下,選擇符合您需求的類型。我們建議使用 gp3io1io2

  2. 設定配置儲存佈建 IOPS 儲存輸送量所需的初始值。

  3. (選用) 展開其他儲存組態區段,然後選取啟用儲存體自動調整規模

DBA,DevOps 工程師

設定連線。

  1. 連線區段中,選擇您是否要設定與資料庫運算資源的連線。

  2. 針對 VPC,選擇與 相同的 VPC AWS Directory Service。

  3. 針對資料庫子網路群組,選擇跨越多個可用區域的群組。

  4. 針對公有存取,選擇

  5. 針對 VPC 安全群組 (防火牆),選擇現有的群組或建立新的群組,以允許透過 SQL Server 連接埠 存取1433

  6. 選取您偏好的可用區域。

  7. 展開其他組態區段,然後選擇您是否要使用自訂資料庫連接埠。

DBA,DevOps 工程師

設定 Windows 身分驗證。

  1. Microsoft SQL Server Windows 身分驗證區段中,選取啟用 Microsoft SQL Server Windows 身分驗證核取方塊。

  2. 針對 Windows 身分驗證類型,選擇 AWS Managed Microsoft AD

  3. 針對目錄,選擇瀏覽目錄,然後選取 AWS Managed Microsoft AD

DBA,DevOps 工程師

設定監控。

  1. 監控區段中,選擇標準或進階資料庫洞見。

  2. 效能洞察下,選取啟用效能洞察核取方塊。

  3. 選取保留期間和 AWS KMS 金鑰。

  4. 在其他監控設定下,選取增強型監控核取方塊。

  5. (選用) 在日誌匯出下,選取錯誤日誌核取方塊。

注意:當您想要查看不同的程序或執行緒如何使用 CPU 時, 指標很有用。如果啟用錯誤日誌,您也可以將錯誤日誌匯出至 Amazon CloudWatch。

DBA,DevOps 工程師

設定其他設定。

  1. 展開其他組態區段。

  2. 針對資料庫參數群組資料庫選項群組,選擇預設或自訂值。

  3. 設定您偏好的時區。

  4. 針對定序,設定值。預設值為 SQL_Latin1_General_CP1_CI_AS

  5. 在備份下:

    • 選取啟用自動備份核取方塊。這會建立資料庫快照。

    • 針對備份保留期間,選擇所需的天數。

    • 針對備份視窗,選擇值。

    • (選用) 針對備份複寫,選擇在另一個 中啟用複寫 AWS 區域

    • 選取啟用加密核取方塊以使用 加密執行個體 AWS KMS。

  6. 維護時段下,選取選擇時段核取方塊,並設定偏好的時間。

  7. 選取啟用刪除保護核取方塊。

DBA,DevOps 工程師

檢閱成本並建立資料庫。

檢閱預估每月成本區段,然後選擇建立資料庫

DBA,DevOps 工程師
任務Description所需的技能

連線至 Windows 機器。

連接至 Windows 機器並啟動 SQL Server Management Studio。

  1. 使用 RDP 使用 AWS Managed Microsoft AD 登入資料連線至您的 Windows 機器

  2. 在開始功能表中輸入 SSMS 來啟動 SSMS,然後選取 SQL Server Management Studio

DBA,DevOps 工程師

設定 SSMS 連線。

使用 Windows 身分驗證設定資料庫連線。

  1. 出現連線至伺服器對話方塊時 (或導覽至物件總管連線資料庫引擎),請將伺服器類型設定為資料庫引擎

  2. 輸入 RDS SQL Server 端點 (例如 your-rds-instance.region.rds.amazonaws.com)

  3. 選擇 Windows 身分驗證

DBA,DevOps 工程師

設定安全設定。

設定 SSMS 第 20 版或更新版本的必要安全參數。

  1. 連線屬性索引標籤中,將加密設為強制性

  2. 選取信任伺服器憑證核取方塊。

  3. 憑證欄位中的主機名稱保留空白。

  4. (選用) 設定資料庫名稱並視需要調整連線逾時。

DBA,DevOps 工程師

建立 Windows 登入。

  1. 設定和測試網域使用者的 Windows 身分驗證。

  2. 若要建立初始連線,請選擇連線

  3. 在查詢視窗中,執行下列動作:

CREATE LOGIN [<domainName>\<user_name>] FROM WINDOWS; GO
DBA,DevOps 工程師

測試 Windows 身分驗證。

  1. 登出 Amazon EC2 執行個體。

  2. 使用您的網域登入資料重新登入 EC2 執行個體。

  3. 啟動 SSMS。

  4. 使用 Windows 身分驗證進行連線。

  5. 驗證連線是否成功。

DBA,DevOps 工程師

相關資源