我在 Cocoa 应用程序中使用 BAS,并自定义提示输入管理员密码...
但现在我想更改提示。我在字符串文件中更改了它,但它没有更改。我重建了所有内容并删除了/var/run 中的套接字以及 launchdaemon 和 privelegedhelpertools 文件夹。但提示不会改变!!!
帮忙?
最佳答案
提示是写入策略数据库的规则的一部分。当您第一次运行 BAS 时,它会根据您的定义在策略数据库中创建规则。后续运行可确保这些规则存在,但不会被覆盖,即使您在应用中更改了规则或自定义提示。
在本地计算机上,您需要通过打开策略数据库文件 /etc/authorization
并删除整个相关规则(搜索 BetterAuthorizationSample)来清除规则。当您再次运行 BAS 时,它会检测到该规则不存在,并使用更新的信息重新写入它。
如果您需要对已部署的应用程序进行更改,则必须在运行 BAS 之前编写一些自定义代码来删除规则(这将需要授权)。
关于objective-c - BetterAuthorizationSample 提示未更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2841393/