2026 クラウド Mac:OpenClaw の macOS 権限・TCC・Exec 承認——予期しないプライバシーブロックなしにゲートウェイ自動化を出荷
レンタル Apple Silicon Mac に OpenClaw ゲートウェイを入れるチームは、Node バイナリと launchd の plist を完璧に書いても——UI 操作、通知読み取り、シェルヘルパー実行の初回でエージェントが止まるのをよく見ます。本稿の結論:macOS のプライバシー(TCC)とローカル exec 方針を第一級インフラとして扱い、本番切替前に承認画面をスナップショットし、exec-approvals.json をゲートウェイ設定と一緒にハッシュ化する。以下では代表的な OpenClaw ワークフローに紐づく TCC 能力表、exec 許可を広げるリスクモデル、各新権限のあと 48 時間 ソークを含む明示チェック付き 7 ステップ展開、香港・日本・韓国・シンガポール・米国の MacLogin フリート向け FAQ を示します。
ゲートウェイデーモンのトラブルシュート、デプロイガイド、launchd 向け環境変数と併読してください。GUI の同意クリックが必要なオペレータは VNC を手元に。ほかの方も ヘルプ を読み、料金 で容量を比較するとよいでしょう。
共有クラウド Mac リースで権限が爆発する理由
使い捨て Linux VM と異なり、macOS は機密機能をコードアイデンティティとユーザ同意記録に結び付けます。launchd 下のゲートウェイは、ターミナルで試した対話型 openclaw CLI とは別のバイナリパスになることがあり、TCC プロンプトは黙って引き継がれません。マルチテナントのリースでは、誤ったバイナリに「許可」を押した請負者一人が、同じユーザコンテキストを共有する全員の露出を広げる恐れがあります。
- 自動化オーナーは機能 → macOS エンタイトルメント → 承認責任者の対応表が必要です。
- セキュリティレビュアーは画面収録やユニバーサルアクセスがフリート全体で既定オンでない証拠を求めます。
- サポートエンジニアはヘッドレス SSH だけでは足りないとき、VNC や MDM でプロンプトを完了する経路が必要です。
TCC カテゴリと OpenClaw 型自動化パターン
| TCC カテゴリ(例) | 典型的な OpenClaw 近傍用途 | 失敗症状 | 緩和パターン |
|---|---|---|---|
| ユニバーサルアクセス | AX API による他アプリのスクリプト制御 | 無言の no-op や「信頼されていない」ログ | MDM プライバシープロファイルで事前承認、またはバイナリ更新ごとに手動 VNC で一度 |
| 画面収録 | ピクセル認識ツール、画面キャプチャフック | 真っ黒フレームや初回の権限ダイアログ | ステージングリースに隔離。チケットに前後の bundle ID を記録 |
| 自動化(Apple イベント) | Finder / Mail / Slack 等をイベントで操作 | ユーザーが Apple イベントをキャンセルしたエラー | 最小権限:管理者なしのゲートウェイユーザに分離 |
| フルディスクアクセス | ワークスペース外の保護パス読み取り | 「あるはず」のファイルで EPERM | パスを狭める。~/OpenClaw 配下のワークスペースルートを優先 |
Exec 承認ファイル:ブラスト半径を縮める
ローカル exec 方針ファイル(OpenClaw 文書ではしばしば ~/.openclaw/exec-approvals.json)は強力です。エージェントが事前承認するシェルコマンドを定義します。ファイアウォールルールのように扱い——バージョン管理、コードレビュー、自動ドリフト検知を行ってください。
| リスク | 例パターン | 推奨コントロール | 監査成果物 |
|---|---|---|---|
| 高 | ワイルドカード命令承認 | CI 方針でブロック。絶対パス名を要求 | 2 名レビューのプルリクエスト |
| 中 | /usr/bin/* スコープの承認 | ハッシュ付きバイナリ許可リストに置換 | 週次 shasum -a 256 ジョブ |
| 低 | 単一用途ビルドスクリプト | ゲートウェイユーザからパスが読み取り専用なら可 | リース ID へのチケット紐付け |
画面レベル自動化を有効にする前のチェックリスト
- 画面に顧客データが写りうる場合は法務・コンプライアンスの承認を得る。
- テスト中は無関係な画面共有を止め、誤った漏えいを防ぐ。
- チケット冒頭に既定の macOS ビルド番号と OpenClaw パッケージ版を記録。
- ログシンクがツールの stderr(ゲートウェイの stdout だけでなく)を拾うことを確認。
- ロールバックを定義:plist を外し、前の承認スナップショットを 15 分以内 に戻す。
launchd アイデンティティと macOS アプリバンドルの権限
LaunchAgent / LaunchDaemon は設定したユーザコンテキストを引き継ぎますが、TCC は依然として誰が先にコードを実行したかを気にします。対話で openclaw onboard を走らせたあと plist で別の Node を起動すると、新しいプロンプトが出ます。Node パス(Homebrew Cellar とベンダ tarball など)を一つに統一し、plist の EnvironmentVariables で強制してください。
本番ゲートウェイ向け 7 ステップ権限展開
- ツール棚卸し:ファイルシステム・ネットワーク・UI に触れる OpenClaw スキルを列挙。
- TCC マッピング:各スキルを macOS プライバシーカテゴリに写し、必須と任意を印付け。
- ステージングリース:顧客以外の MacLogin ホストで先に適用。
- プロンプト取得:各同意ダイアログをスクリーンショット(背景はマスク)。
- exec 方針をコミット:最小化した exec-approvals.json を CI lint ルールとマージ。
- ソーク:計画されている OS セキュリティパッチ枠があれば含め、混合負荷を 48 時間 実行。
- 昇格:確定した plist・JSON・チェックサムを本番リース ID にコピーし、日付タグ oc-perms-20260409 を付与。
FAQ
MDM で全部解決?多くのプライバシーキーは管理できますが、ビルドによってはユーザ操作がまだ必要です——VNC を計画に。
ゲートウェイが複数?ユーザまたはホームを隔離し、承認が汚染境界をまたがないようにする。
ドリフト検知は?夜間に exec-approvals.json の SHA-256 と plist の ProgramArguments を git タグと比較。
権限負荷の高い OpenClaw に MacLogin の Mac mini M4 が合う理由
Apple Silicon Mac mini は、Apple 自身の開発ツールが前提とするのと同じ TCC・プライバシースタックを提供し、「自分のノートでは動く」サプライズを本番昇格時に減らします。M4 のユニファイドメモリは画面バッファ実験とローカル LLM サイドカーを十分速く保ち、チームが権限ソークを飛ばさず完了しやすくします。香港・東京・ソウル・シンガポール・米国の MacLogin ノードでは、ダイアログをクリックするオペレータの近くで同意フローをリハーサルでき、購入ではなくレンタルならリース ID ごとに健全な権限ベースラインをスナップし、新しい自動化ポッドのオンボーディング時に複製できます。
ステージングをもう一台?料金 から追加し、このチェックリストをそのまま再利用——ハッシュ、スクリーンショット、ロールバック担当はチケットと一緒に移動します。