Логин Имя пользователя компьютеров в локальной сети Java - PullRequest
0 голосов
/ 09 августа 2011

Я получил логин моего компьютера, используя System.getProperty ("user.name"). Однако мне нужны логины других компьютеров, чьи IP-адреса я уже получил, используя InetAddress. Как мне это сделать? Отображение системы. свойства всех IP-адресов не отображают их логин.

Заранее спасибо!

Все ПК работают на Linux. И я ищу зарегистрированного пользователя на других машинах в локальной сети.

Я пингую все машины в моей локальной сети, чтобы проверить, жива ли машина. Я получил его IP, и я хочу также получить его логин.

Ответы [ 2 ]

3 голосов
/ 09 августа 2011

Если бы вы смогли сделать это «из коробки», это было бы огромной дырой в системе безопасности.Просто подумай об этом.И тогда мы даже не дойдем до проблемы нескольких пользователей, вошедших в систему на машинах.

Так что без дальнейших разъяснений этот вопрос слишком расплывчат.

Вы можете войти в системумашины безопасным способом, например, с помощью ssh, и запрашивать список зарегистрированных пользователей.Вам необходимо сгенерировать пары ключей ssh ​​и использовать некоторую библиотеку терминалов Java, которая может выполнять вход в систему программно и выдавать команды за вас.

У нас фактически есть продукт, который работает так (для разных целей), и мы используем сторонняя библиотека SSH для выполнения тяжелой работы за нас.

Или, в качестве альтернативы, вы можете внедрить и установить свой собственный демон "вошедших в систему пользователей", к которому вы можете подключиться,возможно, установите его как веб-приложение, но опять же, вам нужно использовать правильную аутентификацию, чтобы сделать вашу службу безопасной в использовании.Это последнее решение, однако, требует, чтобы приложение или хотя бы веб-сервер работали на каждой машине, к которой вы хотите выполнить запрос.

0 голосов
/ 09 августа 2011

Наилучшим возможным решением было бы установить программное обеспечение, которое будет прослушивать фиксированный порт на машине.Когда у вас есть адрес машины, программа может собрать информацию и отправить ее обратно.Кроме этого, по разным и очевидным причинам такой функции не существует.

Однако даже это решение не гарантирует наличия прослушивающего сокета на указанном IP-адресе (не гарантируется, что программное обеспечение будет), поэтому без дополнительной информации о том, что именно вы пытаетесь сделать, этот ответ столь же расплывчат, как и вопрос.

...