
在 Apple Business 中為應用程式建立套件安裝程式
你可以為應用程式建立套件安裝程式,然後將其加至 Apple Business 並部署給用户。如果應用程式沒有套件安裝程式,你亦可使用 macOS 內置的工具建立一個以作分發之用。建議你使用有結構簡單的應用程式來完成,例如完全包含在單一 .app 套裝內的應用程式 (通常位於 /Applications 內)。
簽署套件
在建立套件以供 Apple Business 分發之前,你需要擁有受管理裝置信任的加密簽署身份。此身分用於驗證建立套件的人員,以確認套件自簽署後未曾改動。如果你是 Apple Developer Program 成員,便可使用你的安裝程式身份。請參閱「為應用程式簽名以通過 Gatekeeper 驗證」。
建立安裝程式身份
如果你沒有簽署身份,可以自行建立。這個身份包含你所選的名稱和隨機序號以作識別(你可建立多個身份)。如果這些步驟在任何時候失敗,請關閉「終端機」視窗並開啟新視窗。你需要在 macOS 13 或之後版本執行這些步驟。
在桌面建立名為 temp 的資料夾。
開啟「終端機」App,然後輸入
cd然後按一下空白鍵。將 temp 資料夾拖曳到「終端機」App 視窗。
你會看到類似的路徑:
cd /Users/[YourShortUserName]/Desktop/packages按下 Return 鍵。
輸入
ID="name",其中 name 是你機構的簡稱。請勿在沒有引號的簡稱中使用空格。例如,My Organization 可以為 MyOrg (沒有引號) 或「My Organization」(附有引號)。按下 Return 鍵。
重要事項:所有進一步的指令都需要在此視窗中執行。
貼上以下所有指令,然後按 Return。
KEY="InstallerCertificate_${ID}_PrivateKey.pem"openssl req -x509 -nodes -days 365 -newkey rsa:4096 -sha256 \-addext basicConstraints=critical,CA:false \-addext keyUsage=critical,digitalSignature \-set_serial "0x$(openssl rand -hex 4)" \-subj "/CN=Installer Certificate ($ID)" \-out InstallerCertificate_"$ID".pem \-keyout "$KEY"在相同的「終端機」視窗中,貼上下方所有指令,然後按下 Return 鍵。輸入你的密碼,以將新身份的憑證設為信任。
security import "InstallerCertificate_$ID.pem"security import "$KEY" \-T /usr/bin/productbuild -T /usr/bin/pkgbuildsecurity add-trusted-cert -d InstallerCertificate_"$ID".pem開啟 temp 資料夾以查看新證書 (稱為 InstallerCertificate_name.pem) 及其密鑰 (稱為 InstallerCertificate_name_PrivateKey.pem),其名稱是早前在第 4 步所選的名稱。
保存憑證副本以作記錄,因為在設定裝置信任所簽署的套件時需要用到。
密鑰已匯入至你的鑰匙圈以安全儲存,你可從這個資料夾中刪除密鑰。
重要事項:你必須刪除證書密鑰,以免他人盜用你機構的身份和簽署套件。
該身份將於建立一年後失效。屆時你需要再次按照此程序操作,並重新簽署上一個身份簽署過而且尚未完成分發的套件。基於保安考慮,你身份的 RSA 專用密鑰會儲存在鑰匙圈中。如果你需要在其他 Mac 上建立並簽署套件,你需要輸出專用密鑰,才能輸入到另一部 Mac。
準備你的裝置以信任簽署身份
建立簽署身份後,需要讓裝置信任你的簽署身份。將身份證書作為一項設定進行分發,就能讓裝置信任你的簽署身份。
為身份擷取 InstallerCertificate_name.pem,身份名稱是建立時所選的名稱。
按照「建立證書設定」中的步驟操作,再將證書分派到所需裝置,以便安裝你建立的套件。
重要事項:若任何人士擁有簽署身份之私人密鑰,均可建立受配置裝置信任的套件,且不會收到警告。因此,如有任何理由相信與證書相配的私人密鑰已遺失,或在未經授權下遭複製,你可以刪除證書設定並建立新簽署身份。
為單一套裝的應用程式建立套件
簽署用作配置裝置信任的身份後,你便可以建立套件,以便分發 App 至這些裝置。當你這麼做時,請注意包括在單一 .app 套件內的應用程式最容易分發。
確認你的應用程式位於 /Applications 資料夾中。
在桌面建立名為 packages 的資料夾。
開啟「終端機」App,然後輸入
cd然後按一下空白鍵。將 packages 資料夾拖曳到「終端機」App 視窗,然後按下 Return 鍵。
你會看到類似的路徑:
$ /Users/[YourShortUserName]/Desktop/packagesEnter
productbuild --sign,然後按一下空白鍵。新增身份的名稱(當中的「名稱」是你在「建立安裝程式身份」任務步驟 4 輸入的名稱),按一下空白鍵,輸入
--component,然後再次按一下空白鍵。將應用程式從 /Applications 拖曳到「終端機」視窗,然後按一下空白鍵。
輸入套件的名稱,其結尾需要是
.pkg,名稱通常與應用程式一樣。範例如下:
productbuild --sign MyCo --component /Applications/AppName AppName.pkg按下 Return 鍵。
此
productbuild指令在處理應用程式以及在套件資料夾中建立套件時會列印資料。如果你是第一次使用自己建立的身份,系統會提示你輸入密碼並授予使用該身份密鑰的權限。在這種情況下,請輸入你的密碼,然後選擇「總是允許」。
離開「終端機」App。
附註:除非套件由裝置管理伺服器服務發放至已配置信任身份的受管理裝置,否則 Apple Business 會一律拒絕任何非經由 Apple Developer Program 建立之身份所簽署的套件。如果你嘗試在其他裝置上安裝透過此方法建立的套件,將會未能安裝成功。