我需要知道当前用户是否由 Mac OS X 家长控制(更具体地说,应用程序年龄限制)管理,以阻止应用程序的某些内容。我怎样才能做到这一点?任何这些都足够了。
可以使用 Objective-C 实现但不一定使用 Objective-C 的方法,例如 bash 命令或 AppleScript 命令,也可以接受。
编辑:应用年龄限制可以在这里找到:https ://ibb.co/mOZyww
我需要知道当前用户是否由 Mac OS X 家长控制(更具体地说,应用程序年龄限制)管理,以阻止应用程序的某些内容。我怎样才能做到这一点?任何这些都足够了。
可以使用 Objective-C 实现但不一定使用 Objective-C 的方法,例如 bash 命令或 AppleScript 命令,也可以接受。
编辑:应用年龄限制可以在这里找到:https ://ibb.co/mOZyww
首先,我不确定你的意思
应用年龄限制
在 macOS 10.13 上,我只看到将应用程序限制在白名单中的选项;我无法根据年龄配置限制。
无论如何,家长控制存储在本地目录服务中,在mcx_attributes
相关用户的属性中。
(mcx 指的是旧的 Managed Preference 框架)
您可以使用 Directory Utility 或通过dscl
(使用 mcx 插件)通过 UI 浏览它。
如果运行,则可以使用,等dscl
浏览目录服务。cd
ls
例如,我可以导航到我的 testuser:
cd /Local/Default/Users/testuser
然后转储家长控制mcxexport
-mcxexport .
这将为您提供 XML 格式的已配置家长控制。
查看dscl . -mcxhelp
更多信息。
更新
切换“限制:应用到:”设置会更新此首选项键:
<key>gamesLimit</key>
<dict>
<key>state</key>
<string>always</string>
<key>value</key>
<integer>300</integer>
</dict>
您将不得不使用它来找出相应的值(例如 300 == 12 岁以上)