我有一个Windows应用程序移植到Mac.In Windows我将加密数据存储在注册表中。但是当涉及到Mac我不熟悉。
应用程序按PC许可。因此,所有使用本机的用户都可以使用它。所以在Windows中我将密钥存储在HKEY\LOCAL MACHINE
用户访问权限如何在Mac中运行?我需要在哪里存储数据?
答案 0 :(得分:2)
此类数据通常存储在Application Support目录中的文件中。如果要为所有用户存储一个文件,则应选择/Library/Application Support
系统目录。
该目录不是用户可写的,因此您必须以root权限运行installer。沙盒应用程序无法使用此目录。
您应该在此目录中创建一个子文件夹并将文件存储在其中。
有关详细信息,请参阅The Mac Application Environment,尤其是表1-1,“Mac应用程序的关键目录”和File System Basics。
修改强>
通常OS X应用程序不需要任何安装。它们是独立的捆绑包,可以从任何位置运行。通常将它们保存在Applications文件夹中(将其拖到那里)。系统范围/Applications
文件夹可供所有用户访问。每个用户的家中还有私人~/Applications
文件夹。
另一方面,需要将数据安装到系统文件夹的应用程序使用安装程序。安装程序通常将应用程序包复制到/Applications
文件夹,但也处理身份验证并向用户请求管理员凭据。安装人员也可以运行脚本。
也许您的许可证可以在安装过程中由脚本生成?
如果没有,则必须在首次运行应用程序时生成许可证文件。在这种情况下,如果要为/Library/Application Support
中的所有用户保留一个文件,则必须升级权限并要求用户输入管理员权限。如果您不想这样做,请考虑在其主~/Library/Application Support
文件夹中为每个用户存储单独的许可文件。