登录LAN java中计算机的用户名

时间:2011-08-09 07:14:06

标签: java login username

我使用System.getProperty(“user.name”)获取了我的计算机的登录名。但是,我需要使用InetAddress获取其IP已经获得的其他计算机的登录。我该怎么做?显示系统。所有IP的属性都不会显示其登录名。

提前致谢!

所有PC都在Linux上运行。我正在寻找LAN上其他机器上当前登录的用户。

我正在ping我的局域网上的所有机器,看看机器是否还活着。我得到它的IP,我也希望得到它的登录名。

2 个答案:

答案 0 :(得分:3)

如果你能够“开箱即用”,这将是系统中一个巨大的安全漏洞。考虑一下。然后我们甚至没有解决多个用户登录计算机的问题。

因此,如果不进一步澄清,这个问题就太模糊了。

例如,您可以使用ssh以安全的方式登录计算机,并查询登录用户列表。您需要生成ssh密钥对并使用一些可以以编程方式登录并为您发出命令的Java终端库。

我们实际上有一个这样的产品(用于不同的目的),我们使用3rd party SSH library为我们做了艰苦的工作。

或者,作为替代方案,您可以实现并安装您可以连接的自己的“登录用户”守护程序,也许将其安装为Web应用程序,但是,您需要使用适当的身份验证来制作您的服务可以安全使用。然而,后一种解决方案要求在您要查询的每台计算机上运行应用程序或至少一台Web服务器。

答案 1 :(得分:0)

最好的解决方案是安装一个可以监听机器上固定端口的软件。获得机器的地址后,程序可以收集信息并将其发回。除此之外,由于各种明显的原因,没有这样的功能存在。

然而,即使这个解决方案也不保证列出的IP上会有一个监听套接字(软件不能保证正在运行),所以如果没有关于你究竟要做什么的更多信息,这个答案是这个问题模糊不清。