Mac OSX在构建MonoDevelop iOS App时要求进行密钥链访问

时间:2012-11-12 09:20:19

标签: ios macos monodevelop osx-mountain-lion keychain

在Mac上的MonoDevelop中构建项目时,我收到消息“MAC OS X想要进行更改。键入管理员的名称和密码以允许此操作.MAC OSX想要使用系统密钥链。”

我找到了帖子Mac OS X wants to use system keychain when compiling the project 但这并不能完全解决我的问题。我安装的配置文件是通过XCode完成的,并且是我在Provisioning Profile上的当前/有效配置文件,因此我认为这些配置文件是正确的 - XCode报告它们是有效的。

我已将我的开发环境从Macbook(编译应用程序工作正常,没有此错误)移动到另一台Mac,这已经开始出现了。如果我输入我的用户名/密码,它就会编译并运行。

为什么会发生这种情况?

(有一件事我想知道可能会导致问题......当我在我的Macbook上初步设置dev env时,我导出/备份了我的证书,如Jonny WIlson.p12。但是在我的新Mac上,我无法'导入这个。我尝试重新导出它并再次导入它,这也失败了。这个INITIAL证书(用于生成你在Provisioning Profile中认证的开发/发行版)是否能让这个工作变得重要?我问这个因为一旦你获得了Apple证书,我就会在论坛上阅读,不再需要这个密钥?这是正确的吗?)

3 个答案:

答案 0 :(得分:3)

在我的情况下,我去了Keychain Access,在“Keychains”中选择了“system”(左上角)。 然后为每个项目:右键单击,“获取信息”,“访问控制”,并在“始终允许这些应用程序访问:”列表中添加Xcode。

(我没有使用MonoDevelop,但猜测问题的原因是类似的)

答案 1 :(得分:1)

帽子提示:https://forums.developer.apple.com/thread/25092

自El Capitan以来,您再也无法点击"允许"或"始终允许"编程。

这包括来自屏幕共享!

据说你只需将鼠标插入无头Mac,然后点击" Always Allow"。在我关闭所有活动的屏幕共享会话之前,这对我来说并不起作用。

然后我插上了显示器,鼠标和放大器。键盘,点击" Alway允许"生活是美好的;直到我必须处理新证书。

答案 2 :(得分:0)

修复El Capitan:

  1. 将证书导出到.p12
  2. open terminal
  3. 运行:security import <pathToP12> -k <keychain_name>.keychain -t priv -f pkcs12 -A
  4. 您将被要求输入钥匙串密码以及所有密码。