見出し画像

Azure Virtual Desktop の機能概要、利用方法、利用シーンの解説

はじめに

クラウド上に展開するデスクトップ及びアプリの仮想化サービスである、Azure Virtual Desktop (以下、AVD と記載する)についてまとめてみました。

Azure Virtual Desktop (AVD) とは

Microsoft Azure 上で展開可能な仮想デスクトップサービスです。
本投稿ではデプロイ方法や構成方法については触れませんが、特徴や管理手法などについて紹介していきたいと思います。

AVD の特徴

AVD の主な特徴は以下となります。

  • マルチセッションの Windows 11 または Windows 10 を展開して、スケーラビリティを備えた仮想デスクトップ環境を提供する

  • エンタープライズ向けの Microsoft 365 アプリを展開し、マルチユーザー向け仮想デスクトップとして最適化する

  • 既存のリモート デスクトップ サービス (RDS) と Windows Server のデスクトップやアプリについてもサポート対象

  • デスクトップとアプリの両方を仮想化

  • 統一された管理インターフェイスで、Windows および Windows Server オペレーティング システムのデスクトップとアプリを管理する

主な機能としては以下となります。

  • ゲートウェイサーバーを展開せずに Microsoft Azure 内に仮想デスクトップ環境が構築できる

  • ホストプールを複数展開できる

  • 展開できるイメージは Marketplace から選択したり、独自で作成したカスタムイメージを展開できる

  • Windows 11 / Widnows 10 Enterprise マルチセッションを使用すると、収容率を上げてVM数やOSのオーバーヘッドの削減に繋げられる

  • 個人用デスクトップの展開もできる

  • 自動スケールを使用し、時刻、曜日、利用率に応じて自動的にVM数を増減できる

AVD への接続方法や対応OSは以下となります。

AVD のユースケース

AVD のユースケースですが個人用デスクトップとプールされたデスクトップでは大きく異なります。

個人用デスクトップ

個人用デスクトップは特定のユーザーに専用のリソースを割り当てる形式をとり、セッションホストを提供されます。
提供されたユーザーは接続するたびに常に同一のセッションホストに割り当てられるため、特定業務や開発といったケースで利用されます。
主な用途としては以下となります。

  • 少人数しか使わない特定業務用のデスクトップ環境

  • 開発者向けのデスクトップ環境

  • CADのようなハイスペック環境が必要なデスクトップ環境

プールされたデスクトップ

プールされたデスクトップについては、複数人で1つのセッションホストをシェアする形式でユーザーに割り当てられます。
ユーザーは接続するたびに負荷分散アルゴリズムに従って、現在使用可能なセッションホストに割り当てられます。
RDS環境のように接続するたびに常に同じセッションホストに戻るわけではないため、移動プロファイルが必要になったりデスクトップ環境の個別カスタマイズは出来ず、管理者が定めた決められた環境が提供される形となります。
主な用途としては以下となります。

  • 社員共用のデスクトップ環境

AVD の管理

AVD を管理するには以下の視点での運用管理が必要となります。

  • ID管理

  • ライセンス管理

  • アクセス管理

  • リソース管理

  • リソースの監視

  • セッションホストの管理

  • スケーリング

  • セキュリティ

それぞれについて見ていきましょう。

AVD のID及び認証

AVD では選択した構成に応じてさまざまな種類の ID がサポートされます。
構成に対して使用できる ID の組み合わせは以下のようになっています。

クラウドのみで構成する場合は、一番下の構成がシンプルな構成となり管理もしやすいためお勧めです。
AD DS があり Microsoft Entra ID と同期している場合(Microsoft Entra Connect)は、1番目 or 2番目の構成がお勧めとなります。
セッションホストの構成管理にグループポリシーを使いたいというケースでは、Microsoft Entra Domain Services を構成することも検討しても良いかもしれません。
Microsoft Intune をご利用の場合は、Domain Services より Microsoft Intune のデバイス構成プロファイルで配布することをお勧めします。

AVD へのアクセス管理

AVD へのアクセス管理には Microsoft Entra 条件付きアクセスを利用します。(※要 Microsoft Entra ID P1 以上のライセンス)
条件付きアクセスを使用することで、AVD へのアクセスかつ特定のユーザー/グループに対して様々な条件をつけてアクセスの管理を行うことができます。

アクセスの条件としては以下が設定可能です。

  • ユーザー / グループ

  • ターゲットのアプリケーション(ここでは Azure Virtual Desktop)

  • ユーザーのリスク(※要 Microsoft Entra ID P2 ライセンス)

  • サインインのリスク(※要 Microsoft Entra ID P2 ライセンス)

  • デバイスのOS(Android/iOS/Windows/macOS/Linux)

  • IP アドレス

  • クライアントアプリ

  • デバイスのフィルタールール

上記条件にマッチしたものに対して以下の制御が可能です。

  • アクセスのブロック

  • アクセス許可

    • 多要素認証の要求

    • 認証強度の必要性

    • デバイスの準拠状況(Microsoft Intune 連携)

    • Microsoft Entra ハイブリッド参加済みデバイス(Microsoft Entra + AD DS 構成)

    • 承認されたクライアントアプリ(Microsoft Intune 連携)

    • アプリの保護ポリシー必須(Microsoft Intune 連携)

    • パスワード変更を必須

AVD のリソース管理

AVD のリソース管理は後述する表にあるロールを用いて行います。
ロールベースのアクセス制御(RBAC)を使用することでリソースへのアクセスを効率よく管理します。
主な用途としてはホストプールやアプリケーショングループ、ワークスペース、ユーザーセッションの運用管理用途と、仮想デスクトップの電源ON/OFF、仮想マシンの構成管理となります。
標準の組み込みロールの所有者、共同作成者、閲覧者では必要以外の権限も割り当てられてしまうため、必要最低限の権限ロールの割り当てをします。

例えば日常的なユーザーの利用状況を監視し、セッション切断するなどのオペレーションが必要な場合は[Desktop Virtualization User Session Operator]を割り当てます。
Automation や Logic Apps などで仮想マシンの起動停止を計画的に行いたい場合は、リソースへ[Desktop Virtualization Power On Off 共同作成者]を割り当てて起動・停止のみ行える権限を割り当てて運用します。
この様に、必要最低限の権限を割り当てることでオペミスなどの軽減に繋げることができます。

AVD の監視

AVD の監視をするには Azure Monitor (Log Analytics ワークスペース)のログから監視、分析を行います。
分析情報として定義されているデータセットは以下のものがあります。

  • セッションホストからのパフォーマンスカウンター

  • セッションホストからの Windows イベントログ

  • サービスインフタストラクチャからの AVD 診断

また、接続品質管理として[接続ネットワークデータ]の提供もされています。
ネットワークデータについては以下の情報が含まれています。

  • 推定利用可能な帯域幅

  • 推定ラウンドトリップ

  • 相関関係 ID

  • タイムスタンプ

  • リソース ID

このようなログを利用し、ユーザーの利用状況を監視したり、VM の利用状況を監視してセッションホストの増減などの運用管理に役立てることができます。

AVD ホストの管理

AVD のセッションホストの管理には Microsoft Intune を用いて管理します。
Microsoft Configuration Manager を利用することも可能ですが Microsoft Intune の利用をお勧めします。

通常の Windows デバイスを管理するのと比較して AVD ホストを管理する場合、以下の様な制約があります。

  • 以下の構成プロファイルはサポートされない

    • ドメイン参加

    • Wi-Fi

  • vTPM を利用する機能はサポートされない

  • 以下のリモート操作はサポートされないもしくは非推奨

    • Autopilot リセット

    • BitLocker キーの交換

    • 新たに開始

    • リモートロック

    • パスワードのリセット

    • ワイプ

また、マルチセッションではユーザーベースの構成はサポートされていません。

AVD のスケーリング

仮想マシンのスケーリングをすることで、AVD のコストの削減が見込めます。
例えば、ピーク時間以外の使用時間帯にセッションホスト VM をシャットダウンして割り当てを解除し、ピーク時間帯に再度起動することで VM の稼働コストを落とします。
スケーリングには[スケーリングプラン]や自動スケーリングツールを Azure Automation や Azure Logic Apps を用いて実装します。

スケーリングプランについては以下の設定にて作成します。

  • 実行する曜日

  • 開始時刻

  • 負荷分散アルゴリズム

  • ホストの最小割合

  • 容量のしきい値

  • ピーク時間

ランプダウンする際にはユーザーのログオフの強制や、ユーザーをログアウトしてからシャットダウンするまでの遅延時間、通知メッセージの出力もサポートされています。

スケーリングプランではなく独自のルールでスケーリングを行いたい場合は、Azure Automation や Azure Logic Apps を用いて条件等を作成して実装します。

AVD のセキュリティ

AVD のセキュリティ管理の責任分界点は以下のようになっています。

基本的にはデプロイしたリソースの構成についてはデプロイした側の責任、管理するコントロールプレーンや物理的なものに関しては Microsoft の責任となっています。

デプロイしたリソースに対してのセキュリティ対策については以下の様な対策を行います。

  • Microsoft Defender for Cloud の利用

  • 多要素認証の要求

  • 条件付きアクセス

  • 監査ログの収集

  • VM の暗号化(ディスク暗号化オプションの利用)

  • Microsoft Defender for Endpoint の有効化

  • Azure Firewall によるトラフィック制御

  • ネットワーク仮想アプライアンスの利用

  • ユーザープロファイルの保護

  • RDセッションでのローカルデバイスリダイレクト制御

  • 機密コンピューティング仮想マシンの利用

    • OS ディスクの暗号化

    • セキュアブート

    • ブート生合成の監視

    • vTPM の利用

    • Windows Defender Credential Guard の利用

  • Windows Defender Application Control

  • Windows Update の適用

上記とは別にアクセスする物理端末側についてもゼロトラストセキュリティの適用など、考慮する点は多くあります。
セキュリティルールや必要性を検討して適切な構成を取る様にすることで、脅威から環境を防御することがでkります。

まとめ

如何でしたでしょうか。
AVD の管理をする上で必要な項目について主軸を置いて考察してきました。
運用管理する上ではやはり以下については深く検討するべきかと思います。

  • ID管理

  • 権限管理

  • アクセス管理

  • 運用監視

  • セキュリティ

適切な権限管理、セキュリティ管理を行って AVD の運用を行う様検討いただければと思います。

ライセンス関連について

本投稿にて Microsoft Azure 従量課金以外でご紹介した製品・サービスについてのライセンスについてまとめておきます。

この記事が気に入ったらサポートをしてみませんか?