當您需要將RDS SQL Server執行個體整合到企業的身份認證體系中時,可參考本文教程在ECS執行個體中佈建網域控伺服器,並將RDS SQL Server執行個體接入自建域中,協助您實現資源的集中許可權管理和身分識別驗證。
背景資訊
Microsoft AD即Active Directory(活動目錄),是微軟提供的面向Windows Standard Server、Windows Enterprise Server以及Microsoft SQL Server等產品的目錄服務。目錄是一種分層結構,用於儲存同一區域網路絡上對象的資訊。例如,AD儲存有關使用者帳號的資訊,例如名稱、密碼、電話號碼等,並允許同一區域網路絡上的其他授權使用者訪問此資訊。
AD是Windows生態體系下的重要組成單元。諸多大型企業,會通過域控來實現統籌的集中式訪問管理,是企業內部長期依賴的原生管理方式。在上述背景下,當您從自建環境遷移整體服務至雲上或使用混合雲架構時,往往也需要在雲上體系中支援AD服務,以便於全域管理。具體至SQL Server資料庫,作為微軟生態體系下的重要一環,大型企業在搬遷上雲時AD的支援成為最基礎的要素。
基於上述情況,RDS SQL Server提供執行個體接入自建域功能,協助您完善業務生態體系。
警告
開通並配置了AD域功能後,您可以通過AD自建域建立帳號,並授予相應的許可權,使得該帳號可以登入RDS SQL Server並對資料庫進行相應的操作。
但由於超級許可權帳號(System Admin)或主機帳號所擁有的操作許可權已超出了RDS控制的範圍,因此對於通過AD自建域功能所建立的該類型帳號的RDS執行個體,我們無法保證SLA。
前提條件
RDS執行個體需滿足如下條件:
登入帳號必須為阿里雲主帳號。
RDS和域控伺服器所在ECS在相同VPC。
ECS安全性群組放通RDS的內網IP。詳情請參見添加安全性群組規則。
ECS執行個體系統防火牆放通RDS的內網IP。ECS執行個體系統防火牆預設關閉,如果您開啟過,需要放通RDS的內網IP。
域帳號屬於Domain Admins組(由於用戶端主動加域需要高許可權)。
域控伺服器與DNS是相同IP。
注意事項
加入或退出AD域的操作都需要重啟Windows作業系統,為避免對進行中的業務造成中斷影響,請您盡量在業務低峰期執行此類操作。
Windows版本選擇
域控伺服器需要建立在Windows Server作業系統之上,建立ECS執行個體時,系統最低版本為Windows Server 2012 R2,建議使用Windows Server 2016及以上版本,語言選擇英文,本文將以Windows Server 2016為例指導您建立可供RDS使用的域控伺服器。
步驟一:ECS執行個體系統佈建網域控伺服器
登入ECS管理主控台。
在左側導覽列,選擇。
在頁面左側頂部,選擇目標資源所在的資源群組和地區。
在執行個體列表頁面中,單擊目標執行個體ID。
遠程登入ECS的Windows Server 2016系統。
搜尋Server Manager並開啟。
單擊Add roles and features,進行如下設定。
頁面名稱 | 設定說明 |
Installation Type | 保持預設設定。 |
Server Selection | 保持預設設定。 |
Server Roles | 
|
Features | 保持預設設定。 |
AD DS | 保持預設設定。 |
DNS Server | 保持預設設定。 |
Confirmation | 單擊Install進行安裝。 |
等待安裝完成後,單擊Close關閉頁面。
在左側導覽列單擊AD DS,然後在右上方單擊More。
單擊Promote this server to a domain...,進行如下設定。

頁面名稱 | 設定說明 |
Deployment Configuration | 選擇Add a new forest,設定網域名稱。 |
Domain Controller Options | 設定復原模式密碼。 |
DNS Options | 取消Create DNS delegation選項的√。 |
Additional Options | 保持預設設定。 |
Paths | 保持預設設定。 |
Review Options | 保持預設設定。 |
Prerequisites Check | 單擊Install進行安裝。 |
等待系統重啟,再次搜尋Server Manager並開啟。
在左側導覽列單擊AD DS,然後在右側目標域控伺服器上單擊滑鼠右鍵,選擇Active Directory Users and Computers,進入AD使用者管理模組。
在上單擊滑鼠右鍵,選擇。
設定登入的使用者名稱稱,然後單擊Next。
設定登入密碼,並設定密碼永不到期,然後單擊Next及Finish完成建立。
雙擊新建立的使用者,將該使用者加入Domain AdminsAdministrator 群組。
步驟二:配置ECS執行個體安全性群組
登入ECS管理主控台。
在左側導覽列,選擇。
在頁面左側頂部,選擇目標資源所在的資源群組和地區。
在執行個體列表頁面中,單擊目標執行個體ID。
在上方導覽列中選擇安全性群組,然後單擊安全性群組操作列下的配置規則。
在入方向頁簽內單擊手動添加,允許如下連接埠訪問ECS執行個體。

協議類型 | 連接埠範圍 | 說明 |
TCP | 88 | Kerberos認證協議連接埠。 |
TCP | 135 | 遠端程序呼叫協議(RPC)連接埠。 |
TCP/UDP | 389 | 輕量型目錄存取通訊協定(LDAP)連接埠。 |
TCP | 445 | 通用互連網文檔系統協議(CIFS)連接埠。 |
TCP | 3268 | Global Catalog連接埠。 |
TCP/UDP | 53 | DNS連接埠。 |
TCP | 49152~65535 | 串連的預設動態連接埠範圍。輸入格式為:49152/65535。 |
步驟三:配置RDS執行個體AD網域服務
訪問RDS執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。
在左側導覽列單擊。
單擊AD網域服務資訊頁簽,然後單擊配置AD網域服務。

在彈出的配置AD網域服務對話方塊中,設定如下參數,並選中我已閱讀並知曉配置AD網域服務對《RDS 服務等級協議》的影響。
警告
開通並配置了AD域功能後,您可以通過AD自建域建立帳號,並授予相應的許可權,使得該帳號可以登入RDS SQL Server並對資料庫進行相應的操作。
但由於超級許可權帳號(System Admin)或主機帳號所擁有的操作許可權已超出了RDS控制的範圍,因此對於通過AD自建域功能所建立的該類型帳號的RDS執行個體,我們無法保證SLA。
參數 | 說明 |
網域名稱 | 建立活動目錄時(Deployment Configuration頁面)指定的網域名稱。例如本文設定的是testdomian.net。 |
目錄IP地址 | 域控伺服器所在ECS的IP,可以在ECS中使用ipconfig 擷取,也可以在阿里雲ECS控制台中查看。 |
域帳號 | 之前建立的使用者名稱。 |
域密碼 | 使用者名稱對應的密碼。 |
單擊確定,等待AD網域設定完成。
相關操作
使用API查看或修改AD域關聯資訊、退出所在AD域,請參見:
常見問題
RDS使用什麼許可權使用者加入域?如何控制其許可權?
建議您使用網域系統管理員許可權的帳號讓RDS加入域,如果不希望使用網域系統管理員許可權,可以按照下面方法使用最小許可權,但使用最小許可權帳號退出域時,需要在域控伺服器中手動刪除對應的電腦對象,否則將同一RDS再次加入本域時會報錯。
建立新使用者並確認使用者屬於Domain Users組後,在頁面添加剛才建立的新使用者。

在建立的使用者上單擊右鍵,選擇Create a custom task to delegate,然後單擊Next。
選擇Only the following objects in the folder,按下圖所示進行選中,然後單擊Next。
按下圖所示進行選中,然後單擊Next直至完成。