WWDC Quick Look 💓 By SwiftGGTeam
Meet device management for Apple Watch

Meet device management for Apple Watch

元の動画を見る

ハイライト

watchOS 10 では組織が MDM を通じて Apple Watch を管理できるようになりましたが、登録とポリシー適用は「監督下の iPhone + ペアリングされた Apple Watch」というデバイス関係を中心に展開されます。

主要内容

企業はすでに Apple Watch を活用しています。Melissa Nierle は Volvo が Apple Watch で作業指示を記録し、顧客とのコミュニケーションを簡素化している例を挙げました。課題は、Apple Watch に iPhone、Mac、iPad と同等の組織レベル管理機能がなかったことです。

00:59)watchOS 10 で Device Management for watchOS が導入されました。組織は他の Apple デバイスと同様に Apple Watch を展開・設定でき、生産性、従業員の健康、安全のシナリオに活用できます。

01:38)Apple Watch の管理は単独デバイス管理ではありません。iPhone とペアリングされ、App、制限ポリシー、ワークフローを共有します。登録は iPhone から始まります — ホスト iPhone は MDM に登録済みで監督(supervised)状態である必要があります。Apple Watch は新品またはリセット状態で、既にペアリング済みの Apple Watch は消去して再ペアリングしないと登録できません。

02:34)Apple Watch の登録は Declarative Device Management(宣言型デバイス管理)に依存します。MDM サーバーは Apple Watch と宣言型デバイス管理の両方をサポートする必要があります。管理者はまず iPhone に Watch Enrollment configuration を配信し、以降ペアリングされる Apple Watch はすべて MDM に登録するよう指示します。

03:17)Watch Enrollment configuration には 2 つの重要項目があります: enrollment URL endpoint とオプションの AnchorCertificateAssetReferences。前者は Apple Watch が MDM プロファイルをダウンロードするアドレス、後者は登録プロファイルサーバーの信頼を評価するアンカー証明書のセットです。すべてのアンカー証明書は asset declaration として iPhone にインストール済みである必要があります。

04:22)登録フローのセキュリティの中核は pairing token です。Apple Watch が初めて MDM サーバーに接続するとき、署名済み machine info にはまだ pairing token がありません。サーバーは HTTP 403 を返し、Watch pairing token 不足を示すエラーと details 内の security-token を提供します。Apple Watch は security-token を iPhone に渡し、iPhone は iPhone UDID、Apple Watch UDID、security-token を含む GetToken check-in request を MDM サーバーに送信します。

06:49)MDM サーバーはこの情報から secure pairing token を生成し iPhone に返します。iPhone は token を Apple Watch に渡し、Apple Watch は Machine Info に token を追加して再度登録を要求します。サーバーが token を検証すると、iPhone の MDM サーバー身元が信頼でき、この Apple Watch と iPhone のペアリング関係が信頼できることを確認できます。その後サーバーは MDM enrollment profile を返し、Apple Watch はペアリングフロー終了時にプロファイルをインストールします。最後に Apple Watch は Authenticate タイプの CheckIn request を送信し、登録が完了して監督状態に入ります。

08:21)MDM 製品を実装する際、最も重要なのは登録中に受け取ったデータで iPhone と Apple Watch の関係を確立することです。管理者は UI でどの Apple Watch がどの iPhone とペアリングされているかを明確に把握する必要があります。Watch Enrollment configuration が iPhone に適用されると、以降ペアリングを開始するすべての Apple Watch に登録が促されます。既にペアリング済みのデバイスは影響を受けず、消去して再ペアリングが必要です。

09:24)watchOS 10 は初日から宣言型デバイス管理をサポートします。すべての declaration type と activation declaration の predicate がサポートされ、status channel も Apple Watch に登場します。サーバーの継続的なポーリングではなく、Apple Watch が能動的に状態変化を報告できます。

10:05)従来の MDM プロトコルもサポートされます。payload、restrictions、commands、queries を Apple Watch に送信できます。ネットワーク面では watchOS 10 が専用 VPN、Wi-Fi、Cellular、per-app VPN payload をサポート。セキュリティ面では SCEP、ACME 証明書、passcode rules、restrictions がサポートされます。

11:17)制限とパスコードポリシーには方向性があります。iPhone に適用した restrictions と passcode rules はペアリングされた Apple Watch に同期されます。例えば iPhone でパスコードが必須なら、管理対象 Apple Watch もパスコード作成を促します。iPhone ポリシーが英数字パスコードを要求する場合、Apple Watch は手首から外した後に iPhone でのロック解除が必要です。ただし Apple Watch に直接適用した restrictions と password payload は iPhone に同期されません。

12:54)登録解除の動作もプラットフォームごとに異なります。ユーザーが MDM プロファイルを削除しても、サーバーがプロファイル削除コマンドを送っても、Apple Watch は MDM から登録解除され、ホスト iPhone とのペアリングが解除され、コンテンツと設定が消去されます。これは iPhone の登録状態に影響しません。逆にホスト iPhone が登録解除されると、Apple Watch も登録解除、ペアリング解除、リセットされます。

13:41)App の展開は 3 種類に分かれます: Paired app、Dependent watchOS app、Standalone watchOS app。最初の 2 つは管理者が iPhone と Apple Watch の両方で App を管理する必要があります。まず iPhone App をインストールし、成功を確認してから Apple Watch にインストールコマンドを送信します。更新と削除も両端に個別にコマンドを送ります。Standalone watchOS app は Apple Watch に App Install command を送るだけです。

詳細

Apple Watch 登録の前提条件

1. ホスト iPhone が MDM に登録済み
2. ホスト iPhone が監督状態
3. Apple Watch が新品またはリセット済み
4. MDM サーバーが Declarative Device Management をサポート
5. MDM サーバーが Apple Watch enrollment をサポート
6. Watch Enrollment configuration が iPhone に配信済み
7. アンカー証明書を使う場合、対応する asset declaration が iPhone に先にインストール済み

キーポイント:

  • 既にペアリング済みの Apple Watch はその場で登録できず、消去して再ペアリングが必要
  • 登録は watch pairing flow 中に行われ、ペアリング後の追加ステップではない
  • 宣言型デバイス管理は必須依存であり、オプションの最適化ではない

Watch Enrollment configuration の役割

Watch Enrollment configuration
  ├─ Enrollment URL endpoint
  │   └─ Apple Watch が MDM プロファイルをダウンロード・インストール
  └─ AnchorCertificateAssetReferences(オプション)
      └─ enrollment profile server の信頼を評価

キーポイント:

  • 設定は iPhone にインストールされるが、対象は以降ペアリングされる Apple Watch
  • 参照するすべてのアンカー証明書は iPhone に既に存在する必要がある
  • 設定が有効になると、この iPhone とペアリングを開始する Apple Watch はすべてリモート管理プロンプトフローに入る

Pairing token セキュリティフロー

1. Apple Watch → Watch MDM server
   署名済み machine info を送信(pairing token なし)

2. Watch MDM server → Apple Watch
   HTTP 403 を返す
   details に security-token を含む

3. Apple Watch → iPhone
   security-token を転送

4. iPhone → iPhone MDM server
   GetToken check-in request
   含む内容:
   - iPhone UDID
   - Apple Watch UDID
   - security-token
   - TokenServiceType = Watch pairing token

5. iPhone MDM server → iPhone
   base64 エンコードされた pairing token を返す

6. iPhone → Apple Watch
   pairing token を転送

7. Apple Watch → Watch MDM server
   pairing token 付きで machine info を再送信

8. Watch MDM server
   token を検証し、iPhone MDM 身元とデバイスペアリングを確認
   MDM enrollment profile を返す

キーポイント:

  • HTTP 403 はプロトコル上の中間ステップで、token retrieval flow を起動する
  • GetToken は watchOS 10 の新しい CheckIn message type
  • MDM サーバーは iPhone UDID と Watch UDID の関係を保存し、UI とポリシー管理に利用する

管理機能マトリックス

Declarative Device Management
  - すべての declaration type
  - Activation declaration predicate
  - Status channel による能動的更新

MDM protocol
  - Payloads
  - Restrictions
  - Commands
  - Queries

Network payloads
  - Dedicated VPN
  - Wi-Fi
  - Cellular
  - Per-app VPN

Security payloads
  - SCEP certificates
  - ACME certificates
  - Passcode rules
  - Restrictions

Commands
  - Clear passcode
  - Lock device
  - Erase device
  - Remove MDM profile
  - App install / update / remove

キーポイント:

  • 可能な限りポーリングではなく status channel を使う — Apple Watch のバッテリーはより敏感
  • iPhone ポリシーは Watch に同期されるが、Watch ポリシーは逆方向に同期されない
  • MDM クエリは使えるが、状態変化の主要メカニズムにすべきではない

App 展開タイプ

Paired app
  - Watch App は独立して動作
  - iPhone App とデータを共有
  - 管理時は両端にコマンドが必要

Dependent watchOS app
  - companion iPhone App がないと動作しない
  - 先に iPhone App をインストールし、次に Watch App
  - 更新と削除も両端で同期

Standalone watchOS app
  - watchOS のみに存在
  - Apple Watch に App Install command を送るだけ

キーポイント:

  • Paired と Dependent app の管理はデュアルデバイスワークフローであり、単一デバイスコマンドではない
  • インストール順序が UX に影響 — 先に iPhone、次に Watch
  • 削除と更新も両端で一貫させ、使えない App の残存を避ける

重要ポイント

  • MDM コンソールに「デバイスペアリング関係」ビューを追加: Apple Watch 管理の鍵は iPhone–Watch ペアであり、単一デバイスではありません。管理者は iPhone ごとにペアリングされた Apple Watch を確認し、Apple Watch からホスト iPhone を逆引きし、両端のポリシー同期状態を把握する必要があります。

  • Watch enrollment を移行ウィザードとして構築: 既存のペアリング済み Apple Watch は消去と再ペアリングが必要です。MDM 製品は段階的ガイドを提供できます — iPhone の監督状態確認、DDM サポート確認、Watch Enrollment configuration の配信、リセットと再ペアリングの案内。

  • 高頻度ポーリングを status channel に置き換え: Apple Watch のバッテリー容量は小さいため、サーバーは継続的にクエリすべきではありません。バッテリー、プロファイル状態、ポリシー状態などの重要項目を宣言型デバイス管理の status channel に購読し、デバイスから能動的に変化を報告させます。

  • 企業シナリオ向けの Watch 専用制限ポリシーを設計: iPhone ポリシーは Watch に同期されますが、逆方向には同期されません。この方向性を利用し、従業員の主力 iPhone に影響を与えず、Apple Watch により厳格または軽量な制限を設定できます。

関連セッション

コメント

GitHub Issues · utterances