有没有办法让终端命令在 macOS Big Sur 中需要 sudo?

时间:2021-05-17 19:18:17

标签: macos terminal macos-big-sur bin

我想阻止任何没有管理员权限的人使用 osascript 终端命令。我曾经通过使用 sudo chmod 744 /usr/bin/osascript 更改可执行文件的权限来完成此操作。现在的问题(据我所知)是 Big Sur 不允许对只读系统卷进行更改。因此,我想找到一种保留此功能的解决方法,即。我不希望在不使用 sudo 的情况下运行这个二进制文件。这对我来说是一个巨大的麻烦,我不想为了编辑系统卷而不得不求助于禁用 SSV 身份验证。如果有任何方法可以提升所需的权限,那就太完美了。

1 个答案:

答案 0 :(得分:0)

您可以通过编写 Endpoint security extension 来实现它。

订阅 ES_EVENT_TYPE_AUTH_EXEC 并从事件参数中检查用户。拒绝非 root 用户执行 osascript。

这听起来可能有点矫枉过正,但由于大 sur,您不可能通过其他方式启用 SIP 来做到这一点。

这里唯一的问题是您需要一个 Apple 开发者帐户并从 Apple 请求端点安全权利。如果您以适当的方式(例如安全相关项目)描述您的解决方案,他们可以将其提供给您,但没有任何保证。