リモート デスクトップ サービスと Microsoft Entra アプリケーション プロキシが連携し、企業ネットワークの外にいるユーザーの生産性を向上させます。
この記事の対象読者は次のとおりです。
- リモート デスクトップ サービスを介してオンプレミス アプリケーションを発行することで、エンド ユーザーにさらに多くのアプリケーションを提供する現在のアプリケーション プロキシのお客様。
- Microsoft Entra アプリケーション プロキシを使用してデプロイの攻撃対象領域を削減することを希望している、現在リモート デスクトップ サービスを使用しているお客様。 このシナリオでは、2 段階検証と条件付きアクセス制御のセットを RDS に付与します。
アプリケーション プロキシが標準の RDS 展開にどのように適合するか
RDS の標準デプロイには、Windows Server で実行されるさまざまなリモート デスクトップ ロール サービスが含まれています。 リモート デスクトップ サービス アーキテクチャには、複数の展開オプションがあります。 他の RDS 展開オプションとは異なり、 Microsoft Entra アプリケーション プロキシを使用した RDS 展開 (次の図を参照) には、コネクタ サービスを実行しているサーバーからの永続的な送信接続があります。 その他のデプロイでは、ロード バランサーを介した着信接続が開いたままになります。
RDS 展開では、リモート デスクトップ (RD) Web ロールと RD ゲートウェイの役割は、インターネットに接続するコンピューターで実行されます。 これらのエンドポイントは次の理由で公開されています。
- RD Web は、アクセスできるさまざまなオンプレミスのアプリケーションとデスクトップにサインインして表示するためのパブリック エンドポイントをユーザーに提供します。 リソースを選択すると、OS 上のネイティブ アプリを使用してリモート デスクトップ プロトコル (RDP) 接続が作成されます。
- ユーザーが RDP 接続を起動すると、RD ゲートウェイが関与するようになります。 RD ゲートウェイは、インターネット経由で送信される暗号化された RDP トラフィックを処理し、ユーザーが接続しているオンプレミスのサーバーに渡します。 このシナリオでは、RD ゲートウェイの受信トラフィックは Microsoft Entra アプリケーション プロキシからのものです。
ヒント
詳細については、 Azure Resource Manager と Azure Marketplace を使用して RDS をシームレスにデプロイする方法を参照してください。
要求事項
- RD Web と RD ゲートウェイの両方のエンドポイントが同じコンピューター上にあり、ルートが共通である必要があります。 RD Web と RD ゲートウェイは、2 つのアプリケーション間でシングル サインオン エクスペリエンスを実現できるように、アプリケーション プロキシを使用して単一のアプリケーションとして発行されます。
- RDS を展開し、 アプリケーション プロキシを有効にします。 アプリケーション プロキシを有効にし、必要なポートと URL を開き、サーバーでトランスポート層セキュリティ (TLS) 1.2 を有効にします。 開く必要があるポートとその他の詳細については、「 チュートリアル: Microsoft Entra ID のアプリケーション プロキシを使用してリモート アクセス用のオンプレミス アプリケーションを追加する」を参照してください。
- エンド ユーザーは、RD Web または RD Web クライアントに接続するために、互換性のあるブラウザーを使用する必要があります。 詳細については、「 クライアント構成のサポート」を参照してください。
- RD Web を発行する場合は、可能であれば、同じ内部および外部の完全修飾ドメイン名 (FQDN) を使用します。 内部および外部の完全修飾ドメイン名 (FQDN) が異なる場合は、クライアントが無効なリンクを受信しないように、要求ヘッダー変換を無効にします。
- RD Web クライアントを使用している場合は、同じ内部および外部 FQDN を使用 する必要があります 。 内部 FQDN と外部 FQDN が異なる場合は、RD Web クライアント経由で RemoteApp 接続を確立するときに Websocket エラーが発生します。
- Internet Explorer で RD Web を使用している場合は、RDS ActiveX アドオンを有効にする必要があります。
- RD Web クライアントを使用している場合は、アプリケーション プロキシ コネクタ バージョン 1.5.1975 以降を使用する必要があります。
- Microsoft Entra 事前認証フローの場合、ユーザーは RemoteApp とデスクトップ ウィンドウで公開されたリソースにのみ接続できます。 ユーザーは、[リモート PC に接続] ウィンドウを使用してデスクトップ に接続 できません。
- Windows Server 2019 を使用している場合は、HTTP2 プロトコルを無効にする必要があります。 詳細については、「 チュートリアル: Microsoft Entra ID でアプリケーション プロキシを使用してリモート アクセスするためのオンプレミス アプリケーションを追加する」を参照してください。
RDS とアプリケーション プロキシの共同シナリオをデプロイする
RDS と Microsoft Entra アプリケーション プロキシを自分の環境用に設定した後、2 つのソリューションを結合する手順に従います。 これらの手順では、2 つの Web 向け RDS エンドポイント (RD Web および RD ゲートウェイ) をアプリケーションとして発行し、RDS 上のトラフィックをアプリケーション プロキシ経由で送信する手順について説明します。
RD ホスト エンドポイントを発行する
値を使用して新しいアプリケーション プロキシ アプリケーションを発行 します。
- [内部 URL]:
https://<rdhost>.com/
。<rdhost>
は、RD Web と RD ゲートウェイが共有する共通のルートです。 - 外部 URL:このフィールドは、アプリケーションの名前に基づいて自動的に設定されますが、変更することもできます。 ユーザーが RDS にアクセスすると、この URL に移動します。
- 事前認証方法: Microsoft Entra ID。
- URL ヘッダーを変換する: いいえ。
- HTTP-Only Cookie を使用する: いいえ。
- [内部 URL]:
発行した RD アプリケーションにユーザーを割り当てます。 すべてのユーザーが RDS へのアクセス権を持っていることもご確認ください。
アプリケーションのシングル サインオン方法は 、Microsoft Entra のシングル サインオンを無効のままにします。
注
ユーザーは、Microsoft Entra ID に対して 1 回と RD Web に対して 1 回認証を求められますが、RD ゲートウェイに対してはシングル サインオンを使用できます。
Entra ID>App 登録に移動します。 一覧からアプリを選択します。
[ 管理] で [ ブランド] を選択します。
RD Web エンドポイントを指す [ホーム ページの URL ] フィールドを更新します (
https://<rdhost>.com/RDWeb
など)。
RDS トラフィックをアプリケーション プロキシに転送する
RDS デプロイに管理者として接続し、デプロイの RD ゲートウェイ サーバーの名前を変更します。 この構成により、Microsoft Entra アプリケーション プロキシ サービスを介して接続が行われるようになります。
RD 接続ブローカーのロールを実行している RDS サーバーに接続します。
サーバー マネージャーを起動します。
左側のウィンドウから [リモート デスクトップ サービス ] を選択します。
[ 概要] を選択します。
[デプロイの概要] セクションで、ドロップダウン メニューを選択し、[ 配置プロパティの編集] を選択します。
[RD ゲートウェイ] タブで、[ サーバー名 ] フィールドを、アプリケーション プロキシの RD ホスト エンドポイントに設定した外部 URL に変更します。
[ ログオン方法 ] フィールドを [パスワード認証] に変更します。
各コレクションに対してこのコマンドを実行します。 <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' のバックティックが使用されます。
カスタム RDP プロパティの変更を確認し、このコレクションの RDWeb からダウンロードされた RDP ファイルの内容を表示するには、次のコマンドを実行します。
(get-wmiobject -Namespace root\cimv2\terminalservices -Class Win32_RDCentralPublishedRemoteDesktop).RDPFileContents
リモート デスクトップが構成されたので、Microsoft Entra アプリケーション プロキシが RDS のインターネットに接続するコンポーネントとして引き継ぎます。 RD Web および RD ゲートウェイ マシン上の他のパブリック インターネット接続エンドポイントを削除します。
RD Web クライアントを有効にする
ユーザーが RD Web クライアントを使用する場合は、「 ユーザーのリモート デスクトップ Web クライアントを設定する」の手順に従います。
リモート デスクトップ Web クライアントは、組織のリモート デスクトップ インフラストラクチャへのアクセスを提供します。 Microsoft Edge、Google Chrome、Safari、Mozilla Firefox (v55.0 以降) などの HTML5 互換 Web ブラウザーが必要です。
シナリオをテストする
Windows 7 または 10 のコンピューターで Internet Explorer を使用してシナリオをテストします。
- 設定した外部 URL に移動するか、 MyApps パネルでアプリケーションを見つけます。
- Microsoft Entra ID に対して認証を行います。 アプリケーションに割り当てたアカウントを使用します。
- RD Web に対する認証。
- RDS 認証が成功すると、目的のデスクトップまたはアプリケーションを選び、作業を開始できます。
その他のクライアント構成のサポート
この記事で説明する構成は、RD Web または RD Web クライアントによる RDS へのアクセスを対象としています。 ただし、必要に応じて、その他のオペレーティング システムまたはブラウザーを使用することもできます。 異なる点は、使用する認証方法です。
認証方法 | サポートされているクライアント構成 |
---|---|
事前認証 | RD Web - Microsoft Edge Chromium IE mode + RDS ActiveX アドオンを使用した Windows 7/10/11 |
事前認証 | RD Web クライアント: Microsoft Edge、Internet Explorer 11、Google Chrome、Safari、Mozilla Firefox (v55.0 以降) などの HTML5 互換 Web ブラウザー |
パススルー | Microsoft リモート デスクトップ アプリケーションをサポートするその他の任意のオペレーティング システム |
注
Microsoft Edge Chromium IE
モードは、マイ アプリ ポータルを使用してリモート デスクトップ アプリにアクセスする場合に必要です。
事前認証フローは、パススルー フローよりも多くのセキュリティ上の利点を提供します。 事前認証を使用すると、オンプレミス リソースのシングル サインオン、条件付きアクセス、2 段階認証などの Microsoft Entra 認証機能を使用できます。 また、認証されたトラフィックのみが、ネットワークに到達できます。
この記事に記載された手順を 2 か所変更するだけで、パススルー認証を使用できます。
- RD ホスト エンドポイントの発行 手順 1 で、事前認証方法を パススルーに設定します。
- RDS トラフィックをアプリケーション プロキシに直接送信する場合は、手順 8 を完全にスキップします。