在我工作的项目上,我们在几个不同的服务器上运行GUI应用程序。由于他们的用户界面相似,我正在研究将他们的OMI组合成一个统一的界面。目前,这些应用程序都可以通过VNC远程查看。我计划通过让主显示器在封面下运行多个VNC查看器并围绕这些VNC会话包装接口以使它们看起来像本机应用程序来利用这一点。
我正在寻找构建单点登录解决方案的指针。我希望消除每个应用程序的个人登录,而只是让用户登录统一显示。当他们这样做时,他们将自动登录到每个单独的应用程序。
我的调查指向了 Kerberos 和 GSSAPI 。 Kerberos的基于票证的机制似乎非常适合这项任务。
一个棘手的问题是这些应用程序始终在运行。当用户登录时,我需要统一显示以某种方式“告诉”它们。它不像普通的Kerberized程序,它们将在启动时执行Kerberos登录。
如果我使用Kerberos,我不知道如何将票证转移到各种应用程序服务器。有转移它们的标准方法吗?我只是使用“scp”或其他东西吗?或者我是否开发自己的基于套接字的网络协议,让Java程序相互连接并以这种方式转移票证?
但是,我不想让细节陷入困境。我甚至欣赏一般的想法,比如“你考虑过X技术?”或者“尝试XYZ而不是VNC,它会为你做这件事。”我会在这里编辑答案和说明......
您是否认为必须进行某些身份验证并且VNC仅将视图导出到正在运行的程序,因此VNC会话无法传输票证?
是的,的确如此。 Java + VNC就是我们现在所拥有的。如果有更好的远程查看应用程序的方法,我可以更换VNC。没有重写它们,就是这样。理想的解决方案是将它们分成不同的客户端和服务器部分,并将所有GUI代码放入客户端,但这是5星级难度,我需要1星或2星。
是的,我考虑过了。他们要么看到相同的应用程序,要么将被禁止。对于这个特定的系统来说,这两种解决方案都没问题,所以这不是什么大问题。您是否考虑过两个用户同时登录时的情况?他们会看到相同的应用程序吗?或者这会被禁止吗?
您是否考虑过在本地主机上使用X Server并导出客户端应用程序窗口?
是的,这会很棒。这可以通过已经运行的应用程序完成吗?我们必须在这些应用程序启动后连接这些应用程序。当某人激活中央观众时,我无法按需启动它们。
答案 0 :(得分:3)
RealVNC Enterprise Edition支持AD身份验证(每台导出桌面约50美元)。也许你可以简单地让人们以这种方式进入应用程序。 FreeNX支持PAM身份验证,因此您可能会与winbind一起破解某些内容,尤其是当您的linux dist使AD设置变得容易时。
最后一件事是在VirtualBox中运行您的应用,可以通过RDP在{{3}}内运行。你可以headless mode从而赢得胜利。这也具有通过远程桌面在客户端进行窗户友好的优点,远程桌面已预先安装或可随时用于Windows。
答案 1 :(得分:2)
哦,我会尝试开始这个列表。你考虑过......
编辑:更多注意事项: