🎃

Setup Manager を試そうとしたら Jamf Pro の不具合を踏んだ話

2024/11/15に公開

今回は (おそらく一時的な) 不具合の回避方法についての話なので、Setup Manager を試してみようかなという方は公式の Quick Start や、代理店さんが書いてくれているブログをご参照下さい。
Jamf Pro: Setup Manager Quick Start | Jamf-Concepts/Setup-Manager
【Jamf Pro】 新ツール「Setup-Manager」 を使って Mac のセットアップをやってみる | Magic Hat Tech Blog
ついに登場!Jamf純正の自動デバイス登録ツール「Setup Manager」の機能を紹介 | .Too

Jamf Pro で Setup Manager を試そうとした

Jamf から Setup Manager というツールがリリースされています。
https://github.com/Jamf-Concepts/Setup-Manager

最近 v1.1 がリリースされたので公式の Quick Start などを参考に試してみたのですが、想定通りに動作しませんでした。
具体的には、ポリシーからは実行できるけど、 PreStage Enrollments に設定しても Setup Assistant がユーザー作成画面に遷移してしまうという挙動です。
はじめは設定の不備を疑ったのですが、ログや挙動からどうやらそれだけじゃなさそうなので調べてみました。

しらべてみた

MacAdmins の Slack に #jamf-setup-manager チャンネルがあったので確認してみたところ、11月8日に同様の事象を報告している方がおり、どうやら Jamf Pro の不具合だった模様。
Jamf Pro 11.11.0 か 11.11.1 で発生しているようで、新規にアップロードされた pkg で影響が出るようでした。

11月13日に #jamf-product-issuesチャンネルでワークアラウンドが公開されました。内容は、問題がある pkg ファイルのハッシュタイプを変更し、ハッシュ値を手動で設定するというものでした。

少し待てば解消されると思いますが、 JamfConnect など PreStage Enrollment で pkg を実行するようなものを新規でセットアップしようとした場合でも発生すると思うのでご注意下さい。

やったこと

  1. ローカルで該当の pkg ファイルの MD5 ハッシュ値を確認
md5 /path/to/pkg/${yourPkgFile}.pkg


  1. Jamf Pro Clasicc API の Finds packages by ID で該当の pkg ファイルの情報を取得
    Read Packages の権限が必要です
    https://developer.jamf.com/jamf-pro/reference/findpackagesbyid
    Jamf Pro の URL に classicapi/doc/ をつけることで Swagger UI からでも実行できます。
    https://${yourServer}.jamfcloud.com/classicapi/doc/#/packages/updatePackageById

  2. 取得した XML 内の hash_typeSHA3_512 から MD5 に、hash_value を 1 で確認した MD5 のハッシュ値に変更して保存

  3. 編集した XML を使って Updates an existing package by ID で該当の pkg ファイルの情報をアップデート
    Update Packages の権限が必要です
    https://developer.jamf.com/jamf-pro/reference/updatepackagebyid
    Swagger UI からは PUT 出来ないので、ターミナルなどから実行します。
curl -X 'PUT' \
    'https://${yourServer}.jamfcloud.com/JSSResource/packages/id/${id}' \
    -H 'accept: application/xml' \
    -H 'Content-Type: application/xml' \
    -H 'Authorization: Bearer add_bearer_token' \
    --data-binary @/path/to/xml/${yourXmlFile}.xml

無事にうごきました

上記の手順を経て、想定通りの挙動を確認できました。

Discussion