メインコンテンツへスキップ
ZUNDA株式会社

Iruのアプリ配布を理解する(macOS)

MDM の Iru (旧 Kandji) について、管理者がアプリケーションの配布をコントロールする方法と、配布したアプリがユーザーに意図的に削除された場合の対策を整理しました。なお、この記事は macOS を対象にしています。詳細な設定手順は Iru公式ドキュメント もあわせてご確認ください。

1. アプリケーションの配布方法

Mac へのアプリケーション配布は、大きく次の3つです。
  • Apps and Books (旧VPP): App Store のアプリケーションを Apple Business (旧ABM) 経由で配布する方式です。ユーザーの Apple Account (旧Apple ID) は不要で、ライセンスも Iru で管理できます。
  • Auto Apps : Iru が用意している主要なアプリケーションを配布する方式です。Iru でアップデートを細かく管理できます。
  • Custom App : 管理者が自分でインストーラをアップロードして配布する方式です。Auto Apps や App Store にないアプリケーションはこの方法を利用します。

配布方法比較

項目
Apps and Books
Auto Apps
Custom App
補足
配布元
App Store
Iru 提供
自身で用意
• Auto Apps や App Store にないアプリケーションは Custom App で配布する
自動配布
(強制インストール)
-
セルフサービス
(任意インストール)
-
自動更新

新バージョン検知時に自動更新される

適用タイミングを設定可能

アプリケーション自体に自動更新機能がないと更新されない
運用負荷

Apple Business 側にも設定が必要

Iru が自動処理してくれる

更新を自身で管理する必要がある
割当を解除した場合の挙動
削除される
そのまま残る
そのまま残る
アプリケーションの配信は、基本的に次の順番で検討することをおすすめします。
  1. Iru にて Auto Apps が提供されているかを確認する
  2. Apps Store に存在するか(Apps and Books で配布できるか)を確認する
  3. Custom App を作成する

2. インストール

インストール時に選べる適用方法(適用モード)を表にまとめました。
適用方式
内容
Apps and Books
Auto Apps
Custom Apps
備考
継続的に適用
(Continuously Enforce)
Blueprint に割り当てると自動でインストールされ、削除されても再インストールされる
-
Custom App で同等を実現する場合は「監査と適用」を利用
セルフサービス
(Self Service)
ユーザーが必要なときに自分でインストールする方式
-
一度だけ
(Install Once)
一度だけ自動インストールされる
-
-
削除されても再インストールはされません
監査と適用
(Audit and Enforce)
チェックインのたびに監査スクリプトを実行し、条件を満たさなければ再インストールする
-
-
Custom App のみ利用可能です
更新のみ
(Update Only)
ユーザー自身でインストールしたアプリケーションを最新に保つ(配布はされない)
-
-
Auto Apps のみ対応しています
各方式は似ていますが、選べる適用方法に細かな違いがあります。
「更新のみ (Update Only)」を選べるのは Auto Apps だけです。

3. アンインストール

アプリケーションを削除する方法は、配布方式ごとに異なります。
配布方式によっては、Blueprint の割り当てを外す (配布停止) だけでは、アプリケーションがアンインストールされないことに注意してください。

配布方法によるアンインストール方法の違い

Apps and Books

Blueprint の割り当てを外すことで端末から削除されます
チェックイン後、5分から10分ほどで端末のアプリケーションフォルダから自動的に削除され、ライセンスも解放されます。
公式マニュアル: Configure Apps and Books

Auto Apps / Custom App

ライブラリ項目を削除したり Blueprint の割り当てを外しても、インストール済のアプリケーションは残ります
管理者側で一括・自動で削除したい場合は、まず提供されているアンインストーラー(公式 / ベンダー提供)があればそれを利用し、無い場合は Custom Script を使って監査とアンインストールのスクリプトをそれぞれ用意する必要があります。
アンインストール用スクリプトは各自で用意する必要がありますが、Iru (旧 Kandji) の公式 GitHub リポジトリーにあるスクリプトを参考にすることをおすすめします。
support/Auto App Uninstallers at main · kandji-inc/support
Software provided by the Solutions and Support Engineering teams at Kandji, Inc....
favicon
github.com

4. 監査スクリプトについて

Custom App を「監査と適用 (Audit and Enforce)」にすると、チェックインのたびに監査スクリプトが実行されます
スクリプトが 0 で終了すれば「合格(何もしない)」、 0 以外で終了すると「不合格」と判断され、Iru がアプリケーションを再インストールします。
「一度だけ (Install Once)」では手動削除されたものは再インストールされませんが、「監査と適用」を設定しておけば、アプリケーションが削除されても次のチェックインで元に戻ります。
もっともシンプルな方法は、アプリケーションの存在を確認するスクリプトです。
Iru の公式ドキュメントでも、同様のアプリケーションの存在チェック方法が例示されています。
#!/bin/bash
APP="/Applications/SecurityApp.app"   # 常駐させたいアプリケーション
if [ -e "$APP" ]; then
  exit 0   # 存在する → 何もしない
else
  exit 1   # 無い → Iru が再インストールする
fi
監査スクリプトは「何を合格とするか」を自由に決められます。例として、
  • 所定の場所に存在するか
  • バージョンが規定値以上か
  • 構成プロファイルや関連コンポーネントが揃っているか
など、条件を自由に設定できます。

5. ユースケースに応じた使い方

目的別に、おすすめの配布方式と適用方法を紹介します。

ユーザーの任意でインストール

ユーザーが必要なときに自分でインストールできればよいアプリケーションは、セルフサービス (Self Service) が向いていますApps and Books / Auto Apps / Custom App のいずれもセルフサービスに対応しており、利用をユーザーの判断に委ねたいときはこちらを選択してください。

強制的にインストール (削除させない)

Apps and Books と Auto Apps は「継続的に適用 (Continuously Enforce)」 を選べば、削除されても再インストールされます。
Custom App は「監査と適用 (Audit and Enforce)」 に設定します。ユーザーが意図的にアプリケーションを削除しても次のチェックインで再インストールされるため、元に戻すことができます。

自動インストール後、ユーザーによる削除を許容する

大半のユーザーは利用するが、不要なユーザーが削除することを許容するアプリケーションには、「一度だけ (Install Once)」 が向いています。
配布時には自動でインストールされますが、ユーザーが削除しても再インストールがされないため、アプリケーションの利用をユーザーに強制しません。
Custom App の場合も、監査スクリプトを設定しなければ同じ挙動になり、削除しても再インストールされません。

組織で管理をしていないが、ユーザーがインストールしたアプリケーションを更新したい

Iru で配布はしておらず、ユーザーが任意インストールしたアプリケーションで脆弱性対策のため最新に保ちたい、という場合は Auto Apps の「更新のみ (Update Only)」 が有効です。
新規配布やセルフサービスへの掲載をすることなく、すでにインストールされているアプリケーションの更新を Iru が検知してアプリケーションを最新のバージョンに更新することができます。
標準では配布していないが、重大な脆弱性が報告されているアプリケーションがあれば、対応を検討しましょう。

必要な構成プロファイルがインストールされていることを条件にアプリケーションのインストールを開始したい

例えば、 Microsoft Defender や SentinelOne のような EDR は、フルディスクアクセスやシステム機能拡張の許可、ネットワークフィルタ、監視、通知といった構成プロファイルが先にインストールされていないと、インストール後に許可を求めるダイアログが多く表示されたり、通信できないといった不具合につながる場合があります
この不具合を回避するために、Custom App の「監査スクリプト」を使用します。
Iru は監査スクリプトが合格 ( 0 で終了) すると、アプリケーションのインストールを保留して、次回チェックインで再試行します。
一方で、監査スクリプトが不合格 ( 0 以外で終了) の場合は「修復」としてインストール(または再インストール)が実行されます。
この性質を利用して、必要なプロファイルがインストールされているか事前に確認するスクリプトを設定することで順序を担保できます。

6. まとめ

Mac のアプリケーションの配布は Apps and Books (旧VPP) / Auto Apps / Custom App の3つの方式があり、それぞれ配布や更新においてできることが異なります。
組織固有の環境に依存する場合やアプリケーションのインストールを「強制したい・任意にしたい ・削除を防ぎたい」などユースケースに合わせて、アプリケーションのインストール方法を最適な方式・適用モードを本記事の比較表とユースケースを参考にして選ぶことをおすすめします。

ZUNDA では、Iru をはじめ多数の SaaS サービスの設計・構築・運用まで一貫して支援しています。
アプリケーション配布方針の整理から、具体的な設定・運用設計から継続的な改善まで現場の負荷とセキュリティのバランスを取りながらお客様が最大限に Iru を利用できるように伴走支援いたします。
Iru に限らず、MDMによるアプリケーションの配布運用でお困りでしたら、お気軽にZUNDAへご相談ください。

関連記事