【问题标题】:Escalate App Privileges Programmatically OS X以编程方式提升应用程序权限 OS X
【发布时间】:2012-02-13 19:12:20
【问题描述】:

我已经进行了一些挖掘,我看到的主要想法是使用 setuid/getuid 和使用授权服务(由于某种原因,它在编译时给了我一个符号错误,但现在似乎已被弃用)。

我的应用程序需要能够在某个时间点请求 root 访问权限(用于访问原始磁盘驱动器),最好使用 OS X 身份验证对话框(我是 OS X 的新手,所以我不知道该怎么称呼它)。

【问题讨论】:

    标签: c++ macos root


    【解决方案1】:

    授权服务得到很好的支持,AFAIK。

    Here's a link to a tutorial (with sample projects!) 您可以使用它来启动一个小工具,您可以在其中获得管理员权限,然后您可以在调用过程中调用setpriority API(为您链接的文档)。

    【讨论】:

    • 谢谢!出于某种原因,我找不到当我 #include 声明 AuthorizationExecuteWithPrivileges 的位置时,我几乎有其他所有东西的符号,除了一个函数
    • developer.apple.com/library/mac/#documentation/Security/… 表示 AuthorizationExecuteWithPrivileges 自 10.7 以来已被弃用。 stackoverflow.com/questions/6841937/… 有一些相关信息。
    • 哎呀...AuthorizationExecuteWithPrivileges 从 10.7 开始被“弃用”。我正在查看 Apple 的 Authorization Services Tasks 文档,以了解如何 renice 调用过程。
    • @Vishal 这也是我注意到的,但我不太确定使用它的原因或是否不好。感谢您链接到相关问题!
    • 我刚刚修复了它们@CasperB.Hansen
    猜你喜欢
    • 2016-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-21
    • 2012-07-14
    • 2013-01-19
    • 2011-04-13
    • 1970-01-01
    相关资源
    最近更新 更多