Xcode命令/ usr / bin / codesign失败,退出代码为1:errSecInternalComponent

我正在尝试向我的Xcode添加新的配置文件,以测试设备上的应用程序。 以下是我遵循的步骤:

  1. 删除了所有证书和配置文件

  2. 创建/添加IOS开发证书

  3. 在线添加我的IOS设备

  4. 创建IOS配置文件

  5. 添加IOS配置文件

  6. 清洁应用程序

  7. 构建然后运行应用程序

  8. 在构建设置中设置代码签名和配置配置文件

  9. 很多谷歌搜索>没有成功

这是我得到的错误:

CSSM_SignData returned: 800108E6 /Users/alexpelletier/Library/Developer/Xcode/DerivedData/MyExpense-efnqzvoqwngzcmazaotyalepiice/Build/Products/Debug-iphoneos/MyExpense.app: errSecInternalComponent Command /usr/bin/codesign failed with exit code 1 

这似乎是代码签名机制中的一个错误,重启你的mac应该可以解决问题

转到Keychain Access – >切换一旦锁定/解锁图标登录 – >保持解锁状态 – >这解决了我的问题

登录密钥链被锁定时会发生这种情况。 要解锁登录密钥链,请运行:

 security unlock-keychain login.keychain 

然后再次尝试构建或代码签名操作。 有问题的错误代码在Apple的文档中描述为内部错误,因此完全有可能在其他情况下也会发生这种情况。

我遇到了同样的问题,我重启我的macOS,它的工作原理。

在中国,我们在开发者之间有一句话:

小问题,只需重启。大问题,应重新安装。

有时候,上面的说法会对你有很大的帮助!

如果它帮助了其他人,我遇到了一个errSecInternalComponent错误,因为我是通过ssh会话运行它到我的macOS机器上的。 从macOS机器本身的终端窗口运行相同的命令。

推测这是因为codesign需要从登录密钥链访问私钥。

从同一个会话运行security unlock-keychain login.keychain (由cbracken的答案解释)也应该有效。

High Sierra / Xcode 9.4.1上遇到同样的问题,所有签名尝试都以errSecInternalComponent结束

  1. 转到钥匙串访问,并将密钥访问控制更新为“允许所有应用程序访问此项目”或者:在mac终端上运行codesign命令并“始终允许”/ usr / bin / codesign访问密钥
  2. 如果尝试从ssh / CI签名,您还需要运行

     security unlock-keychain login.keychain 

    在尝试签署应用程序包之前