相关疑难解决方法(0)

无法在Xcode外部以数字方式签署Mac应用程序

我开发了一个带有Qt5的Mac应用,所以在Xcode之外.我希望GateKeeper允许我的应用程序在客户端的计算机上运行,​​而不是发出"无法打开,因为无法确认开发人员的身份"警告.

我已成功对该应用程序进行了数字签名,但GateKeeper仍然附带此投诉.我有一个Apple开发人员证书(我是团队代理),我的钥匙串说它是有效的.我还安装了两个Apple根证书.

我使用命令行实用程序codesign对app文件夹中的所有二进制文件进行数字签名,此外我还对app文件夹本身进行了数字签名.在所有情况下,协同设计的响应都是信息性的,并且没有显示错误.使用codesign我可以检查确实所有二进制文件都已签名,正在运行

$ codesign --verify --deep --verbose=2 MyApp.app
Run Code Online (Sandbox Code Playgroud)

显示所有二进制文件都已验证.此外,它报告:

MyApp.app:在磁盘上有效
MyApp.app:满足其指定要求

运行:

$ codesign -v --verbose=4 --display MyApp.app   
Run Code Online (Sandbox Code Playgroud)

Executable =/Users/xxx/trunk/yyy/deploy/release/MyApp.app/Contents/MacOS/MyApp
Identifier = aaaa.MyApp
Format = bundle with Mach-O thin(x86_64)
CodeDirectory v = 20200 size = 12461 flags = 0x0 (无)散列= 616 + 3位置=嵌入
散列类型= sha1大小= 20
CDHash = d1c12c783dac0e8d9a2b749fb896b11558cec8b6
签名大小= 8532
授权=开发者ID应用程序:XXXXX
授权=开发者ID证书颁发机构
授权= Apple根CA
时间戳= 29 jul.2015 12; 04:40
Info.plist entries = 8
TeamIdentifier = YYYYY
Sealed Resources version = 2 …

macos xcode cocoa code-signing osx-gatekeeper

15
推荐指数
1
解决办法
3324
查看次数

验证通过codesign,spctl和check-signature但未能运行的macOS应用程序"因为无法确认开发人员的身份"

我的macOS应用程序已经过编码并在某些计算机上运行但在另一台计算机上无法运行,因为Gatekeeper弹出"{App}无法打开,因为无法确认开发人员的身份."

我想发布一个错误的.dmg之前检测build机器上的这个问题,所以我看着苹果的文档上检查关守一致性检查守则签名,其中讨论codesign,spctlcheck-signature.令人困惑的是,所有这些工具都报告.app由我的开发者帐户签名.

$ codesign -v --strict --deep --verbose=2 App.app
App.app: valid on disk
App.app: satisfies its Designated Requirement

$ codesign -d --deep --verbose=2 -r- App.app
Executable=/Applications/App.app/Contents/MacOS/App
Identifier=com.example.app
Format=app bundle with Mach-O thin (x86_64)
CodeDirectory v=20200 size=196 flags=0x0(none) hashes=3+3 location=embedded
Signature size=8539
Authority=Developer ID Application: Company, Inc. (XXXXXXXXXX)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=Sep 22, 2016, 7:32:19 PM
Info.plist entries=21
TeamIdentifier=XXXXXXXXXX
Sealed Resources version=2 rules=12 files=10708
Nested=Frameworks/Squirrel.framework
Nested=Frameworks/App Helper …
Run Code Online (Sandbox Code Playgroud)

macos code-signing-certificate osx-gatekeeper

8
推荐指数
1
解决办法
2954
查看次数