已签名的应用程序仍然不受信任

 764893552_da259b_448 发布于 2023-02-04 14:55

我正在尝试使用OSX在我的Java应用程序中签名codesign.我已经向Apple支付了100美元的赎金,并获得了我的代码签名证书.然后我codesign像这样使用它来强制它签署以前使用osxappbundleMaven插件创建的应用程序:

codesign -f -s "Peter Brewer" FHAES.app

当我尝试通过执行以下操作来验证签名时,这似乎完成了这项工作:

codesign --display --verbose=4 FHAES.app

...我收到以下回复:

Executable=/Applications/FHAES.app/Contents/MacOS/JavaApplicationStub
Identifier=FHAES
Format=bundle with Mach-O universal (i386 x86_64)
CodeDirectory v=20100 size=174 flags=0x0(none) hashes=3+3 location=embedded
Hash type=sha1 size=20
CDHash=de2cd9909fcc4bfab1f690c518a6c6c3b3097372
Signature size=4311
Authority=Mac Developer: Peter Brewer (N35745G8TD)
Authority=Apple Worldwide Developer Relations Certification Authority
Authority=Apple Root CA
Signed Time=Jan 10, 2014, 4:46:57 PM
Info.plist entries=10
Sealed Resources version=2 rules=12 files=2
Internal requirements count=1 size=164

除非我误解,否则这似乎表明它已经成功签署了Apple授权的证书.然而,当我尝试启动应用程序时,我得到通常的"无法打开,因为它来自一个身份不明的开发人员"错误.

谁能告诉我我做错了什么?

在如果任何人都可以一个相关的说明,请执行codesign在Linux中,我会感激不尽.我鄙视Apple破坏我的一键式跨平台构建系统,甚至比勒索我还要支付他们的证书还要多!

1 个回答
  • 几个小时在developer.apple.com上戳了我的眼球,我终于找到了我需要的信息.整个Apple生态系统正在推动开发人员使用Xcode和"他们的做事方式",并需要继续投资Apple硬件和软件.例如,教程视频只能在最近的Mac上查看(比我有权访问的2.5岁系统更新).但无论如何 - 我不会用SO来表达我的挫败感.

    我之前尝试失败的原因是因为我使用了错误的Apple证书.上述证书是用于签署应用程序的证书,然后该应用程序被发送给Apple,后者已准备好通过App Store发布该应用程序.由于我不打算通过Apple"出售"我的开源应用程序,我需要另一种称为开发者ID证书的证书,以便我能够在我自己的网站上分发我的应用程序.

    要获得开发者ID证书,您需要设置配置文件,注册开发机器并跳过Apple开发人员网站上的各种其他环节.在计算机上安装此证书后,您可以通过执行此操作在命令行上签名codesign -f -s "Developer ID" myapp.app

    当我运行codesign --display --verbose=4 myapp.app它时报告权限值现在以'开发者ID ...'而不是'Mac Developer ...'开头.这是GateKeeper不要为您的用户提供冠状所需的.

    2023-02-04 14:56 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有