问题描述
以下代码从普通用户运行的非沙盒NSApplication运行时成功提示管理员访问,并输出“ root”:
func adminWhoAmI() {
let script = NSAppleScript(source: "do shell script \"whoami\" with administrator privileges")
var errorDict: NSDictionary?
let desc = script?.executeAndReturnError(&errorDict)
print("RESULT",desc?.stringValue,errorDict)
}
但是,如果我将其放入xpc服务(也是非沙盒装)中,则会使用以下命令返回错误字典:
NSAppleScriptErrorMessage = "The administrator user name or password was incorrect."
无论xpc服务是Application
还是User
,都将失败。无论是否启用强化运行时,它也都会失败。
有什么方法可以执行向xpc处理程序请求管理员特权的NSAppleScript
吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)