共用方式為


使用 Microsoft Entra 應用程式 Proxy 發佈遠端桌面

遠端桌面服務和Microsoft Entra 應用程式 Proxy 共同運作,以改善遠離公司網路的員工生產力。

本文的目標物件如下:

  • 目前使用應用程式 Proxy 的客戶若希望透過遠端桌面服務發佈本地部署的應用程式,藉此為其終端使用者提供更多應用程式選擇。
  • 目前的遠端桌面服務客戶想要使用 Microsoft Entra 應用程式 Proxy 來減少其部署的攻擊面。 此案例會將一組雙步驟驗證和條件式訪問控制提供給 RDS。

應用程式代理如何整合到標準的 RDS 部署中

標準 RDS 部署包含在 Windows Server 上執行的各種遠端桌面角色服務。 遠端桌面服務架構中存在多個部署選項,。 與其他 RDS 部署選項不同,使用 Microsoft Entra 應用程式 Proxy RDS 部署(如下圖所示)具有從執行連接器服務的伺服器的永久輸出連線。 其他部署會透過負載平衡器保留開啟的輸入連線。

應用程式 Proxy 位於 RDS VM 與公用因特網之間

在 RDS 部署中,遠端桌面 (RD) Web 角色和 RD 閘道角色會在因特網對向電腦上執行。 這些端點會因為下列原因而公開:

  • RD Web 為使用者提供公用端點來登入及檢視他們可存取的各種內部部署應用程式和桌面。 當您選取資源時,會使用OS上的原生應用程式來建立遠端桌面通訊協定 (RDP) 連線。
  • 一旦用戶啟動 RDP 連線,RD 閘道就會進入圖片。 RD 閘道會處理透過因特網傳送的加密 RDP 流量,並將其轉譯為使用者所連線的內部部署伺服器。 在此案例中,RD 閘道接收的流量來自 Microsoft Entra 應用程式 Proxy。

提示

如果您之前尚未部署 RDS,或想要在開始之前取得詳細資訊,請瞭解如何 使用 Azure Resource Manager 和 Azure Marketplace順暢地部署 RDS。

要求

  • RD Web 和 RD 閘道端點都必須位於同一部電腦上,以及具有一般根目錄。 RD Web 和 RD 閘道會發佈為具有應用程式 Proxy 的單一應用程式,讓您可以在兩個應用程式之間擁有單一登錄體驗。
  • 部署 RDS,並 啟用應用程式 Proxy。 啟用應用程式 Proxy 並開啟必要的埠和 URL,並在伺服器上啟用傳輸層安全性 (TLS) 1.2。 若要瞭解需要開啟哪些埠和其他詳細數據,請參閱 教學課程:在 entra ID Microsoft中,透過應用程式 Proxy 新增內部部署應用程式以進行遠端訪問。
  • 您的終端用戶必須使用相容的瀏覽器來連線到 RD Web 或 RD Web 用戶端。 如需詳細資訊,請參閱 支援客戶端設定
  • 發佈 RD Web 時,請盡可能使用相同的內部和外部完整網域名稱(FQDN)。 如果內部和外部完整功能變數名稱 (FQDN) 不同,請停用要求標頭轉譯,以避免用戶端收到無效的連結。
  • 如果您使用 RD Web 用戶端,您必須 使用相同的內部和外部 FQDN。 如果內部和外部 FQDN 不同,則透過 RD Web 用戶端進行 RemoteApp 連線時,您會遇到 websocket 錯誤。
  • 如果您在 Internet Explorer 上使用 RD Web,則必須啟用 RDS ActiveX 附加元件。
  • 如果您使用 RD Web 用戶端,您必須使用應用程式代理 連接器 1.5.1975 版或更新版本
  • 針對 Microsoft Entra 預先驗證流程,使用者只能連線到 [RemoteApp 和 Desktops] 窗格中發佈的資源。 用戶無法使用 [連線到遠端電腦] 窗格來連線到桌面。
  • 如果您使用 Windows Server 2019,則必須停用 HTTP2 通訊協定。 如需詳細資訊,請參閱 教學課程:在 Microsoft Entra ID中新增內部部署應用程式,以透過應用程式 Proxy 進行遠端訪問。

部署聯合 RDS 和應用程式 Proxy 情境

為您的環境設定 RDS 和 Microsoft Entra 應用程式 Proxy 之後,請遵循步驟來結合這兩個解決方案。 這些步驟將兩個 Web 面向的 RDS 端點(RD Web 和 RD 閘道)發佈為應用程式,然後引導 RDS 上的流量透過應用程式 Proxy。

發佈 RD 主機端點

  1. 使用這些參數發佈新的代理應用程式

    • 內部 URL:https://<rdhost>.com/,其中 <rdhost> 是 RD Web 和 RD 閘道共用的常見根目錄。
    • 外部 URL:此欄位會根據應用程式的名稱自動填入,但您可以修改它。 當使用者存取 RDS 時,您的使用者會移至此 URL。
    • 預先驗證方法:Microsoft Entra ID。
    • 翻譯 URL 標頭:否。
    • 使用 HTTP-Only Cookie:否。
  2. 將使用者指派給已發佈的 RD 應用程式。 請確定它們也有 RDS 的存取權。

  3. 將應用程式的單一登入方法保留為 Microsoft Entra 單一登入停用

    注意

    系統要求您的使用者分別驗證一次到 Microsoft Entra ID 和 RD Web,但對 RD Gateway 具有單一登錄功能。

  4. 瀏覽至 身分識別>應用程式>應用程式註冊。 從清單中選擇您的應用程式。

  5. 在 [管理] 下,選取 [品牌設定]。

  6. 更新 [首頁 URL] 欄位,以指向您的 RD Web 端點(例如 https://<rdhost>.com/RDWeb)。

將 RDS 流量導向應用代理器

以系統管理員身分連線到 RDS 部署,並變更部署的 RD 閘道伺服器名稱。 此組態可確保連線通過 Microsoft Entra 應用程式 Proxy 服務。

  1. 線上到執行 RD 連線代理人角色的 RDS 伺服器。

  2. 啟動 Server Manager

  3. 從左側窗格選取 [遠端桌面服務]。

  4. 選取 概觀

  5. 在 [部署概觀] 區段中,選取下拉功能表,然後選擇 [編輯部署屬性]

  6. 在 [RD 閘道] 索引標籤中,將 [伺服器名稱] 欄位變更為您在應用程式 Proxy 中為 RD 主機端點設定的外部 URL。

  7. 將 [登入方法] 欄位變更為 [密碼驗證]

    RDS部署屬性] 畫面

  8. 針對每個集合執行此命令。 請將 <yourcollectionname><proxyfrontendurl> 取代為您自己的資訊。 此命令可啟用 RD Web 與 RD 閘道之間的單一登錄,並優化效能。

    Set-RDSessionCollectionConfiguration -CollectionName "<yourcollectionname>" -CustomRdpProperty "pre-authentication server address:s:<proxyfrontendurl>`nrequire pre-authentication:i:1"
    

    例如:

    Set-RDSessionCollectionConfiguration -CollectionName "QuickSessionCollection" -CustomRdpProperty "pre-authentication server address:s:https://remotedesktoptest-aadapdemo.msappproxy.net/`nrequire pre-authentication:i:1"
    

    注意

    上述命令使用 「`nrequire」 中的反引號。

  9. 若要確認修改自定義 RDP 屬性,並檢視從 RDWeb 下載此集合的 RDP 檔案內容,請執行下列命令。

    (get-wmiobject -Namespace root\cimv2\terminalservices -Class Win32_RDCentralPublishedRemoteDesktop).RDPFileContents
    

現在已設定遠端桌面,Microsoft Entra 應用程式 Proxy 會作為 RDS 的網路前端元件接管。 拿掉 RD Web 和 RD 閘道機器上的其他公用因特網對向端點。

啟用 RD Web 用戶端

如果您要讓使用者使用 RD Web 用戶端,請遵循 為使用者設定遠端桌面 Web 用戶端的步驟

遠端桌面 Web 用戶端可讓您存取組織的遠端桌面基礎結構。 需要 HTML5 相容的網頁瀏覽器,例如 Microsoft Edge、Google Chrome、Safari 或 Mozilla Firefox (v55.0 和更新版本)。

測試情境

在 Windows 7 或 10 計算機上使用 Internet Explorer 測試案例。

  1. 移至您設定的外部 URL,或在 MyApps 面板中尋找您的應用程式,
  2. 登入 Microsoft Entra ID 進行驗證。 使用您指派給應用程式的帳戶。
  3. 向 RD Web 進行驗證。
  4. RDS 驗證成功之後,您可以選取您想要的桌面或應用程式,並開始運作。

支援其他客戶端設定

本文中所述的組態是透過 RD Web 或 RD Web 用戶端存取 RDS。 不過,如果您需要的話,也可以支援其他作業系統或瀏覽器。 差異在於您使用的驗證方法。

驗證方法 支援的客戶端設定
預先驗證 RD Web - 使用 Microsoft Edge Chromium IE mode + RDS ActiveX 附加元件於 Windows 7/10/11
預先驗證 RD Web 用戶端 - HTML5 兼容的網頁瀏覽器,例如 Microsoft Edge、Internet Explorer 11、Google Chrome、Safari 或 Mozilla Firefox (v55.0 和更新版本)
傳遞 支援Microsoft遠端桌面應用程式的任何其他作系統

注意

當使用「我的應用程式」入口網站來存取遠端桌面應用程式時,需要 Microsoft Edge Chromium IE 模式。

預先驗證流程提供比傳遞流程更多的安全性優點。 透過預先驗證,您可以使用 Microsoft Entra 驗證功能,例如單一登錄、條件式存取,以及內部部署資源的雙步驟驗證。 您也會確保只有已驗證的流量到達您的網路。

若要使用直通驗證,您只需對本文中所列步驟進行兩項修改。

  1. 在 [發佈 RD 主機端點 步驟 1 中,將預先驗證方法設定為 Passthrough
  2. 將 RDS 流量直接導向至應用程式代理,然後完全跳過步驟 8。

後續步驟