mac软件安装包pkg公证装订处理去掉安全拦截弹窗

第一步:导出两个证书的p12打包pkg

分别是Developer ID Application、Developer ID Installer证书

打包的人的设备安装后,需要安装两个中间证书,不然钥匙串内会有红字提醒信任

下载证书:

Developer ID - G1 (Expiring 02/01/2027 22:12:15 UTC)

Developer ID - G2 (Expiring 09/17/2031 00:00:00 UTC)

Apple PKI - Apple

这两个中间证书安装完,钥匙串中Developer ID Application、Developer ID Installer两个证书信任里即便是使用系统默认配置也不会出现红字提醒了。

第二步:生成凭据

通过第一步两个证书已经可以打包出pkg安装包了。但是点击安装还是提示未打开"***"Apple无法验证"***.pkg"是否包含可能危害Mac安全或泄漏隐私的恶意软件。

然后就需要做公证

开发者账号生成App专用密码,

执行命名:

复制代码
xcrun notarytool store-credentials "NotaryProfile" --apple-id "你的开发者邮箱@shturl." --team-id "你的teamId"

回车后提示输入密码,就是刚生成的专用密码,成功后凭据就存入了本机钥匙串

注意:凭据不是在证书列表里,关键字可以搜索:com.apple.gke.notary.tool

第三步:公证

执行公证命令,文件名***换成真实的

复制代码
xcrun notarytool submit ***.pkg --keychain-profile "NotaryProfile" --wait

如果输出:status: Invalid

说明安装包有问题,执行命名查看问题日志:

复制代码
xcrun notarytool log f4468180-a4bd-406f-95bc-43fc513388c8 --keychain-profile "NotaryProfile" notary_error.json

执行完会在当前目录生成 notary_error.json,打开这个 json,找到 issues 数组,里面就是苹果返回的详细错误信息。

成功会输出:status: Accepted

第四步:装订

**公证只是苹果云端记录,必须执行 stapler 把票据嵌入 pkg**

如果跳过 stapler:用户 Mac**离线状态**安装时,Gatekeeper 无法联网查询苹果公证记录,依旧弹出「Apple 无法验证」警告。

执行装订命令,文件名***换成真实的

复制代码
xcrun stapler staple ***.pkg

成功会输出:

Processing: /Users/liyongji/Desktop/***.pkg

The staple and validate action worked!

这一步做完,双击pkg就不会弹出安全拦截弹窗了。

相关推荐
FPGA小迷弟18 分钟前
FPGA 与千兆以太网:各类物理接口的形式、区别、使用方法与应用场景详解
tcp/ip·macos·fpga开发·udp·fpga
周小董2 天前
[1379]mac安装nvm
macos
bossjuemfc2 天前
不记得文件名时,Mac 上的搜索还能怎么做?
macos
2501_915909062 天前
Windows 打开 Xcode 工程,编译调试 Xcode 项目并和 Mac 同事协作
ide·windows·vscode·macos·ios·个人开发·xcode
请为小H留灯3 天前
Mac 常用操作与维护技巧
macos·电脑·清理电脑·常用技巧
hantmac3 天前
不记得文件名时,Mac 上的搜索还能怎么做?
人工智能·macos
这是谁的博客?3 天前
AI 加速器 RTL 数字系统设计深度解析:从 MAC 阵列 Verilog 实现到时序收敛与时钟功耗的芯片落地全链路
人工智能·macos·ai·verilog·数字ic设计·ai芯片·rtl
slacker-kian3 天前
M 系列 Mac 清除顽固的 CorpLink
macos·corplink·m系列
kk_net88993 天前
FSNotes:macOS 和 iOS 上的开源笔记管理器
笔记·其他·macos·ios
zhangfeng11334 天前
com.apple.quarantine 并不是乱码,而是 macOS Gatekeeper 给下载文件自动打上的“隔离属性
macos·策略模式