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

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Узнать авторизовался в домене человек или локально зашёл и работает на компе.  (Прочитано 11246 раз)
0 Пользователей и 1 Гость смотрят эту тему.
malor
Опытный

ru
Offline Offline

« : 14-11-2012 10:20 » 

Как установить данный факт?

Delphi XE
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #1 : 14-11-2012 13:14 » 

Попробуй через GetDomainName.
http://msdn.microsoft.com/en-us/library/exchange/ms992621%28v=exchg.65%29.aspx
Либо это имя компа, либо имя домена.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
sss
Специалист

ru
Offline Offline

« Ответ #2 : 14-11-2012 14:57 » 

RXL, он имеет ввиду тип сессии? Наверное...
Вообще вопрос малость некорректен - ну авторизовался в домене и работает локально. В чём подвох?
Записан

while (8==8)
malor
Опытный

ru
Offline Offline

« Ответ #3 : 14-11-2012 17:17 » 

На компе в разделе
Компьютер -> Свойства  -> Дополнительные параметры системы -> Имя компьютера -> Изменить... 
прописано что относится к домену такому-то.

Но когда человек входит в сеанс, то в филде пользователя он может указать варианты
1) MYDOMAIN\SOMEUSER
2) SOMEUSER


В первом случае мы доменно залогинимся, а во втором локально.
sss, весь смысл в том, будут ли у нас права, что бы программно обратиться (1-й случай) за
какой-нибудь инфой к контроллеру домена или нет (2-й случай).
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #4 : 14-11-2012 18:03 » 

Допустимо: MYDOMAIN\SOMEUSER, где MYDOMAIN=HOSTNAME
Это еще не говорит, что ты в домене.

Права доступа определяются в самом контроллере домена. Если компьютер в домене, можно ссылаться на его имя.
« Последнее редактирование: 14-11-2012 18:10 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
malor
Опытный

ru
Offline Offline

« Ответ #5 : 14-11-2012 18:26 » new

Что значит ссылаться ?
Записан
RXL
Технический
Администратор

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

WWW
« Ответ #6 : 14-11-2012 20:08 » 

Ты как права доменного пользователя задаешь? А права доменного группы? Тоже самое с хостом в домене. В AD они находятся в DOMAINNAME/Computers.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
sss
Специалист

ru
Offline Offline

« Ответ #7 : 15-11-2012 01:11 » 

malor, кажется понял что тебе нужно. Простое решение для текущего пользователя..

1) Вызываешь функцию GetUserNameEx с параметром NameSamCompatible.
2) Разбираешь имя (напр. Engineering\JSmith) на две  компоненты Engineering и JSmith.
3) Вызываешь функцию GetComputerNameExA  с параметром ComputerNameNetBIOS.
4) Сравниваешь полученное имя компьютера на шаге 3 с Engineering.
 4.а) Если сходятся - значит использована база SAM локального компьютера.
 4.б) Если не сходятся - значит использована база безопасности домена.
Записан

while (8==8)
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines