針對 Active Directory Domain Services 強制執行內部部署 Azure AD 密碼保護

Azure AD 密碼保護會偵測並封鎖已知的弱式密碼及其變體,此外也可封鎖您的組織特有的其他弱式字詞。 Azure AD 密碼保護的內部部署會使用 Azure AD 中所儲存的相同全域和自訂禁用密碼清單,並且會對內部部署密碼變更進行相同的檢查,因為 Azure AD 會進行雲端式變更。 針對內部部署 Active Directory Domain Services (AD DS) 網域控制站,在密碼變更和密碼重設事件期間會執行這些檢查。

設計原則

設計 Azure AD 密碼保護時會考量以下原則:

  • 網域控制站 (DC) 永遠不需要直接與網際網路通訊。
  • DC 上不會開啟任何新的網路連接埠。
  • 不需要 AD DS 結構描述變更。 軟體會使用現有的 AD DS container 和 serviceConnectionPoint 結構描述物件。
  • 您可以使用任何支援的 AD DS 網域或樹系功能層級。
  • 軟體不會在其保護的 AD DS 網域中建立或要求帳戶。
  • 在密碼驗證作業期間,或在任何其他時間,使用者純文字密碼都絕不能離開網域控制站。
  • 軟體不相依於其他 Azure AD 功能。 例如,Azure AD 密碼雜湊同步 (PHS) 與 Azure AD 密碼保護無關或並非必要。
  • 支援累加部署,不過,只有在已安裝網域控制站代理程式 (DC 代理程式) 的情況下,才會強制執行密碼原則。

累加部署

Azure AD 密碼保護支援 AD DS 網域中跨 DC 的累加部署。 請務必了解這真正的意義,以及做出的取捨。

Azure AD 的密碼保護 DC 代理程式軟體只有在安裝至 DC 時才能驗證密碼,而且只會驗證傳送至該 DC 的密碼變更。 您無法控制 Windows 用戶端電腦選擇哪些 DC 來處理使用者密碼變更。 為了確保一致的行為和通用 Azure AD 密碼保護安全性強制執行,必須在網域的所有 DC 上安裝 DC 代理程式軟體。

許多組織都想要在完整部署之前,仔細測試其 DC 子集的 Azure AD 密碼保護。 為了支援此案例,Azure AD 密碼保護支援部分部署。 甚至網域中的其他 DC 未安裝 DC 代理程式軟體時,所指定 DC 上的 DC 代理程式軟體還是會主動驗證密碼。 這種類型的部分部署不安全,因此只建議用於測試用途。

架構圖

在內部部署 AD DS 環境中部署 Azure AD 密碼保護之前,請務必了解基礎設計和功能概念。 下圖顯示 Azure AD 密碼保護的元件如何一起運作:

Azure AD 密碼保護元件如何一起運作

  • Azure AD 密碼保護 Proxy 服務會在目前 AD DS 樹系中任何已加入網域的機器上執行。 此服務的主要目的是將密碼原則下載要求從 DC 轉遞至 Azure AD,然後將回應從 Azure AD 傳回至 DC。
  • DC 代理程式密碼篩選 DLL 會接收來自作業系統的使用者密碼驗證要求。 篩選會將其轉遞至在 DC 上本機執行的 DC 代理程式服務。
  • Azure AD 密碼保護的 DC 代理程式服務會接收來自 DC 代理程式密碼篩選 DLL 的密碼驗證要求。 DC 代理程式服務會使用目前 (本機可用) 密碼原則來處理它們,並傳回「通過」或「失敗」的結果。

Azure AD 密碼保護的運作方式

內部部署 Azure AD 密碼保護元件的運作方式如下:

  1. 每個 Azure AD 密碼保護 Proxy 服務執行個體會在 Active Directory 中建立 serviceConnectionPoint 物件,以向樹系中的 DC 公告它自己。

    Azure AD 密碼保護的每個 DC 代理程式服務也會在 Active Directory 中建立 serviceConnectionPoint 物件。 此物件主要用於報告和診斷。

  2. DC 代理程式服務負責起始從 Azure AD 下載新密碼原則。 第一個步驟是查詢樹系中的 Proxy serviceConnectionPoint 物件,以找出 Azure AD 密碼保護 Proxy 服務。

  3. 找到可用的 Proxy 服務時,DC 代理程式會將密碼原則下載要求傳送到 Proxy 服務。 Proxy 服務接著會將要求傳送給 Azure AD,然後將回應傳回至 DC 代理程式服務。

  4. DC 代理程式服務從 Azure AD 接收新密碼原則之後,服務會將此原則儲存在其網域 sysvol 資料夾共用根目錄的專用資料夾中。 如果從網域中其他 DC 代理程式服務複寫較新的原則,DC 代理程式服務也會監視此資料夾。

  5. DC 代理程式服務一律會在服務啟動時要求新原則。 DC 代理程式服務啟動之後,會每小時檢查目前本機可用原則的存在時間。 如果原則超過一小時,DC 代理程式會透過 Proxy 服務向 Azure AD 要求新原則,如先前所述。 如果目前原則不超過一小時,則 DC 代理程式會繼續使用該原則。

  6. 當 DC 收到密碼變更事件時,會使用快取的原則來判斷要接受或拒絕新的密碼。

重要考量和功能

  • 只要下載 Azure AD 密碼保護密碼原則,該原則就是租用戶特有的原則。 換句話說,密碼原則一律是 Microsoft 全域禁用密碼清單與每個租用戶自訂禁用密碼清單的組合。
  • DC 代理程式透過 TCP 上的 RPC 以與 Proxy 服務進行通訊。 Proxy 服務會根據設定在動態或靜態 RPC 連接埠上接聽這些呼叫。
  • DC 代理程式絕不會在網路可用連接埠上接聽。
  • Proxy 服務絕不會呼叫 DC 代理程式服務。
  • Proxy 服務是無狀態的。 它絕不會快取從 Azure 下載的原則或任何其他狀態。
  • DC 代理程式服務一律會使用最新的本機可用密碼原則來評估使用者的密碼。 如果本機 DC 上沒有可用的密碼原則,則會自動接受密碼。 發生這種情況時,會記錄事件訊息以警告管理員。
  • Azure AD 密碼保護不是即時原則應用程式引擎。 在 Azure AD 中進行密碼原則設定變更與該變更到達並在所有 DC 上強制執行之間,可能會有延遲。
  • Azure AD 密碼保護是補充而非取代現有 AD DS 密碼原則。 這包括可能安裝的任何其他第三方密碼篩選 dll。 AD DS 一律需要所有密碼驗證元件都同意,才能接受密碼。

Azure AD 密碼保護的樹系/租用戶繫結

在 AD DS 樹系中部署 Azure AD 密碼保護需要向 Azure AD 註冊該樹系。 每個已部署的 Proxy 服務也都必須向 Azure AD 註冊。 這些樹系和 Proxy 註冊會與特定 Azure AD 租用戶相關聯,而此租用戶是以隱含方式透過註冊期間所使用的認證進行識別。

樹系內的 AD DS 樹系和所有已部署的 Proxy 服務都必須在相同的租用戶中註冊。 不支援將該樹系中的 AD DS 樹系或任何 Proxy 服務註冊到不同的 Azure AD 租用戶。 這類錯誤設定部署的徵兆包括無法下載密碼原則。

注意

因此,針對 Azure AD 密碼保護用途,具有多個 Azure AD 租用戶的客戶必須選擇一個辨別的租用戶來註冊每個樹系。

下載

Microsoft 下載中心可以取得 Azure AD 密碼保護的兩個必要代理程式安裝程式。

後續步驟

若要開始使用內部部署 Azure AD 密碼保護,請完成下列操作: