通过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
密码项。
在计算机上本地执行相同的命令有效。
答案 0 :(得分:0)
我也在这个完全相同的问题上绊倒了。我认为可以在this answer中找到解决方案。
特别是:
第一次运行altool时,会出现一个安全确认对话框,询问您是否允许altool读取密码。输入钥匙串密码,然后单击“始终允许”。
您将需要以交互方式登录并像通过ssh一样运行altool命令。当确认弹出时,输入钥匙串密码,然后单击“始终允许”。将密码添加到钥匙串后,只需要做一次。
答案 1 :(得分:0)
我有一个类似的问题,使用SSH为证书运行security import
时遇到相同的错误。我正在研究应该能够在无需用户交互的情况下在Ansible上运行的脚本,因此我想避免为每个脚本执行一次手动操作。
您不知道该工具试图提示的信息(密码,密码等),因为该错误是通用的,因此,通过VNC连接进行交互式会话,然后在终端中手动运行命令,您会发现可以看到提示并了解问题所在。 (对我来说,缺少证书密码短语。)
相关帖子:Xcode, Codesign Error from Jenkins / SSH - "User Interaction is not allowed"