2011-02-07 37 views
1

不知我是否可以禁用每当我的应用程序想要访问keychaindata时弹出的钥匙串对话框。我的应用程序将TextField的字符串与钥匙串条目进行比较,以检查输入的密码是否正确。禁用钥匙串权限对话框?

它工作正常,但它要求访问它的权限。

如何避免此行为?

最好的问候, 阿德里安

回答

9

另一个建议是,代码签名的可执行文件,甚至在OS X

如果你不这样做,那么系统总是要求用户如果他/她允许程序在程序访问钥匙串即使您的用户之前选择了“允许始终”,也会更新。这是因为系统无法确定所谓的更新程序是否是真正更新的版本。

正如书面in this Apple document所示,如果您是代码签名,系统不会询问用户在程序更新时是否允许程序访问钥匙串,因为系统可以告诉您的新版本的应用程序真的是由同一个程序员发布的应用程序的新版本。

因此,为了最大限度地减少钥匙串对话的数量,请对您的应用程序进行代码签名。是的,它在OS X上是可选的,与iOS不同,但它有一些优点。

8

这是预期的行为,让用户在哪些应用程序可以访问他们的钥匙链的控制。如果您想避免提示,请单击对话框上的“始终允许”。

+0

“始终允许”仍然可用,直到应用程序更新。代码签名答案是正确的。 – 2011-02-07 05:18:59