关于使用开发者ID对Mac应用程序进行代码签名的问题



我有几个关于使用开发者ID签名Mac应用程序的问题:

首先,我正在做一个使用GateKeeper的项目。所以我必须(?)用开发者ID签署我的应用。

  1. 我需要一个配置文件与开发者ID签署吗?在构建设置选项卡中,开发者ID认证被标记为Identities without Provisioning Profiles。在Mac Provision Portal中,我发现没有地方生成配置文件来匹配开发者ID证书,而不是提交证书。那么我是否需要一个配置文件来使用开发者ID进行签名?

  2. 存档后,当我在组织者中选择Export Developer ID-signed Application时,我的Developer ID认证被标记为黄色警告图标。但是我仍然可以选择证书并签名。可以吗?

  3. 签署我的应用程序后,我使用sudo spctl -a -v MyApp.app测试我的应用程序与sudo spctl --master-enable之前运行。结果如下:

    EIM.app: rejected
    source=Developer ID
    

这个拒绝是否与问题2中的警告有关?

这是我第一次用Developer ID发布Mac App,谢谢大家的帮助。

Re:配置文件和DeveloperID—它们是不必要的。您应该能够在构建设置代码签名标识部分的自动部分中接受您的DeveloperID。如果不能,则可能是您的键丢失了,或者包含该信息的数据库有其他问题。

首先,进入Keychain Access并验证您的DeveloperID证书是否具有与之关联的附带私钥(这将在披露三角形下显示)。如果没有,那么你应该检查一下你是否保存了与该证书相关的密钥,因为如果你找不到并重新导入它(例如,从Xcode导出的Developer Profile),你将需要撤销并重新颁发证书,因为没有办法签名。

第二,4.6.1中有一个已知的错误,可能会破坏包含来自开发人员门户的信息的缓存数据库。没有具体的迹象表明这种行为可能是由这个问题引起的,但在执行下一步之前,您可能想要尝试一下。基本上,你需要退出Xcode,移到一边(或删除)~/Library/Developer/Xcode/connect1.apple.com 4.6.1.db(是的,在那个文件名中有一个空间),重新启动Xcode,转到OrganizerRefresh你的配置文件和证书。

如果这不起作用,你可能要考虑撤销你的开发者ID。

警告如果您已经成功地分发了带有证书的代码,请不要撤销它,直到您访问了Apple的网站(https://developer.apple.com/support/technical/certificates/)并彻底理解了吊销开发人员id的发布代码的含义。具体来说,已安装的软件将继续工作,但用户将无法安装/重新安装使用原始证书签名的二进制文件。

如果您从未成功地使用证书分发代码(或者如果您的密钥不可恢复地丢失),您可能需要访问门户并撤销然后重新颁发您的Developer ID证书。撤销证书后,您可以通过请求新证书来创建新证书。

相关内容

  • 没有找到相关文章

最新更新