はじめに

先日の Ignite 2019 でも発表がありましたが、Windows Virtual Desktop(WVD)サービスが日本リージョンにもロールアウトされます。ようやく日本での使い勝手も向上する見込みが立ち、WVD の利用を本格的に検討し始めている方も多いかと思います。

※Windows Virtual Desktopについて詳細を知りたい方は以下の記事をご参考ください。
「ついに公開︕ MicrosoftのDaaS︕︖ Windows Virtual Desktop (WVD)とは」

さて、今回は WVD をより使いやすい環境にするために必要な SSO 環境の構成について紹介します。

クラウド時代に必須の シングルサインオン(SSO)

昨今はデバイスやアプリケーション、クラウドサービスなどユーザー認証を必要とするシステムが多く存在しています。これらの IT システムを利用するにあたって外せないものがあります。それはユーザー認証です。
これらシステムの認証で個別の ID 情報を使っていると、サービスごとのパスワード管理が複雑で使いづらいものになってしまいます。また、覚えやすくて簡単なパスワードを使いまわしたり、パスワードを書いたメモの紛失するなど、セキュリティリスクも高まってしまいます。

こういった課題を解決するため、ユーザー認証で利用する資格情報を統一する仕組みとしてシングルサインオン(SSO)があります。統一した認証サービスによって、ユーザーは認証を意識することなく様々なサービスを利用することができます。また、スマートデバイスへの通知など利用した多要素認証を実装できるものもあるので、パスワードの流出といったセキュリティ事故の被害を軽減できます。

様々なクラウドサービスを利用することが重要視される現代では必須のソリューションとも言えます。多くの SSO ソリューションが開発されていますが、Azure では Azure AD がその機能を提供します。

WVD における SSO

この SSO を使って WVD をより使いやすくする方法についてご紹介します。今回は WVD で発生するユーザー認証にフォーカスして説明します。

ユーザーが WVD に接続してアプリケーション(Office 365)を使うまでの流れを下の図に示します。まず、①接続元のデバイスへサインインします。その後、②WVD クライアントを起動し、③割り当てられたリソースの一覧から接続するものを選択します。デスクトップに接続したら、④接続先の環境でアプリケーションを利用します。
このように、ユーザーがデバイスを立ち上げてからアプリケーションを使うまで最低4回の認証が必要となります。結構多いですよね、毎日この作業が発生するとなると少し考えてしまいそうです。

そこで、今回は Azure AD を活用した SSO 環境で、認証回数を半分に減らす方法を紹介します。

SSO 環境の構成に必要なもの

接続元デバイスの Azure AD 参加

接続元のデバイスで WVD クライアントへスムーズにサインインするために接続元のデバイスで次のうちいずれかの構成が必要です。

  • Azure AD 参加
  • ハイブリッド Azure AD 参加

これらのデバイス構成を利用すると、ユーザーはデバイスにサインインするときに使用したアカウント情報で各サービスに SSO できるようになります。SSO は Internet Explorer か Microsoft Edge を利用します。

実際にサインインするイメージが次の通りです。Microsoft Edge を起動し、利用するサービス(今回は WVD の Web クライアント)に接続します。

すると、Azure AD の認証ページにリダイレクトされますが、ここでは「Connected to Windows(Windows に接続済み)」という状態で、デバイスにサインインした時のアカウント情報を選択できるようになっています。

このアカウントを選択すると、パスワードの入力を求められることなく自動的にサービスに接続できます。ここからユーザーに割り当てられているリソースを選択していきます。

余談ですが、WVD ではこの通り接続時に Azure AD 認証を利用するので、条件付きアクセスと組み合わせた多要素認証(MFA)を実装することも可能です。

Azure AD の認証構成

Azure AD にはいくつか認証構成の方式がありますが、今回目指すシームレスな SSO 環境を構成するためには次のいずれかが必要です。

  • パスワードハッシュ同期 + シームレス SSO
  • パススルー認証 + シームレス SSO
  • フェデレーション構成(ADFS 等)

シームレス SSO はパスワードハッシュ同期かパススルー認証で利用できる Azure AD の機能です。簡単に言えば、指定したドメインに参加したデバイスで、先進認証に対応したアプリケーション(Office 等)へのサインインをシームレスに実行できます。

この中で比較的に構成が簡単で多く利用されているパスワードハッシュ同期でシームレス SSO を有効化する手順を紹介します。

まずは Azure AD テナントでシームレス SSO の機能を有効化します。Azure AD Connect をセットアップする際、サインオン方式を選択する手順で「パスワードハッシュ同期」と「シングルサインオンを有効化する」を選択します。

既にセットアップ済みの環境の場合、タスクメニューの中から「ユーザーサインインの変更」から設定ページを開けます。

「シングルサインオンを有効にする」ページで、シームレス SSO を実行するドメインの資格情報を入力します。

シームレス SSO の構成が適用されているかは、Azure ポータルの[Azure Active Directory]>[Azure AD Connect]から確認できます。[シームレスなシングルサインオン]が有効となっていれば成功です。

シームレス SSO を有効化するため、セッションホスト側にも追加で設定が必要です。OS 内のイントラネットゾーン設定に次の URL を追加します。

https://autologon.microsoftazuread-sso.com

GPO でイントラネットゾーン設定を配布する手法も Docs に記載されています。
https://docs.microsoft.com/ja-jp/azure/active-directory/hybrid/how-to-connect-sso-quick-start#step-3-roll-out-the-feature

シームレス SSO で Office 365  を利用するときの操作を録画したのでご覧ください。WVD のセッションホストに「sync-user2」というユーザーでサインインしている様子です。Office 365 にサインインしていない状態から、パスワードを入力することなく OneDrive や Outlook を利用し始めることができます。

さいごに

今回紹介した構成によって、②と④のサインインを簡略化することができます。本来必要な4回の認証を半分にすることができました。
できれば③の認証も SSO したいところですが、現状これを簡略化する手法は調査中です。(WVD 用の PowerShell Cmdlet の中には ADFS を指定するようなオプションがありますが、、、)

WVD でも Azure AD の機能を活用することによりシームレスなサービスへのアクセを実現できます。今回紹介した Azure AD によるシームレス SSO は無料の機能なのですぐにでも使い始めることができます。これによって、デスクトップ環境が分かれてもユーザーの利便性を向上できます。

 

 

この記事を書いた人

曽根悠斗
曽根悠斗
Azureやってるエンジニア
NWエンジニア⇒クラウドエンジニアへスキルアップし、
IaaSだけでなくAzureの各種サービスを幅広く扱えるように修行中
好きなAzureのサービスはAzure ADとNetwork Watcher
WVDやGlobal Reachなど新しいサービスを追わせてもらっています
真のAzureエキスパートになる日を目指して