はじめに
デバイス管理に携わる全国の情シス担当の皆様、日々の業務お疲れ様です。コーポレートエンジニアリング部ファシリティチームの佐藤です。いわゆる”情シス”と呼ばれる役割のチームに所属し、社内インフラ(PCやネットワーク機器)の管理・運用に携わっています。
この記事では以前ご紹介したWindows 10ゼロタッチキッティングを活用しキオスク端末(マルチアプリキオスク)を導入した取り組みを紹介します。
目次
導入背景
新型コロナウイルス感染症の感染拡大が懸念されていますが、社内ではファシリティチームもさることながら関係各所の涙ぐましい努力の甲斐もあり、テレワーク可能な業務が日々拡大されつつあります。
私が所属するファシリティチームではテレワーク推進のために、Microsoftが提供するDaaSサービス WVD(Windows Virtual Desktop)を採用しています。
採用の主な理由は以下の通りです。
- 社内で導入済みのAzure ADやIntuneなどMicrosoft製品の知識や経験が既にあるため
- 既に契約しているMicrosoftとのE5ライセンスを活用できるため
- セキュリティ対策が為されている既存の認証システムを利用できるため
弊社では「Windows Virtual Desktop(Spring 2020 リリース)」を利用しています。このバージョンからAzureのGUI上で構築が完結できます。そのため検証や環境構築は比較的スムーズに完了できました。
ところが、WVD導入に際し「接続元のデバイス」が大きな懸念点として浮上してきました。
弊社ではOSに関わらず、すべてのデバイスで以下の条件が必須事項となっています。
- MDM(Intune)に登録されていること
- 会社標準のウイルス対策ソフトがインストールされていること
- デフォルトのポリシー準拠を満たしたPCであること
上記の条件を前提とし、WVDを利用する上で業務形態・業務環境にとらわれることなく機密性の高い情報の取り扱いに対応できるように以下の条件を追加しました。
- デバイスで利用できる機能を制御する(スクリーンショットやファイル作成など)
- ローカルディスクにファイルなどを保存させない
- アプリケーションを自由にインストールさせない
- デバイスを操作できる範囲をWVD接続のみとする
そして、上記の条件を満たすためのWVD接続専用デバイスの選定に取り掛かかりました。
シンクライアント端末の検討
「ローカルディスクにファイルを残さない」となると、まず候補に挙がるのが、シンクライアント端末です。
シンクライアント端末は、端末の機能を最小限にしたもので、データの保存や処理の多くを仮想デスクトップマシン側で行います。弊社が当初選定したシンクライアント端末OSは、Windows 10 IoT Enterpriseです。統合書き込みフィルター処理 (UWF) 機能を標準搭載しており、設定不要でシンクライアント環境を実現できるものです。
シンクライアント端末をWVD接続専用デバイスとして検証を進めた結果、以下の課題が出てきました。
課題1:キッティングとメンテナンス
一般ユーザーと管理者を交互にログインし、必要な設定の追加や有効/無効の作業を実施しました。しかし、ほぼ手作業が中心となるため、設定ミスや設定漏れのリスクがありました。
最終的に、今回検証したシンクライアント端末の仕様だと、メンテナンスをするためには管理者でのログインが必要となるため、テレワークで利用する場合の対応が困難だと判断しました。
課題2:ヘルプサポート
ユーザーに代わって遠隔でPCを操作するために、弊社ではWindows 10標準のクイックアシストを利用しています。
しかし、シンクライアント端末のOSであるWindows 10 IoT Enterpriseにはクイックアシスト機能はついていないため、遠隔でのサポートができません。そのため、テレワーク利用を前提とした場合、ヘルプサポートのためのリモートデスクトップが利用できません。
課題3:Windows デスクトップ クライアントのアップデート
WVDへの接続はWindows デスクトップ クライアントを採用しています。
その際の課題点はWindows デスクトップ クライアントの定期アップデートに対応できないことです。一般ユーザーではアップデートに必要なフォルダへアクセスできず「ファイルを読み取るときにエラーが発生しました」のエラーとなり、定期アップデートが実施できない結果となりました。
マルチアプリキオスク端末への移行
上述の通り、シンクライアント端末での課題を運用でカバーすることは困難と判断し、別の案を模索しました。
模索した中で今までの知見と経験を活かせる対応策として、Windows AutoPilotでキッティング可能なマルチアプリキオスク端末が候補に挙がりました。
マルチアプリキオスクで実現可能なこと
従来のキオスクモードは、単一のアプリのみ実行が可能となり、一般ユーザーはそれ以外のアプリを操作できません。
しかし、Windows 10 バージョン1709以降で対応しているマルチアプリキオスクは、管理者が複数のアプリを実行できるようにキオスクを作成できます。
そのため一般ユーザーが操作可能なアプリを明示的に制限することで、特定の作業のみで使用するデバイスとしてPCをセットアップできます。
そして、マルチアプリキオスクをIntuneから展開および管理することで以下の課題を解決しました。
- デバイス制御
- Intune登録デバイスになるため、ログインなど多くのログの収集が可能
- 遠隔によるワイプが可能
- 管理者が許可しないアプリの制限が可能
- 情報漏洩のリスク
- Intuneによる構成プロファイルにて、BitLockerによる暗号化の強制が可能
- ファイルのアップロードおよびダウンロードの制御が可能
- ログインアカウントをAzure ADアカウントのみに制限が可能
- ヘルプサポート
- 許可するアプリにクイックアシストを追加することで、デバイスの不具合時は遠隔サポートが可能
- Intuneにより追加のアプリや設定が管理者側で容易に可能
Windows AutoPilotで実現可能なこと
Windows AutoPilotとは自社環境に適したWindows 10デバイスの初期セットアップをクラウドを介して自動的に行うサービスです。
1台ずつのOSイメージ展開とは違い、デバイス情報を事前にIntuneへ登録しておくことで個別にセットアップする必要がなくなります。そして、一般ユーザーに端末を配送し、デバイスを初回起動したタイミングで自動で企業による構成や設定、必要なアプリケーションのインストールが実行されます。
冒頭でも紹介したWindows 10ゼロタッチキッティングと同様に、今回もOEMベンダーの協力のもと、デバイス情報をIntuneにタグ付きで登録します。
Windows AutoPilotによるキッティングの流れは以下の図の通りです。
マルチアプリキオスク端末の構築
次に、Windows AutoPilotを利用してマルチアプリキオスク端末をセットアップするまでの手順を順を追って説明します。
今回構築するキオスクの構成は以下の通りです。
- デバイスOS:Windows 10 Pro(バージョン 2004)
- 許可するログイン種類:Azure AD ユーザー
- 使用を許可するアプリ
- Windows デスクトップ クライアント
- クイックアシスト
- Windows の設定
手順は以下の図の通りです。
最終的にユーザーがログインすると以下の図のデスクトップ画面となります。
デバイス登録の確認
キオスク端末とするデバイスを購入する際、OEMベンダーにIntuneへの登録と共にグループタグを付与するように依頼します。Intuneのデバイス登録画面に正常にデバイスが登録されていることを確認します。
グループの作成
キオスク端末を利用するユーザーのための「ユーザーグループ」とキオスク端末とするデバイスが所属する「デバイスグループ」を作成します。
今回はWindows AutoPilot用プロファイルの適用を自動化するため、デバイスグループは動的グループとして作成しメンバー条件を「グループタグ:[KIOSK]」とします。
作成するグループは以下の通りです。
- ユーザーグループ:静的(手動でキオスク端末を利用するユーザーを追加)
- デバイスグループ:動的メンバーシップルール
アプリの作成
キオスク端末がWVDへ接続する際に使用する Windows デスクトップ クライアントをIntuneから展開します。
下記のサイトからWindows デスクトップ クライアント の最新版をダウンロードします。
Intuneにサインインし、「アプリ」→「追加」をクリックし、アプリの種類は「基幹業務アプリ」を選択します。
「アプリ パッケージ ファイルの選択」から事前にダウンロードしたWindows デスクトップ クライアントのmsiファイルをアップロードします。
アプリの追加画面にてアプリ名などを任意で設定します。そして、コマンドライン引数は以下のものを利用します。
/qn ALLUSERS=2 MSIINSTALLPERUSER=1
割り当て先は、事前に作成したデバイスグループを指定します。
AutoPilotプロファイル作成と適用
キオスク端末用のAutoPilotプロファイルを以下の設定で作成します。
設定項目 | 設定値 |
---|---|
配置モード | 自己展開(プレビュー) |
Azure AD への参加の種類 | Azure AD 参加済み |
言語(リージョン) | オペレーティング システムの既定値 |
プライバシーの設定 | 非表示 |
アカウントの変更オプションを非表示にする | 非表示 |
ユーザー アカウントの種類 | 標準 |
割り当て先 | 事前に作成したキオスク端末が所属するデバイスグループ |
ここで、配置モードを「自己展開モード」とする点がポイントです。なお、自己展開モードはキオスク、デジタル看板デバイス、または共有デバイスとしてWindows 10デバイスを展開する場合の設定です。
ユーザー アカウントの種類は一般ユーザーである「標準」を選択します。
登録ステータスページ作成と適用
キオスク端末用の登録ステータスページを作成します。
登録ステータスページ(ESP)は、デバイスのキッティング時にプロビジョニングの進行状況を表示する設定です。
ここではWindows デスクトップ クライアントがインストールされるまでデバイスの利用をブロックするように指定します。割り当て先は、事前に作成したキオスク端末が所属するデバイスグループとします。
レイアウトXMLの作成
キオスク端末で表示するスタートメニューのレイアウトをXMLファイルとしてエクスポートします。
まず、通常のWindows 10のPCにて、「Windows の設定」から「タブレットモード」を「オン」にします。
次に、タブレットモードである状態で、スタートメニューに必要なアプリのアイコンを配置していきます。その際に、タイルの大きさやタイトル名は任意で設定します。
配置完了後、PowerShellを管理者権限で起動し、以下のコマンドを実行してレイアウトXMLファイルをエクスポートします。
Export-StartLayout -path C:¥Layout-KIOSKDevice.xml
アプリ情報の取得
次に、アプリ情報として必要なAppIDとインストールパスを取得します。
AppIDの取得
前述のレイアウトXMLの作成で配置したアプリの情報をPowerShellにて取得します。
引き続き、先程の通常のWindows 10のPCにてPowerShellを起動し、以下のコマンドを実行します。
Windows デスクトップ クライアント
get-StartApps | ?{$_.name -like "remote*"}
クイックアシスト
get-StartApps | ?{$_.name -like "クイック*"}
Windows の設定
get-StartApps | ?{$_.name -like "設定*"}
以上のコマンドの実行結果に表示されるAppIDを記録しておきます。
インストールパスの取得
また、各アプリのインストール先のパスも同様に記録しておきます。
2つのアプリのインストールパスを例として挙げます。
Windows デスクトップ クライアント
C:¥Program Files¥Remote Desktop¥msrdcw.exe
クイックアシスト
C:¥Windows¥System32¥quickassist.exe
構成プロファイル(キオスク)の作成
デバイスをキオスク端末とするための構成プロファイルをIntuneにて作成します。
Intuneにサインインし、「デバイス」→「構成プロファイル」→「プロファイルの作成」を選択します。
「プロファイルの作成」ペインで、プラットフォームを「Windows 10 以降」、プロファイルの種類を「テンプレート」し、一覧から「キオスク」を選択して下部にある「作成」を選択します。
すると、構成プロファイルの作成画面が開きます。
「基本」タブにて、プロファイルの名前を任意で入力し、「次へ」を選択します。
次に、「構成設定」タブにて、以下のように設定します。
設定項目 | 内容 |
---|---|
キオスク モードを選択します | マルチ アプリ キオスク |
S モード デバイスで Windows 10 を対象とする | いいえ |
ユーザーのログオンの種類 | 事前に作成したユーザーグループを選択 |
許可アプリ構成
「ブラウザーとアプリケーション」の追加画面にて、「Win32 アプリの追加」ボタンを押して以下の通り設定を追加します。
- 許可するアプリ:Windows デスクトップ クライアント
アプリケーション名:Remote Desktop
- アプリの実行可能ファイルのローカルパス:C:¥Program Files¥Remote Desktop¥msrdcw.exe
- ユーザーモデルID (AUMID):<コマンドで取得したAppID>
- タイルサイズ:任意
- 自動起動:オン
許可するアプリ:クイックアシスト
- アプリケーション名:Remote Desktop
- アプリの実行可能ファイルのローカルパス:C:¥Windows¥System32¥quickassist.exe
- ユーザーモデルID (AUMID):<コマンドで取得したAppID>
- タイルサイズ:任意
- 自動起動:オフ
「ブラウザーとアプリケーション」の追加画面にて、「AUMIDの指定によるアプリの追加」ボタンを押して設定を追加します。
- 許可するアプリ:設定
- アプリケーション名:設定
- AUMID/パス:<コマンドで取得したAppID>
「スタート メニューのレイアウト」にて事前にエクスポートしたレイアウトXMLファイルをアップロードします。
「Windows タスクバー」と「ダウンロード フォルダーへのアクセスを許可する」「アプリの再起動のためのメンテナンス期間の指定」は任意で設定します。
「割り当て」では事前に作成したユーザーグループを指定します。
なお、ここでデバイスグループを割り当てにすると、Azure ADユーザーでログオンできないという問題が発生します。Microsoftによると、ユーザーログオンの種類で「Azure ADユーザーグループ」を指定する場合は、プロファイルの割り当て先もAzure ADユーザーグループとする必要があるとのことです。
以上でキオスクプロファイルの作成と適用が完了します。
デバイスのセットアップ
実際にデバイスをセットアップしていきます。
PCの電源をオンにし、ネットワークに接続するとWindows AutoPilotにより自動でセットアップが開始されます。ここでは「デバイスの準備」と「デバイスのセットアップ」が実施されます。
「デバイスの準備」と「デバイスのセットアップ」が完了すると、ユーザーのログイン画面が表示されます。キオスク用ユーザーグループ内のユーザーのアカウント情報を入力して、ログインを実施します。
すると、自動で「アカウントのセットアップ」が実施されます。
セットアップがすべて完了すると、Windows 10のデスクトップ画面が表示されます。その後、一度ログオフして再度ログインします。
デバイスにログインすると、それ以降はレイアウトXMLで指定したキオスク画面が表示されるようになります。
これにより、該当デバイスはキオスク端末となり、「Windows デスクトップ クライアント」「クイックアシスト」「設定」のみが操作可能な状態となります。
またプロファイルにて「Windows デスクトップ クライアント」の自動起動をオンの設定としたため、デバイス起動と同時にアプリが立ち上がります。ユーザーはデバイス起動と同時にWVDへ接続する画面を操作することが可能となります。
構成プロファイルの追加
Intuneによるマルチアプリキオスクを採用したことで、デバイスのセットアップ後もユーザーや組織のニーズに合わせて設定のカスタマイズが可能となっています。
ここでは、Intuneの構成プロファイルを使用して「Windows の設定」画面に表示する項目を制御する例を紹介します。
Intuneにサインインし、「デバイス」→「構成プロファイル」→「プロファイルの作成」を選択します。
「プロファイルの作成」ペインにてプラットフォームを「Windows 10 以降」とします。プロファイルの種類を「テンプレート」とし、「デバイスの制限」を選択して、下部にある「作成」を選択します。
すると、構成プロファイルの作成画面が開きます。
「基本」タブにて、プロファイルの名前を任意で入力し、「次へ」を選択します。
次に、「構成設定」タブの「コントロール パネルと設定」にて「Windows の設定」画面で表示しない項目を「ブロック」にします。割り当て先はキオスクデバイスグループとして、プロファイル作成を完了させます。
デバイスに適用されると、「Windows の設定」で表示される項目が制限されていることが確認できます。
まとめ
マルチアプリキオスクの採用でセットアップ後のカスタマイズやアプリアップデート配信など管理面において柔軟に対応ができます。また、一度構築されたセットアップ手順はIntuneによって自動化されるため、作業ミスや手順漏れがないため安定した展開環境を維持できます。Windows Virtual Desktopへの接続デバイスの1つの例として、本記事がお役に立てれば幸いです。
さいごに
ZOZOテクノロジーズでは、社内の課題をITの力で解決する仲間を募集中です。WindowsとMacはもちろんiPhoneやiPadなど様々なデバイスを効率よく管理と制御することにどんどんチャレンジできます!
ご興味のある方は、下記のリンクからぜひご応募ください!