2010-12-20 81 views
2

我正在使用Mac OS X上的安全代理插件,并希望允许用户执行切换用户(与切换用户的按钮方式相同当你锁定你的账户时显示)。如何以编程方式在macosx上执行切换用户

经过一番研究,我发现this thread从以下命令行的解决方案:

/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend 

启动此命令行中,当用户登录时运行良好。然而,在安全客户端插件的情况下。 :“安全代理运行的权限有限,因此用户必须使用图形用户界面进行物理存在才能进行身份验证。图形用户界面元素不能通过命令行界面使用,例如终端应用程序或安全外壳(ssh)远程会话“

因此,命令行调用无法执行。有没有其他解决方案来模拟切换用户,例如发送苹果事件?我没有找到任何其他解决方案。

在此先感谢您的任何想法。 致以问候

回答

0

尝试制作一个LaunchAgent,为每个用户运行。在您的安全代理插件中,连接到当前控制台用户的代理(例如使用BSD套接字),并告诉它运行CGSession命令。

相关问题