カスタム設定
カスタム設定とは
カスタム設定を使用すると、Apple Property List (plist) XML をそのまま構成プロファイルペイロードとして展開できます。これは、Apple の MDM プロトコルがサポートしているものの、Blueprint エディタに専用の UI が存在しない設定に対応するための回避策です。
Apple デバイスが使用するすべての構成プロファイルは XML plist です。Blueprint エディタは、最も一般的なペイロードタイプ(パスコード、制限、WiFi など)をフォームフィールドに抽象化します。カスタム設定はその抽象化をスキップし、plist ペイロードを直接記述します。
使用すべきケース
- Apple Configurator 2 ワークフロー — Apple Configurator 2 からエクスポートした既存の
.mobileconfigファイルがある場合、該当するペイロードセクションをカスタム設定に貼り付けることで、フィールド単位で再構築する必要がありません。 - UI にない高度な設定 — Apple は OS リリースごとに新しいペイロードキーを追加します。Blueprint エディタに新しく導入されたキーに対応するフォームがまだない場合、カスタム設定がそのギャップを即座に埋めます。
- ネストされた複雑なペイロード — 一部のペイロード(例:カスタム XML、plist に埋め込まれた生の JSON)は、個別のフォームフィールドとして表現するのが現実的ではありません。
- サードパーティ MDM 拡張機能 — Apple のスキーマを拡張するベンダー固有のペイロード。
カスタム Plist ペイロードの作成方法
- 設定管理 > Blueprints に移動し、対象の Blueprint を開きます。
- 設定を追加 をクリックし、カスタム設定 を選択します。
- 対象プラットフォーム(iOS/iPadOS、macOS、tvOS)を選択します。
- plist XML をエディタに貼り付けます。
ペイロードは有効な Apple plist ディクショナリである必要があります。最低限、PayloadType と PayloadIdentifier が必要です:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadType</key>
<string>com.apple.security.firewall</string>
<key>PayloadIdentifier</key>
<string>com.example.firewall.custom</string>
<key>PayloadUUID</key>
<string>a1b2c3d4-e5f6-7890-abcd-ef1234567890</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadDisplayName</key>
<string>Custom Firewall Rules</string>
<!-- Your payload-specific keys here -->
</dict>
</plist>キーフィールド
| キー | 必須 | 説明 |
|---|---|---|
PayloadType | はい | Apple ペイロードタイプ識別子(例:com.apple.security.firewall、com.apple.applicationaccess) |
PayloadIdentifier | はい | このペイロードのリバース DNS 形式の一意な識別子 |
PayloadUUID | はい | このペイロードインスタンスの一意な UUID |
PayloadVersion | はい | ペイロードバージョン番号(通常は 1) |
PayloadDisplayName | いいえ | デバイスの「設定 > 一般 > VPN とデバイス管理」に表示される人間が読める名前 |
PayloadDescription | いいえ | デバイスに表示される説明 |
PayloadOrganization | いいえ | デバイスに表示される組織名 |
ペイロードタイプの検索方法
Apple は、サポートされているすべてのペイロードタイプとそのキーの完全なリストを Apple Configuration Profile Reference で公開しています。一般的なタイプは次のとおりです:
| PayloadType | 目的 |
|---|---|
com.apple.applicationaccess | 制限 |
com.apple.security.firewall | macOS ファイアウォール |
com.apple.MCX | macOS 環境設定マッピング |
com.apple.wifi.managed | Wi-Fi ネットワーク |
com.apple.vpn.managed | VPN 設定 |
com.apple.security.scep | SCEP 証明書登録 |
com.apple.dnsSettings.managed | DNS 設定 |
エディタでの XML 構文検証
カスタム設定エディタには、組み込みの XML 構文検証機能が含まれています。入力中に、エディタは以下をチェックします:
- 整形式 XML — タグの一致、適切なネスト、有効な文字。
- Plist 構造 — ルート要素は
<plist>であり、その子として<dict>が必要です。 - 必須キー —
PayloadType、PayloadIdentifier、PayloadUUID、PayloadVersionが存在する必要があります。
無効な XML はインラインのエラーインジケータでフラグが立てられます。カスタム設定ペイロードに構文エラーがある場合、Blueprint は保存できません。
カスタム設定のテストと展開
- エディタで検証 — 保存前に構文エラーが表示されていないことを確認します。
- Blueprint を保存 — システムが Blueprint を構成プロファイルにコンパイルし、配信キューに入れます。
- テストグループに割り当て — まず少数のテストデバイスグループに展開します。
- デバイスで確認 — プロファイルが「設定 > 一般 > VPN とデバイス管理」(iOS)または「システム設定 > プライバシーとセキュリティ > プロファイル」(macOS)にインストールされていることを確認します。
- MDM ログを確認 — ダッシュボードでデバイスコマンドログを確認し、プロファイルがエラーなく配信およびインストールされたことを確認します。
- 広く展開 — 確認が取れたら、Blueprint を本番グループに割り当てます。
警告:高度な機能
カスタム設定は、Apple の構成プロファイルスキーマを理解している管理者向けの高度な機能です。plist XML の誤りは以下を引き起こす可能性があります:
- プロファイルのインストール失敗
- 予期しないデバイスの動作
- プロファイルをワイプしないと削除できない設定
何をしているのかを理解した上で使用してください。 ペイロードキーや値に確信が持てない場合は、まず本番環境以外のデバイスでテストしてください。設定にサポートされている UI が存在する場合は、生の XML よりもフォームベースの設定を優先してください。フォームベースの設定は、検証、ガードレール、およびスキーマ変更に対する将来性を提供します。
