Конференция "Сети" » indy - имя подключенного пользователя [D6, WinXP]
 
  • dm37 (07.11.08 07:07) [0]
    Подскажите, как определить имя пользователя удаленного компьютера подключенного к серверу TIdTCPServer (AThread.Connection.???).
  • Slym © (07.11.08 07:17) [1]
    например позвонить пользователю и спросить его имя, а заодно и пароль...
  • Сергей М. © (07.11.08 08:28) [2]
    О каком имени пользователя может идти речь. если удаленный компьютер работает под управлением, например, MS DOS ?
  • Сергей М. © (07.11.08 09:37) [3]
  • Anatoly Podgoretsky © (07.11.08 10:54) [4]
    Откуда на другой стороне возмется Ident сервер?
    Это обычно привилегия Никс серверов и то как правило часто закрыто.
  • Сергей М. © (07.11.08 11:03) [5]

    > Откуда на другой стороне возмется Ident сервер?


    Ниоткуда не возьмется, это просто как вариант готового решения.


    > Это обычно привилегия Никс серверов


    Почему ? Есть готовые порты этого демона и на MS-платформы

    Впрочем решать, конечно же, автору - то ли использовать готовое, то ли лепить ручками по сути тоже самое в своём коде
  • Anatoly Podgoretsky © (07.11.08 12:01) [6]
    > Сергей М.  (07.11.2008 11:03:05)  [5]

    Насколько я понимаю, это он хочет получить не имеея доступа к подсоединяющимся компьютерам. Если же речь идет о своих, то может просто передавать имя при работе серверу.
  • Сергей М. © (07.11.08 12:04) [7]

    > Anatoly Podgoretsky ©   (07.11.08 12:01) [6]


    Да шут его знает чего он там хочет..
    Закинул удочку и уснул..
  • dm37 (10.11.08 06:10) [8]
    Извиняюсь, что не мог ответить - вызвали в цех.
    Мне бы хотелось определить имя пользователя Windows (NT) под которым работает программа. Необходимо, чтобы ограничить права при работе данной программы с сервером. Конечно есть возможность определить имя пользователя (клиентом) и отправить его серверу, но хотелось бы пока это не использовать.
  • Сергей М. © (10.11.08 09:12) [9]

    > Мне бы хотелось определить имя пользователя Windows (NT)
    > под которым работает программа


    А если она работает, скажем, под Win9x/Me ?
    Или того хуже - под *nix или даже под MS DOS ?
  • dm37 (10.11.08 10:55) [10]
    Даже лучше - значит пользователь не получит доступ к серверу
  • Сергей М. © (10.11.08 11:03) [11]
    А ты не путаешь ли пользователя WindowsNT с пользователем домена WindowsNT ?
  • Поросенок Винни-Пух © (10.11.08 11:10) [12]
    Подскажите, как определить имя пользователя удаленного компьютера подключенного к серверу TIdTCPServer (AThread.Connection.???).

    Прочитать его из переданных клиентом на сервер данных.
    А предварительно передать это имя из клиента на сервер.
  • dm37 (10.11.08 11:56) [13]
    у нас есть пользователи как в домене, так и нет.
  • Поросенок Винни-Пух © (10.11.08 12:04) [14]
    и у нас есть и что?
  • dm37 (10.11.08 13:07) [15]
    отвечал на

    > Сергей М. ©   (10.11.08 11:03) [11]
    > А ты не путаешь ли пользователя WindowsNT с пользователем
    > домена WindowsNT ?
  • Сергей М. © (10.11.08 13:14) [16]

    > dm37   (10.11.08 13:07) [15]


    А какое отношение твое серверное приложение имеет к пользовательской WinNT-сессии на удаленном хосте, не вошедшим в домен ? Откуда ты берешь список имен пользователей для сравнения ?
  • dm37 (10.11.08 15:06) [17]

    > А какое отношение твое серверное приложение имеет к пользовательской
    > WinNT-сессии на удаленном хосте, не вошедшим в домен ? Откуда
    > ты берешь список имен пользователей для сравнения ?

    существует файл access.lst который содержит список пользователей имеющих доступ (контроль по pc_name,ip,mac,password и хотелось бы пользователя windows) парвметры пользователя контролируются не все, а выборочно (например, pc-name и mac)
  • Сергей М. © (10.11.08 15:41) [18]

    > существует файл access.lst


    Он откуда взялся ?
  • dm37 (11.11.08 09:40) [19]
    Файл access.lst создается мной.

    пример файла access.lst

    ;========================================================================= ======
    ; Файл описания прав доступа пользователя
    ;
    ;   команды:
    ;     deny_all  - запретить доступ всем
    ;     allow_all - разрешить доступ всем пользователям которых нет в списке
    ;     deny      - запретить доступ пользователю
    ;     allow     - разрешить доступ пользователю с указанием файла правил
    ;
    ;   параметры:
    ;     p - проверять имя пользователя и пароль
    ;     u - проверять пользователя компьютера (не поддерживается)
    ;     n - проверять имя компьютера
    ;     i - проверять ip-адрес
    ;     m - проверять mac-адрес
    ;  
    ;   пример использования
    ;     allow nim kip 10.10.100.1 00-18-F3-02-D4-77  full.rul
    ;     allow punim dm:123456 dm_user kip 10.10.100.1 00-18-F3-02-D4-77  full.rul
    ;
    ;   где, full.rul - файл описания прав доступа для пользователя
    ;
    ;   комментарий:
    ;     пароль передается всегда, если пользователь не вводил пароль, то имя
    ;     пользователя и пароль являются пустыми. Если необходимо анализировать
    ;     пароль, то строка описания пользователя с доступом по паролю должна
    ;     находится выше строк содержащих команду allow без пароля.
    ;===============================================================================

    allow_all                                    default.rul
    allow      nm   ATS     00-15-F2-CC-58-94    full.rul
    allow      nm   kas5    00-13-D4-5A-B7-82    kas.rul
    allow      nm   kip     00-18-F3-02-D4-77    full.rul

  • Поросенок Винни-Пух © (11.11.08 09:50) [20]
    Мужики, вы так до иннагурации обамы будете качели качать.

    ЗЫ Имя подключившегося юзера ты в своем idTCPServer никогда не узнаешь, пока клиент его не передаст серверу.
  • Сергей М. © (11.11.08 10:17) [21]

    > dm37   (11.11.08 09:40) [19]


    Откуда взялось содержимое колонок 2, 3, 4 ?
  • dm37 (11.11.08 10:21) [22]
    есть программа "hunter" - (определение подключенных пользователей к PC), написано, видимо одним из участников этого форума (текст очень похож на http://www.delphimaster.ru/articles/netmon/index.html), но к сожалению пока не могу разобраться как использовать в своей программке. В ней определяется имя пользователя Windows подключенного к PC. Думал может кто занимался подобной задачей. Ну нет так нет, будем дальше разбираться.
  • dm37 (11.11.08 10:27) [23]

    > Откуда взялось содержимое колонок 2, 3, 4 ?

    все пишется ручками:
    nm - проверять имя компьютера и mac-адрес
    kip - имя компьютера
    00-18-F3-02-D4-77 - mac-адрес
    full.rul - файл где прописываются команды которые пользователь может выполнять (и другие параметры)

    Эти параметры (кроме full.rul) можно посмотреть в лог файле программы (при неудачном подключении к ней) или определить вручную на PC пользователя
  • Сергей М. © (11.11.08 11:55) [24]

    > не могу разобраться как использовать в своей программке


    Никак.
    Это не имеет ни малейшего отношения к твоей задаче.


    > все пишется ручками


    Ну ты и кулибин)

    А завтра юзер взял да изменил NetBIOS-имя своего компа, а послезавтра ему заменили сгоревшую сет.карту, а послепослезавтра сет.интерфейсу его хоста назначили другой IP-адрес..
    И что, опять со списком своим побежишь по сети делать внеплановую ревизию ?)
  • dm37 (11.11.08 14:21) [25]
    поэтому и контролируются не все параметры, существует также доступ по паролю параметр "p".
    На то она и безопасность, чтобы не пускать кого не надо (а кого не пускает программа, могу посмотреть в логе).
    Если есть другие предложения по безопасности с удовольствием выслушаю и внесу изменения.
  • Сергей М. © (11.11.08 14:37) [26]
    А какую опасность представляет аутентификация пользователя только по комбинации Имя + Пароль ? Почему, на твой взгляд, этого недостаточно с т.з. безопасности, коль скоро потребоваись еще и некие прочие сведения о нем ?
  • dm37 (11.11.08 14:59) [27]
    данную программу (управление ТВ-каналами с бегущей строкой) поставил на компьютер в локальной сетке (идентификация была только по ip), через два дня эту программу уже скопировали (с молчаливого согласия пользователя) и пытались переключать по ночам каналы. Пришлось срочно вводить идентификацию по mac. Понятно, что с паролем безопасность не получилась бы. Дело в том что данную идентификацию надо будет встраивать в более серъезную программу.
  • Сергей М. © (11.11.08 15:07) [28]

    > dm37   (11.11.08 14:59) [27]


    Ерунда какая-то ..


    > Понятно, что с паролем безопасность не получилась бы


    Это почему же ?
    Продажный юзер и пароль бы опубликовал что ли ?
    Ну так это его проблема, а не твоя ..
 
Конференция "Сети" » indy - имя подключенного пользователя [D6, WinXP]
Есть новые Нет новых   [134434   +28][b:0][p:0.003]