如果我使用自我证书签署我的应用程序并在目标计算机上安装了该证书,那么在macos中是否可能成为“已识别的开发人员”?

问题描述 投票:0回答:1

我在mac osx中开发了一个应用程序。该应用程序在本地正常运行

现在我正在尝试在内部与其他同行分发应用程序。 (无需通过应用程序商店)

我创建了一个自签名证书。我安装了证书并将其添加到可信任(它是ROOT证书)然后我使用自签名证书签署了应用程序。

一切都很好。签名后,应用程序仍在本地正常运行(我确认它确实已签名)

我的下一步是将已签名的应用程序上传到s3。下载应用程序后。 os安全设置阻止了下载应用程序的启动 - (身份不明的开发人员) - 这是安装了证书的机器。

所以我不确定为什么我仍然收到不明的开发人员错误?我的假设是,如果证书在目标机器中存在(并且受信任) - 操作系统应该允许应用程序通过。这个假设是不正确的 - 如果是这样的话,自签的值是多少(我猜什么都没有)。如果不是这样,我可能有错误的证书?

macos code-signing osx-gatekeeper
1个回答
1
投票

您下载.app后收到错误,因为您下载它(您的网络浏览器?)设置了隔离属性,这会强制关守启动。您可以阅读更多here

Gatekeeper正在寻找一个由Apple发行的“开发人员”证书(Apple Root CA作为其根证书)。它不只是检查根CA是否可信。

例如codesign -dvvvv /Applications/Google\ Chrome.app/

Authority =开发者ID应用程序:Google,Inc。(EQHXZ8M8AV)Authority =开发者ID证书颁发机构颁发机构= Apple Root CA

您的自签名证书不是Apple颁发的开发人员证书,因此Gatekeeper无法识别它。

© www.soinside.com 2019 - 2024. All rights reserved.