我已经为某些用户提供了我的应用程序的临时版本.其中两个应用程序在启动时死亡,而一个用户没有问题.我也可以毫无问题地安装ad hoc ......但对我来说总是如此.一位用户从Xcode管理器控制台发送了以下信息.他们没有找到任何崩溃日志.我不知道如何制作下面的信息.突出的一点是"许可被拒绝".
我将provisioning和myapp.app文件放在一个dropbox文件夹中.然后,用户从同一位置检索文件.我已经对Dropbox中的.app文件进行了编码,并获得了有效的输出:
codesign -vvvv myapp.app
myapp.app: valid on disk
myapp.app: satisfies its Designated Requirement
Run Code Online (Sandbox Code Playgroud)
任何人都有一些想法,我怎么能弄清楚为什么该应用程序不适合这个用户?
这是一个用户的控制台输出.他们找不到任何相关的崩溃日志:
Stats
totalMLSITDBPostProcessing=5.31s
commands=0.01
misc=0.45s
icuSort=4.41s (MLS_icu_data=0.23s, MLS_icu_sec_data=0.13, dropIdx=0.04, normalize=0.13, update_orders=1.31, tStatsICUOther1=0.02, createIndex=2.50)
Sun Dec 13 12:35:04 unknown com.apple.launchd[1] <Error>: (UIKitApplication:com.cygen.myapp[0x8cb6]) posix_spawn("/var/mobile/Applications/4B036396-3294-4E0A-BBCC-4118E72846D4/myapp.app/myapp", ...): Permission denied
Sun Dec 13 12:35:04 unknown com.apple.launchd[1] <Warning>: (UIKitApplication:com.cygen.myapp[0x8cb6]) Exited with exit code: 1
Sun Dec 13 12:35:04 unknown SpringBoard[24] <Warning>: Failed to spawn myapp. Unable to obtain a task name port right for pid 179: (os/kern) failure
Sun …
Run Code Online (Sandbox Code Playgroud) 运行已经过数字签名的可执行文件时,我得到了一个非常奇怪的结果.
可执行文件使用signtool.exe使用适当的2级代码签名证书(非自生成)进行签名.
在Windows 7计算机上进行测试,如果我启动已签名的可执行文件,我会收到Windows警告对话框,说明Publisher Unknown(即未签名).
但是,如果我然后取消并右键单击可执行文件并转到属性 - >数字签名,签名列表将显示签名证书,然后我可以单击该选项并选择"详细信息"以查看签名的详细信息,显示为"数字签名正常".
此时,如果我启动可执行文件,现在所有突然的窗口都正确识别出exectuable已签名并报告正确的"已验证的发布者".
似乎Windows可能没有在线检查证书,直到我从可执行文件的属性对话框中查看实际的证书详细信息(请注意,启动可执行文件后它不仅仅是一个延迟,我等待的时间不长或者我启动它多少次,它将它视为未签名,直到我进入文件的属性/数字签名).
这是我用于测试的通用Windows 7安装 - 它没有以任何方式进行修改或调整.
这种行为似乎打破了Windows上代码签名的主要目的 - 除非用户知道进入右键单击属性并挖掘证书,否则可执行文件被视为无符号.
有什么我想念的吗?某些方法将可执行文件标记为Windows应该主动检查执行时的证书?
In an attempt to codesign gdb, I used an incorrect certificate, so now gdb is codesigned but does not work as expected.
I attempted to codesign gdb using the correct certificate, however codesign complains that gdb is already signed.
So how to undo it?
The codesign command I used was:
codesign -s gdb-cert gdb
Run Code Online (Sandbox Code Playgroud)
我已经更新到OS X Yosemite以及Xcode 6.1(从开发人员站点下载),从这时起我就像在日志文件中遇到了构建问题我看到了警告:警告:--resource-rules已被弃用在Mac OS X中> = 10.10!".有人知道如何在没有"资源规则"标志的情况下使用Xcode插件吗?谢谢.
我在优胜美地的kext上签了代码.但是kextload失败了.
这是版本2的代码签名.codesign --verify
是真的.
但是kextload失败了.为什么不加入约塞米蒂?
这是我的日志.
我已经检查过codesign -dvvv ./myKext.kext
它没问题.
codesign -dvvv ./myKext.kext
返回以下:
Executable=/Path/to/myKext
Identifier=com.myKext.kext.Firewall
Format=bundle with Mach-O thin (x86_64)
CodeDirectory v=20100 size=317 flags=0x0(none) hashes=9+3 location=embedded
Hash type=sha1 size=20
CDHash=d0ff68bd8b49c650f45349c2d1570d45a8c1f148
Signature size=8544
Authority=Developer ID Application: My Kext Co., Ltd. (R2PBZJ465V)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=2014. 10. 31. ?? 11:09:35
Info.plist entries=18
TeamIdentifier=not set
Sealed Resources version=2 rules=12 files=1
Internal requirements count=1 size=188
Run Code Online (Sandbox Code Playgroud)
它显示版本2.
但是sudo kextload ./myKext.kext
返回以下内容:
/Path/to/myKext.kext加载失败 - (libkern/kext)无法加载(原因未指定); 检查系统/内核日志是否有错误或尝试kextutil(8).
cat /var/log/system.log …
我在系统钥匙串中有私钥和证书,我想使用CodeSign访问它,因此需要将其解锁。
如果我尝试使用以下脚本解锁登录钥匙串,那么没问题
security unlock-keychain -p password login.keychain
Run Code Online (Sandbox Code Playgroud)
但是,如果我对 system.keychain 使用相同的语法,那么我会收到此错误安全性:SecKeychainUnlock 您输入的用户名或密码不正确。
security unlock-keychain -p password /Library/Keychains/System.keychain
Run Code Online (Sandbox Code Playgroud)
由此我可以看到,无法在语法中输入用户名。
我的目的是要解锁的钥匙串,而代码签名的身材,让喜欢“我不会得到及时喜欢below.In代码签名事件的詹金斯我会得到错误的情况下,用户交互不允许”
我知道可以通过访问钥匙串中的所有应用程序来解决这个问题,但我打算通过脚本本身来解决这个问题。
任何帮助表示赞赏!
我刚刚完成了 macOS 应用程序的开发。我压缩了我的申请并将压缩包交给了我的朋友。然后他说这是来自不知名的开发商。我不想\xe2\x80\x99 不想显示它。所以我发现你必须支付 99 美元才能进行分发。我不想付任何钱。我不知道该怎么做。你能帮我吗
\n我正在尝试在XCTest
没有代码签名的情况下运行在框架中编写的多个测试,目的是不必处理在 CI 上导入代码签名身份的麻烦。
我已经删除了开发团队,并将应用程序和测试目标的签名证书设置为“签名以在本地运行”。建筑与
xcodebuild build-for-testing -scheme <my scheme>
Run Code Online (Sandbox Code Playgroud)
适用于 CI 和本地,但尝试运行测试
xcodebuild test-without-building -scheme <my scheme>
Run Code Online (Sandbox Code Playgroud)
大约 10 秒后失败并出现错误<name> (83559) encountered an error (Failed to load the test bundle.
。<test binary> not valid for use in process: mapped file has no Team ID and is not a platform binary (signed with custom identity or adhoc?
下面几行可以更清楚地说明这个问题。似乎 macOS 不喜欢未签名的测试包并拒绝加载它。
像这样运行测试命令:
xcodebuild test-without-building -xctestrun /Users/vinkwok/Library/Developer/Xcode/DerivedData/ChessFrontend-carjpisbuprsabeulpsycoxjqjea/Build/Products/ChessFrontend_macosx13.0-arm64.xctestrun -destination "platform=macOS,id=<id>,arch=arm64"
Run Code Online (Sandbox Code Playgroud)
抛出以下错误:
Early unexpected exit, operation never finished bootstrapping …
Run Code Online (Sandbox Code Playgroud) *****代码签名错误:身份'iPhone开发人员:XXXXXXXXXX'与默认钥匙串**中的任何有效证书/私钥对都不匹配.***
我是开发者资料中的成员,我安装了配置文件,这里一定有什么问题?
代码签名错误:身份'iPhone开发人员:XXXXXXXXXXXX'与默认钥匙串中的任何有效证书/私钥对都不匹配
我应该做些什么?我已经搜索过一个解决方案但仍未找到任何解决方案.
当执行存档构建时,"复制期间的条带调试符号"设置为YES,我收到警告"跳过复制相位条,二进制代码已签名".关于此问题的线程上通常建议的解决方案是将"在复制期间剥离调试符号"设置为NO.当然可以摆脱警告,但我不认为取消"低油警告灯"的方法将解决潜在的问题.
当此选项设置为NO时,似乎二进制文件的大小会变得臃肿.还有为什么要用你的应用程序发送调试符号?
我会很感激提示,见解和最佳解决方案.
codesign ×10
macos ×4
xcode ×4
cocoa-touch ×2
ios ×2
iphone ×2
jenkins ×2
authenticode ×1
build ×1
keychain ×1
objective-c ×1
shell ×1
windows ×1
xctest ×1