gpt4 book ai didi

java - OS X Catalina 以管理员权限破坏了 osascript 启动

转载 作者:行者123 更新时间:2023-12-01 13:37:53 24 4
gpt4 key购买 nike

所有已知的先前 macOS 版本都使用这种脚本上下文:

osascript -e "/path/to/my/app.command" with administrator privileges

现在它只是默默地失败了......在要求管理员密码之后。
命令文件是最初用于启动应用程序的文件,应用程序有一个按钮可以使用特权重新启动......并且先前的非特权应用程序关闭。

如果我删除“具有管理员权限”,它会重新启动。如果有,那就没有了。

如果我尝试使用:
/usr/bin/security execute-with-privileges /path/to/my/app.command

它也失败了......甚至从未显示密码提示。

我也试过“sudo open/Applications/myApp.app”,但这当然实际上并没有以特权启动。

从 shell 我可以 sudo 启动我的应用程序,这很好,但我不能指望普通用户能够在 shell 中执行 sudo。

正如我所说,这是一个很好的方法,在过去的 6 到 8 年里一直有效……但现在失败了。任何人有任何技巧或方法来解决它?

有一次……我不知道为什么,我看到 OSX 安全弹出窗口指示“java”不是受信任的应用程序,我的设置只允许应用程序商店应用程序。但那只发生过一次……而且很奇怪。我点击确定,它消失了。我想也许 java 已被隔离,所以我执行了清除该标志的命令:
xattr -rd com.apple.quarantine /path/to/the/binary/java

但这并没有什么区别。我确信这是 Catalina 中新的安全功能,让事情变得困难……但我不知道为什么或如何解决它们。它是一个通过 app.command 文件启动的 java 应用程序,它在机器上找到 java 然后启动它……默认在它自己的子文件夹中找到一个本地副本。

最佳答案

检查项目的沙箱设置。 App Sandbox应在权利文件中设置为 false。
沙盒功能可防止您的应用提升应用中的权限。
引用:https://developer.apple.com/app-sandboxing/

关于java - OS X Catalina 以管理员权限破坏了 osascript 启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58318649/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com