【问题标题】:Deleting files using Swift that require admin privileges使用 Swift 删除需要管理员权限的文件
【发布时间】:2021-06-27 20:47:53
【问题描述】:

我目前正在开发一个 Mac 应用程序,我需要从 /Library/LaunchDaemons 目录和其他需要管理员权限的类似目录中删除文件(可能是恶意的)。使用FileManager.default.removeItem 没有结果。我遇到过将我指向EvenBetterAuthorizationSampleSMJobBless 的文章,我发现文档相当混乱。我是否在正确的轨道上,如果是,我应该如何进行?

【问题讨论】:

标签: swift admin delete-file nsfilemanager smjobbless


【解决方案1】:

SMJobBless 的文档确实令人困惑。我将SwiftAuthorizationSample 和一个相当广泛的自述文件放在一起。因此,即使示例不是您要查找的内容,也希望 README 对您有所帮助。

【讨论】:

    【解决方案2】:

    一个想法是查看 FileManager 的init(authorization:) 方法。它从 10.14 开始可用。我认为这是执行该操作的最简单方法。

    https://developer.apple.com/documentation/foundation/filemanager/3025773-init

    此外,值得检查您要删除的目录是否不受 SIP 保护。在这种情况下,在启用 SIP 的机器上无法删除它们。

    祝你好运!

    【讨论】:

    • 感谢朱莉娅的回答。这种方式当然似乎是最简单的。但是,我无法找出正确的使用方法。你能给我举个例子,比如使用 FileManager 执行特权 removeItem() 操作吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多