借报告Team ID错误谈谈Mac app文件签名与公证

文章目录

  • 目的
  • 起因
  • 流程熟悉
  • 本地证书、认证证书申请
  • 在钥匙串中创建要公证app的profile(公证的时候会用到)
  • 程序打包后App文件进行app签名
  • 压缩打包
  • 公证
    • 公证变化
      • 在WWDC19, 苹果在MacOS 10.14之后引入了公证(Notarization)这一机制来提升安全性. 主要分以下几步
      • 新的公证workflow
    • 公证命令
  • 添加票据、盖章,注入认证消息
  • mac dmg 打包认证
  • 注意事项
  • 参考博客

目的

借由mac app打包出错过程中,整理mac app打包中签名与公证问题。

起因

之前辞职同事写了一篇mac 打包整体流程,本来之前打包几次还挺顺心的, 然后不知道怎么到弄的, 过了个端午, 突然在打包过程中, 报错Team ID error错误。

Conducting pre-submission checks for mytest.app.zip and initiating connection to the Apple notary service...
Error: HTTP status code: 403. Invalid or inaccessible developer team ID for the provided Apple ID. Ensure the Team ID is correct and that you are a member of that team.

最后经由打包脚本中命令一个一个敲, 得出执行命令如下报的错误

xcrun notarytool submit xxxx.app/xxx.dmg --keychain-profile "xxx" --wait

这个命令是进行公证上传时, 等待返回结果。
依据数字签名认证查看发现, team id 似乎没问题。 然后重新梳理整个打包流程,查看每个细节流程问题,发现哪些可能与账户相关问题, 就建议重新创建处理流程,最后排除解决问题就是xcode账户需要重新进行登陆与store-credientials. 然后将app/dmg, 清除在重新生成即可。

codesign -dvvv xxx.app/xxx.dmg
//查看签名相关信息 eg team idxcrun notarytool store-credentials "kandao" --apple-id "lnyDeveloper@163.com" --team-id "8Y7L7R8E8K" --password "cgyn-awsa-tofr-jmab"
// 如果没有将开发者信息保存到本地 可以先保存这些信息 之后公证就不需要每次都输入这些信息了

流程熟悉

macos 下app打包流程分为如下

  • 本地证书
  • 签名
  • 分发app打包
  • 公证
  • 添加票据、盖章
  • 如果需要打包成dmg文件【这里有很多方法,我直接介绍我当前用的】, 对于dmg它也需要类似做法签名,公证,盖章等流程

做这些操作之前, 首先你一定要确保你有一个合法的Apple ID, 以及对应Developer Team ID。

本地证书、认证证书申请

cd /Applications/Utilities; 
open ./; 
在访达中打开钥匙串访问 -> 证书助理 -> 从证书颁发机构请求证书, 添加对应账户后选择保存到本地

Apple官网下载认证证书

如果需要的发不到App Store,下载类型要有 Developer ID Application
如果需要发布到Apple Store, 下载类型要有: Mac App Distribution
如果安装包类型是.pkg, 下载类型要有: Developer ID Installer 或 Mac Installer Distribution
如果是自己添加创建某个证书,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/853821.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用KVM制作镜像

资源列表 操作系统 IP Centos7,桌面版 192.168.10.57 安装KVM 安装软件包 yum -y install qemu-kvm qemu-kvm-tools qemu-img bridge-utils libvirt virt-install virt-manager 检查有否支持虚拟化 grep -e vmx -e svm /proc/cpuinfo #VMX是英特尔版本&…

【CT】LeetCode手撕—88. 合并两个有序数组

目录 题目1- 思路2- 实现⭐88. 合并两个有序数组——题解思路 2- ACM实现 题目 原题连接:88. 合并两个有序数组 1- 思路 模式识别 模式1:两个有序数组合并 ——> 双指针模式2:返回结果填充到 nums1[mn] ——> 需要开辟新的数组空间 …

lxml库在爬虫领域的贡献及应用

重头戏lxml库里面的xpath 一段代码给各位开开胃 这段代码首先导入了lxml库中的etree模块,然后定义了一个包含HTML内容的字符串html。接着,我们使用etree.HTML()函数解析这个HTML字符串,得到一个表示整个HTML文档的树形结构。最后,…

C# 字段 属性 索引器

字段声明字段字段初始化静态字段常量字段只读字段字段的访问然而 属性声明属性自动实现的属性只读属性只写属性属性的逻辑处理属性的访问修饰符属性和字段的区别属性的用途总结 索引器索引器的基本语法使用索引器索引器的关键点语法参数访问和设置异常处理性能重载使用场景封装…

qt 实现模拟实际物体带速度的移动(水平、垂直、斜角度)——————附带完整代码

文章目录 0 效果1 原理1.1 图片旋转1.2 物体带速度移动 2 完整实现2.1 将车辆按钮封装为一个类:2.2 调用方法 3 完整代码参考 0 效果 实现后的效果如下 可以显示属性(继承自QToolButton): 鼠标悬浮显示文字 按钮显示文字 1 原理 类继承…

Folx软件安装教程及最新版下载

简介: Folx Pro是一款适合Mac的专业下载工具也是一款BT下载器,Folx中文版有一个支持Retina显示的现代界面,提供独特的系统排序、存储下载内容与预览下载文件。Folx中文官网提供Folx教程、激活码、下载。 安 装 包 获 取 地 址: …

远程连接管理服务SHH

1.了解服务端和客户端 服务端:提供服务 客户端:享受服务 思考: 我们通过网络是如何找到我们想要访问的服务的? IP(提供服务的服务器)Port(找到相应的服务) 2.了解端口号的设定 说明:端口号只有整数,范围是从0 到65535 1~2…

使用RANSAC来拟合直线

RANSAC是“RANdom SAmple Consensus”的缩写,是一种迭代方法,用于数据中估计统计参数或几何模型的算法。它通过给定数据集中随机选择样本并使用样本计算模型,然后测试模型的可能性来工作。如果一个模型通过了足够数量的测试,则认为…

warning LNK4017: DESCRIPTION 语句不支持目标平台;已忽略

文章目录 warning LNK4017: DESCRIPTION 语句不支持目标平台;已忽略概述笔记备注END warning LNK4017: DESCRIPTION 语句不支持目标平台;已忽略 概述 基于ATL的COM DLL导出函数,无法用__declspec(dllexport)直接在函数上标记为导出函数。 只…

【Python】torch_scatter安装报错

torch_cluster,torch_scatter,torch_sparse则在成功安装torch后,使用指令 pip install --no-index torch_scatter -f https://pytorch-geometric.com/whl/torch-1.x.0cu10x.html(torch_cluster可直接修改为另外两样)进…

Scala网络编程:代理设置与Curl库应用实例

在网络编程的世界里,Scala以其强大的并发模型和函数式编程特性,成为了开发者的得力助手。然而,网络请求往往需要通过代理服务器进行,以满足企业安全策略或访问控制的需求。本文将深入探讨如何在Scala中使用Curl库进行网络编程&…

MySQL第三方图形化工具:DBeaver

操纵数据库的语言,基于功能划分为4类: 数据定义:DDL(Data Definition Language)库的创建删除、表的创建删除等 数据操纵:DML(Data ManipulationLanguage)新增数据、删除数据、修改数据等 数据控制:DCL(Data ControlLanguage)新增用户、删除用户、密码…

DAY24 回溯算法part01 77. 组合 216.组合总和III 17.电话号码的字母组合

理论基础 #什么是回溯法 回溯法也可以叫做回溯搜索法,它是一种搜索的方式。 在二叉树系列中,我们已经不止一次,提到了回溯,例如二叉树:以为使用了递归,其实还隐藏着回溯 (opens new window)。 回溯是递…

【靶场搭建】-02- 搭建OWASP靶机

1.OWASP靶机介绍 相比较其他靶机,OWASP提供的环境更多,且包含了许多其他靶机的环境,属于性价比比较高的靶机了。 2.下载OWASP 访问以下地址进行下载: https://sourceforge.net/projects/owaspbwa/ 因为OWASP是虚拟机文件&…

玩具机器人脚本适合场景

玩具机器人脚本作为一个模拟的玩具机器人脚本,适合以下场合: 1.教育和学习:对于初学者和编程爱好者来说,这个脚本是一个很好的学习工具,可以帮助他们理解如何编写和执行简单的控制逻辑。 2.在计算机科学、机器人技术或…

函数(上)(C语言)

函数(上) 一. 函数的概念二. 函数的使用1. 库函数和自定义函数(1) 库函数(2) 自定义函数的形式 2. 形参和实参3. return语句4. 数组做函数参数 一. 函数的概念 数学中我们其实就见过函数的概念,比如:一次函数ykxb,k和b都是常数&a…

跻身中国市场前三,联想服务器的“智变”与“质变”

IDC发布的《2024年第一季度中国x86服务器市场报告》显示,联想服务销售额同比增长200.2%,在前十厂商中同比增速第一,并跻身中国市场前三,迈入算力基础设施“第一阵营”。 十年砺剑联想梦,三甲登榜领风骚。探究联想服务器…

【机器学习】机器学习重要分支——强化学习:从理论到实践

文章目录 强化学习:从理论到实践引言第一章 强化学习的基本概念1.1 什么是强化学习1.2 强化学习的基本组成部分1.3 马尔可夫决策过程 第二章 强化学习的核心算法2.1 Q学习2.2 深度Q网络(DQN)2.3 策略梯度方法 第三章 强化学习的应用实例3.1 游…

【C语言】解决C语言报错:Format String Vulnerability

文章目录 简介什么是Format String VulnerabilityFormat String Vulnerability的常见原因如何检测和调试Format String Vulnerability解决Format String Vulnerability的最佳实践详细实例解析示例1:直接使用不受信任的输入作为格式化字符串示例2:未验证格…

1949年到2021年中国历年稻谷产量统计报告

数据介绍 数据来源于国家统计局,为1949年到2021年我国每年的稻谷产量数据。 2021年,我国稻谷产量为21284.24万吨,比上年增长0.5%。 数据统计单位为:万吨 我国稻谷产量有多少? 2021年,我国稻谷产量为2128…