北京网站改版价格,怎么查一个公司是否正规,网页创建网站,wordpress幻灯片修改在MacOS 10.14.5之后#xff0c;如果应用没有在苹果官方平台进行公证notarization(我们可以理解为安装包需要审核#xff0c;来判断是否存在病毒)#xff0c;那么就不能被安装。当然现在很多人的解决方案都是使用sudo spctl --master-disable#xff0c;取消验证模式#… 在MacOS 10.14.5之后如果应用没有在苹果官方平台进行公证notarization(我们可以理解为安装包需要审核来判断是否存在病毒)那么就不能被安装。当然现在很多人的解决方案都是使用sudo spctl --master-disable取消验证模式但是总体给客户培训下来效果非常差很多人找不到终端有的人甚至不能在终端中输入命令。因此急需找到解决问题的源头如何进行代码公证。 1、签名
在App进行公证之前App首先必须有一个签名来证明这个app的开发者是谁 首先你需要有一个苹果开发者账号 首先找到开发电脑的钥匙串找到证书助理创建一个从证书机构请求证书 填写自己的信息并保存生成一个CertificateSigningRequest.certSigningRequest文件。 现在需要生成 Developer ID Application证书
登录苹果开发者网站https://developer.apple.com/account/resources/certificates/add
添加 Developer ID Application类型证书 导入上面生成的CertificateSigningRequest.certSigningRequest文件导入完成之后即可下载我们需要的证书了 下载到电脑之后双击一下证书就被安装到了钥匙串中了。
此时打开钥匙串选择登录 钥匙串并在我的证书栏找到刚才导入的证书 右键并下载 保存成p12文件 保存到你的路劲之后此时需要配置环境变量
export CSC_LINK‘你的p12文件路径
export CSC_KEY_PASSWORD‘你创建p12文件的密码’验证
security find-identity -v -p codesigning 2. 公证 之前使用的altool工具被苹果打回了现在只能使用notarytool工具打包了具体文档可以查看这篇文章
https://developer.apple.com/documentation/technotes/tn3147-migrating-to-the-latest-notarization-tool 直接上命令行 存储凭据
xcrun notarytool store-credentials ac_dblens \--apple-id 开发者qq.com \--team-id 证书(xxx) \--password xxxx
下面来解释一下所有参数的意义
your_apple_id 你的苹果开发者账号password 你的应用专属密码和你的苹果开发者账号密码不一样可以查阅相关资料设置应用专属密码team_id 你的团队idac_dblens : 随便取,钥匙串条目名称
提交公证
xcrun notarytool submit /Users/xxxxx-0.0.7-arm64.dmg \--keychain-profile ac_dblens \--wait
检查公证状态
提交后如果需要检查公证状态可以使用以下命令
xcrun notarytool info submission_id \--keychain-profile AC_PASSWORD submission_id提交公证时返回的 UUID。 AC_PASSWORD钥匙串条目的名称。
附加公证票据
公证成功后将公证票据附加到 DMG 文件中
xcrun stapler staple /path/to/your/app.dmg /path/to/your/app.dmg替换为你的 DMG 文件路径。
验证票据 xcrun stapler validate /path/to/your/app.dmg
附加公证票据Staple Notarization Ticket是 macOS 公证流程中的一个重要步骤。它的作用是将 Apple 公证服务生成的票据Ticket直接嵌入到应用程序或安装包如 .app、.pkg 或 .dmg中。这样即使用户的设备无法访问互联网也可以验证软件的真实性和安全性。 附加公证票据的作用 离线验证 公证票据包含了 Apple 对软件的验证信息。 附加票据后即使用户的设备处于离线状态macOS 仍然可以验证软件的合法性。 提高用户体验 如果没有附加票据macOS 在首次运行软件时会尝试从 Apple 服务器下载公证信息。这可能会导致延迟或失败例如网络问题。 附加票据后验证过程会更快用户体验更流畅。 增强安全性 公证票据证明了软件已经通过 Apple 的公证检查确保软件没有被篡改或包含恶意代码。 附加票据后macOS 可以更严格地验证软件的完整性。 满足分发要求 对于通过非 Mac App Store 分发的软件如直接下载或第三方渠道Apple 要求软件必须经过公证并附加票据。 使用 xcrun notarytool submit 提交公证请求时添加 --wait 参数会让命令等待公证完成并返回结果。等待时间通常取决于文件大小、Apple 服务器的负载以及公证队列的长度。以下是关于等待时间的具体说明和建议 等待时间 典型等待时间 对于大多数小型或中型文件如几十 MB 到几百 MB公证通常在 几分钟到半小时 内完成。 对于较大的文件如超过 1 GB可能需要 更长时间例如 1 小时或更久。 影响因素 文件大小文件越大处理时间越长。 服务器负载Apple 的公证服务器负载较高时例如新版本 Xcode 发布后处理时间可能会延长。 网络速度上传文件到 Apple 服务器的速度也会影响总时间。 --wait 参数的作用 添加 --wait 参数后命令会一直等待直到公证完成并返回最终结果。 如果不添加 --wait命令会立即返回提交 ID你需要手动检查公证状态。 重新提交公证 如果等待时间过长例如超过 3 小时可以尝试取消当前提交并重新提交 xcrun notarytool cancel fba3eb0c-5169-4bee-b2f4-3ba18dafb3f9 \--keychain-profile ac_dblens 然后重新提交 xcrun notarytool submit /path/to/your/xxx-arm64.dmg \--keychain-profile ac_dblens \--wait 参考Mac Electron 应用如何进行签名signature和公证notarization_electron mac签名-CSDN博客