“不允许用户交互”尝试使用代码签名来签署OSX应用程序怎么处理?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (39)

我们的自动化构建在Jenkins上运行。构建本身在从属设备上运行,而从设备则通过SSH执行。

我收到一个错误:

00:03:25.113 [codesign-app] build/App.app: User interaction is not allowed.

我已经尝试了其他建议:

  • 在签名之前立即使用安全解锁钥匙串来解锁钥匙串。
  • 将签名密钥移出到它自己的钥匙串中。
  • 将签名密钥移入登录钥匙串。
  • 将签名密钥移入系统钥匙串。
  • 手动将列表钥匙链设置为仅包含密钥的钥匙串。

在所有情况下,我都会得到同样的错误。

提问于
用户回答回答于

从本质上说,这看起来就像是-d system实际上不起作用。因此

security -v list-keychains -s "$KEYCHAIN" "$HOME/Library/Keychains/login.keychain"
security list-keychains # so we can verify that it was added if it fails again
security -v unlock-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN"
codesign --sign "$SIGNER_IDENTITY" --force --signature-size 9600 \
         --resource-rules src/AppResourceRules.plist --timestamp --verbose \
         "$APP"
用户回答回答于

通过GUI登录构建用户并打开钥匙串访问。选择签名私钥,右键单击,选择获取信息,切换到访问控制选项卡并选择“允许所有应用程序访问此项目”。

扫码关注云+社区