首页 > 解决方案 > 我们可以在 Mac OSX 的命令行应用程序中添加钥匙串访问组权利吗?

问题描述

我在 Mac OSX 中构建了一个命令行工具应用程序,以使用 Microsoft MSAL Objective-C 框架获取令牌。需要为此应用程序提供钥匙串访问组权利以缓存钥匙串中的令牌。我没有找到为此命令行应用程序提供权利的方法,而在 Cocoa 应用程序中,Xcode 中有一个选项可以提供此权利。我尝试创建权利文件并在“构建设置->签名->代码签名权利”下提供了路径,但这不起作用。

任何帮助将不胜感激。谢谢!

标签: objective-cmacoscommand-line-tool

解决方案


你不能。权利文件被放入应用程序的包中,但如果创建了命令行工具,它将被编译成单个可执行的 Mac OS X 文件,并且不会创建包。

作为一种替代方法,您可以尝试将此 entitlement.file 嵌入到二进制本身中,并使用某种编码并表示为应用程序中的数据,然后将其解压缩到应用程序启动时的临时目录并尝试从该目录访问它。但是该文件的路径也应该在应用程序中进行硬编码/计算,因为没有向命令行工具提供配置的 Info.plist。


推荐阅读