允许协同设计使用我的钥匙串有问题

Having issue with allowing codesign to use my keychain

我正在使用 El Capitan 和 Xcode 7.1,我正在尝试构建和存档我的应​​用程序以上传到应用程序商店。编译后弹出此警报:

但是 Always AllowAllow 按钮根本不起作用,但是 Deny 取消了警报!我应该如何解决这个问题?我正在使用新的 iMac,并将所有数据从旧的 mac 转移到这台新的。这个问题甚至发生在 Safari ,当一个网站想要从钥匙串访问密码时。

这是控制台日志:

SecurityAgent[1476]: Ignoring user action since the dialog has received events from an untrusted source

我已经调查过这个 question 但我不会分享任何东西!

找到解决方案:

就 OS 而言,第三方实用程序(例如 Alfred、TextExpander 或 MagicPrefs)可能会占用 window 的 "control"。你可以通过禁用它们来找到罪魁祸首,然后一个一个地打开它们,直到你找到一个(或多个)以这种方式影响钥匙串。 信用:https://apple.stackexchange.com/questions/212622/keychain-wont-let-copy-passwords-after-10-11-1-update

就我而言,我刚刚卸载了 MagicPref 应用程序,问题就解决了

不确定您是否已经解决了这个问题,但前几天我确实遇到了这个问题。您的 Xcode 构建盒是远程的吗? ARD/VNC 是否启用? Apple 最近发布了针对 CVE-2015-5943 'A malicious application can programmatically control keychain access prompts' 的更新,因此 allow/allow 按钮始终不起作用,因为使用了 VNC/ARD。可能导致该错误出现的另一件事是修改系统输入的应用程序,如 Smoothmouse 或 MagicPrefs。

您可以通过重新导入私钥并在导入时信任代码签名二进制文件来解决这个问题。如果您没有原始私钥 .p12 文件,您可以从您的钥匙串中导出它。在重新导入之前,您需要从钥匙串中删除私钥(确保您先将私钥备份到某处!!)。

要导入并信任 codesign 二进制文件,您可以使用此命令。

security import /tmp/my-cert-path.p12 -k /Users /xcodeuser/Library/Keychains/login.keychain -P mysupercoolprivatekeypassword -T /usr/bin/codesign

如果您需要继续向私钥添加受信任的应用程序,我肯定会确保从现在开始将您的开发者私钥备份到其他地方。如果您丢失了私钥并且无法从 Keychain Access 导出,如果您没有本地访问权限(我们使用远程托管 Mac Mini),您可能需要重新生成它。

您发布的日志条目是正确的。

SecurityAgent[1476]: Ignoring user action since the dialog has received events from an untrusted source

'About the security content of OS X El Capitan 10.11.1, Security Update 2015-004 Yosemite, and Security Update 2015-007 Mavericks' https://support.apple.com/en-us/HT205375

其他面临同样问题的人:

https://superuser.com/questions/1004881/osx-10-11-1-keychain-access-does-not-allow-change-to-access-permission

http://nerdanswer.com/answer.php?q=1181710

我也遇到了同样的问题,找了好久。实际上,我在 Microsoft word 的弹出框中遇到类似问题时发现了这个答案,但该问题不起作用。

我使用的修复方法是重新启动计算机并以安全模式(https://support.apple.com/en-us/HT201262)打开电源,打开Xcode(您可能需要安装组件),然后尝试存档再次。这一次,当您单击始终允许时,它应该可以工作。

希望对您有所帮助!