IntuneからWin32アプリ(.exe形式)の展開

皆さんこんにちは。国井です。

Tech Summit 2018では、本当にたくさんの方にお越しいただき、ありがとうございました。
今日は、そのTech Summit 2018のセッションのデモでしくじったIntuneからWin32アプリの展開方法についてです。

Intuneでは最近、.msiファイルだけでなく、.exeファイルもクライアントに展開できるようになりました。Windowsアプリのセットアッププログラムの大半がsetup.exeのような形式で提供されていることを考えれば、これは画期的なことだと思います。ところが、Intuneのポータル画面を見ると、setup.exeがそのまま登録できないような形式になっているんですよね。

じゃあ、どうやって登録していけばよいかを見ていきます。

.intunewinファイルの作成

Intuneから.exe形式のセットアッププログラムを展開するときは、セットアッププログラムを.intunewinという拡張子に変換しておく必要があります。
この設定は、GitHubからツールが出ているので、これを使います。
GitHubからダウンロードしたら、続いて実際に.intunewinに変換するセットアッププログラムを用意します。今回は、7zipを使うことにします。

ダウンロードした7zipのセットアッププログラム(7z1805-x64.exe)をc:\7zipフォルダーに、生成された.intunewinファイルを保存場所としてc:\intunewinフォルダーをそれぞれ用意したら、GitHubからダウンロードしたツールのうち、IntuneWinAppUtil.exeを次のように実行します。

IntuneWinAppUtil.exe -c c:\7zip -s 7z1805-x64.exe -o c:\intunewin

実行時の処理の様子がこちら。

image

image

出来上がったファイルをIntuneに登録します。

image

Intuneにセットアッププログラムを登録

.intunewinファイルを登録します。
Microsoft 365デバイス管理ポータル(https://devicemanagement.portal.azure.com/)から
クライアントアプリ > アプリ >
[アプリの種類]から[Windowsアプリ(Win32)]を選択し、まずは.intunewinファイルを登録します。

image

続いて、残りの項目も埋めていきましょう。

[アプリ情報]の項目はインストールするアプリの情報を入力し、
[プログラム]の項目はインストールするときのオプションスイッチを指定します。
ちなみに、7zipの無人インストールは/Sを使います。
アンインストールのオプションスイッチは.. ごめんなさい、適当に入れちゃいました。
あと、[インストールの処理]部分は、[システム]を選択すれば、すべてのユーザー用にインストールされます。

image

それから[必要条件]の項目は、インストール要件を定義します。

image

[検出規則]の項目では、どのような状態だったら、既にアプリがインストールされているか?という条件を設定します。
例えば、c:\Program Files\7zipフォルダーがあったら、既にインストールされていると判定する場合であれば、
[規則の形式]から手動を選択して、フォルダーを直接指定します。
[規則の形式]では、特定のレジストリ項目があるか?とか、PowerShellスクリプトを使って判定させたりすることも可能です。

image

ここまで出来たら、[追加]ボタンをクリックして登録します。登録が完了したら、ユーザーまたはデバイスへの割り当てもお忘れなく。

で、ここからが大事なポイントですが、
Win32アプリのインストールは、Intune経由でPowerShellスクリプトを実行するときに使う、Intune Management Extensionエージェントを利用します。そのため、Intune Management ExtensionエージェントをサポートするWindows 10クライアント、つまりAzure AD参加していることが前提条件になります。
(一部の方に、Azure ADに登録されているだけでも設定されました、と言ってしまいましたが、あれは幻だったようです)あと、ハイブリッドAzure AD参加もOKだという話を人づてに聞いたのですが、後で検証してみます。

2019年2月5日追記
Intune Management Extensionエージェント自体がハイブリッドAzure AD参加でも利用できるようになったそうです。よって、ハイブリッドAzure AD参加デバイスにもWin32アプリが展開できるようになっています。