Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как получить ID сетевого пользователя, при обращении к шарам.  (Прочитано 22948 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Detsel
Гость
« : 01-04-2005 07:46 » 

Заранее извините если завел тему не там=) в общем вопрос в следующем. Есть сеть. Одноранговая или с доменной структурой. Есть расшареные папки на различных компах. Есть драйвер который перехватывает обращения локального пользователя и определяет его ID. Можно ли получить ID пользователя обращающегося к этим папкам(файлам в них) по сети??? Если да то как это сделать. Хотя бы основные понятия. даже не знаю с чего начать. Спасибо.
Записан
Серж
Гость
« Ответ #1 : 01-04-2005 14:45 » 

Detsel, если речь идет о Windows, то там есть политика аудита, настроить которую для данной папки или файла можно с помощью соответствующих диалогов в оболочке Windows, щелкнув по файлу или папке, можно выбрать закладку "Безопасность" и затем "Аудит". Можно сделать это и программно с помощью соответстующих функций, работающих со структурами безопасности, если есть соответствующие права. А посмотреть результаты можно, открыв журнал безопасности. Из программы это тоже можно сделать, так как все системные журналы - обычные текстовые файлы. Правда придется при этом организовывать какой-нибудь поиск.
Записан
Detsel
Гость
« Ответ #2 : 04-04-2005 06:47 » 

Спасибо=) Я немножко не это имел в виду =) Вопрос естессно задал как попало, поэтому результата не получил=( Попробую исправиться. Дело в следующем. Есть комп, одиноко стоящий дома и не имеющий выхода в сеть. Пользователь залогинившийся на этот комп, в винду NT и выше, пытается получить доступ к какому нить объекту винды(файлик, реестр и тд). Винда смотрит его SID и в соответствии с различными правилами запрещает или разрешает доступ. этот SID берется из локальной базы SAM. Следующая ситуация. Комп в домене. В этом случае при удачной аутентификации SID пользователя берется из SAM на контроллере домена. При попытке доступа этого юзверя на какой нить другой хост, например хост2, этот самый хост2 запрашивает с контроллера SID этого юзверя и в соответствии с доменными правилами разрешает или запрещает доступ. Вопрос вот в чем. Если есть сеть но нет домена. SID какого пользователя проверяется при доступе с одной машины на другую, и где он хранится???
Записан
Chaa
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 04-04-2005 07:10 » 

Если нет домена, хост1 пытается авторизоваться на хост2 с помощью имени пользователя и пароля, которые хранятся в SAM на хост2. Соответственно и SID будет из SAM хост2.
Записан
Detsel
Гость
« Ответ #4 : 04-04-2005 07:19 » 

так вот не понятно. Если на хосте 2 нет аккаунта пользователя который пытается логинится с хоста 1?? Что тогда??? SID какого пользователя получает система при доступе к сетевым шарам хоста 2 когда на них лезет юзверь User1 с хоста1???
Записан
Chaa
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 04-04-2005 07:25 » 

Если такого пользователя нет или авторизоваться не удалось, хост1 будет пытаться авторизоваться на хост2 как guest, и соответственно его SID и будет использован.
Записан
Detsel
Гость
« Ответ #6 : 04-04-2005 07:33 » 

То есть получается что на хосте2 будет использован SID Guest'а с хоста1??? И как это получается??? если на хосте2 нет такого пользователя и нет для него политик то соответственно никакого доступа не будет. И потом, как будет передаваться SID с хоста 1 на хост 2??? в открытом виде?? ведь если нет домена то и нет никакой шифрации.
« Последнее редактирование: 20-12-2007 20:34 от Алексей1153++ » Записан
Chaa
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 04-04-2005 08:35 » 

На хост2 будет использоватся SID учетной записи guest с хост2. Собственно SID этот везде одинаковый S-1–5–7, потому что учетная запись guest является встроенной, и ее удалить нельзя. Можно только отключить.
SID пользователя не является секретной информацией - это просто идентификатор пользователя, группы, компьютера или чего-нибудь еще.
Записан
Detsel
Гость
« Ответ #8 : 04-04-2005 08:57 » 

Гуд! Теперь вроде бы все проясняется. Значит если с хоста1 мы пытаемся зайти в шару на хосте2 мы имеем права Гостя на хосте2. Но если на хосте2 завести Пользователь1 и установить ему права только на доступ из сети, а остальных удалить из доступа по сети то мы должны будем залогинится при удаленном доступе и SID соответственно будет Пользователя1, так?Не понял
Записан
Chaa
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #9 : 04-04-2005 09:31 » 

По порядку:
Пусть пользователь1 на машине хост1 открыл проводник и пытается подключится к хост2.
1) если на хост2 есть пользователь с именем пользователь1 и тем же паролем, подключается как пользователь1, иначе
2) подключается как guest, если не удалось то
3 спрашивает имя пользователя и пароль для подключения к хост2 и подключается с указанными данными, если не удалось, то
4 отказано в доступе.
Записан
Detsel
Гость
« Ответ #10 : 04-04-2005 09:40 » new

Спасибо тебе Chaa =))) Разложил все по полкам! =)))) Еще раз спасибо!
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines