我目前正在尝试让应用程序仅在管理员登录名输入对话框时打开。我试过在以下方法下使用 AppleScript:
set adminLogin to do shell script "" with administrator privileges
display dialog adminLogin
这显示了我想要的对话框,我能够将其放入 NSTask 中以执行它。我什至可以获取输出并使用它在 if
语句下关闭应用程序。
我想使用实际的应用程序而不是 osascript 来说明它需要管理员登录才能继续,并且这个 scpt 文件在我编译、构建和存档它以供实际使用后立即消失,这意味着我' d 必须在创建后将此文件重新添加到我为其制作此文件的所有客户。它似乎不太有效,因为它依赖于可能被利用的不同任务来快速登录,而不是使用应用程序持有的相同进程。
有没有办法以编程方式请求管理员登录以继续打开应用程序?我可以使用 CoreLocation
和/或我可以使用 AuthorizationServices()
来执行此任务吗?
最佳答案
看看 LocalAuthentication
框架。 deviceOwnerAuthentication
有一个策略,它处理 Touch ID 和设备密码身份验证。
LocalAuthentication 框架引用:https://developer.apple.com/reference/localauthentication
和
设备所有者身份验证: https://developer.apple.com/reference/localauthentication/lapolicy/1514164-deviceownerauthentication
关于swift - 如何在 OSX Swift 应用程序中请求管理员登录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41147000/