1. 参考
参考 1:为 app 签名以通过“门禁”验证。
参考 2:Notarizing macOS Software Before Distribution 和 在分发前对 macOS 软件进行公证。
参考 3:Customizing the Notarization Workflow。
参考 4:macOS app 实现自动化 notarize 脚本。
自动公证脚本:notarize-app.sh
2. 签名
使用 productsign 命令对现有安装程序进行签名
1
2
3
4
productsign --timestamp=none
--sign "Developer ID Installer: SYSTEC TECHNOLOGY CO., LIMITED (XXXXXXXXXX)"
Umeet.pkg
Umeet-v3.12.0-setup.pkg
3. 获取 provider
1
xcrun altool --list-providers -u [USER] -p [PWD]
4. 公证 app
1
2
3
4
5
6
xcrun altool --notarize-app
--primary-bundle-id [APP_ID]
--username [USER]
--password [PWD]
--asc-provider XXXXXXXXXX -t osx
--file Umeet-v3.12.0-setup.pkg
5. 查询公证结果
1
2
3
xcrun altool --notarization-info [RequestUUID]
--username [USER]
--password [PWD]
6. 添加票据
1
xcrun stapler staple Umeet-v3.12.0-setup.pkg
7. 查询结果
1
xcrun stapler staple -v Umeet-v3.12.0-setup.pkg
8. 查询认证结果
1
spctl -a -v --type install Umeet-v3.12.0-setup.pkg