1

通过 ssh 连接并执行:

xcrun altool --notarize-app --primary-bundle-id com.example.app --username exam@ple.com --password @keychain:AC_PASSWORD --file app.dmg

结果是:

2019-04-17 16:06:53.146 altool[4331:55219] *** Error: User interaction is not allowed.

密码已存储在临时钥匙串中:

security add-generic-password -a "exam@ple.com" -s "AC_PASSWORD" -p "myPassword" -A "temp.keychain"

代码设计与临时钥匙串技巧一起使用:https ://apple.stackexchange.com/questions/255872 。
在创建临时钥匙串期间,AC_PASSWORD使用上述命令添加密码项。

在机器上本地执行相同的命令有效。

4

2 回答 2

2

我也在这个完全相同的问题上绊倒了。我认为可以在这个答案中找到解决方案。

具体来说:

第一次运行 altool 时,您会看到一个安全确认对话框,询问您是否允许 altool 读取密码。输入您的钥匙串密码,然后单击始终允许。

您将需要以交互方式登录并像通过 ssh 一样运行 altool 命令。弹出确认信息后,输入钥匙串密码,然后单击“始终允许”。将密码添加到钥匙串后,您只需执行一次。

于 2019-07-09T17:50:35.047 回答
0

我遇到了类似的问题,在使用 SSH 运行security import证书时遇到了同样的错误。我正在研究应该能够在没有用户交互的情况下在 Ansible 上运行的脚本,所以我想避免每个脚本的一次性手动步骤。

您不知道该工具试图提示哪些信息(密码、密码短语等),因为该错误是通用的,因此通过 VNC 连接进行交互式会话,然后在终端中手动运行命令,您可以看到提示并了解问题所在。(对我来说,缺少证书密码。)

相关文章:Xcode,来自 Jenkins / SSH 的代码设计错误 - “不允许用户交互”

于 2020-11-19T01:20:00.127 回答