現在很多企業大多使用windows的安全性驗證,來進行帳號權限的集中管理,而RDS當然也可以透過Windows 方式來進行帳號權限的集中管理,目前各大公有雲平台,AWS的RDS透過 Microsoft AD方式提供讓RDS加入AD;Azure的Azure SQL是透過 Azure AD方式驗證;阿里雲目前提供自建AD主機讓RDS加入網域。
在使用Windows 驗證的好處上,一來是使用者透過 Windows 使用者帳戶連接時, SQL Server 會使用作業系統中的 Windows 主體 Token 來驗證帳戶名稱和密碼,二來可以在網域層級建立 Windows 群組,也可以在 SQL Server 建立整個群組的登入,簡化帳戶管理。
流程說明
ECS建置AD主機
AD主機(Active Directory,AD)是需要建立在Windows Server操作系統之上,ECS創建實例時,系統最低版本為Windows Server 2012R2,建議使用Windows Server 2016及以上版本。
ECS實例安全組
以下是在ECS上的AD主機需要開通的通訊埠名單。
實務操作
1.先開啟一台RDS for SQL Server,這邊是使用高可用版SQL Server 2012 SE版,提高資料吞吐量的同時也有備援機制,推薦給讀者使用。
2.在RDS中要先設定白名單讓AD主機可以連接到RDS for SQL Server,這樣RDS for SQL Server會加入AD主機;同時也要在AD主機設定Security Group讓RDS可以連接進來,可以參考上面的ECS實例安全組去做設定。
3.AD要創建Domain和User,在外工作者透過AD建立的User帳戶可以遠端進入SQL Server,這邊是利用建立帳戶testuser來登入RDS for SQL Server;至於User相關權限則需要公司的IT人員協助設定。
4.接下來讓ECS上的AD主機可以連接到RDS for SQL Server。
5.要連結RDS for SQL Server,需先安裝Microsoft SQL Server Management Studio(MSSMS)才能連結到該RDS! 這邊因為要透過AD主機認證登入SQL Server因此要選擇Windows Authentication。
6.接下來用Microsoft SQL Server Management Studio(MSSMS)登入剛才在AD創立的帳戶就可以登入RDS了!
注意事項
● SQL 版本採用2012~2019標準版和企業版(非共享型規格)
● RDS和DC Server所在ECS在相同VPC。
● ECS安全組放通RDS的內網IP。詳情請參見添加安全組規則。
● ECS實例係統防火牆放通RDS的內網IP。 ECS實例係統防火牆默認關閉,如果您開啟過,需要放通RDS的內網IP。
● Domain 帳號屬於Domain Admins組(由於客戶端主動加域需要高權限)。
● 網域控制站與DNS是相同IP。
結語
在地端環境下使用行之有年AD管理認證,藉由AD做到公司員工帳號密碼集中到AD主機集中管理,強化平日使用電腦主機安全性,也能控管電腦安裝惡意軟體避免造成公司資料外洩、被竊取;今天筆者在阿里雲使用ECS+RDS運行了Windows Server 2016和SQL Server 2012,也藉由著AD服務連接到RDS for SQL Serverr方便帳號管理,提供給讀者參考看看。
*本文由宏庭架構師所撰寫,同步刊登於iThome 鐵人賽專區
.>更多阿里雲相關內容,再且密切追蹤阿里雲架構師專欄