Вернуться   Форум программистов > Форум Программирование > Форум Программирование

Программирование

Общие вопросы по программированию

Ответ
 
Старый 10.02.2007, 21:42   #1
AvnAvn
Местный
 
Регистрация: 21.01.2006
Сообщений: 132
AvnAvn пока не определено
По умолчанию Чтение атрибутов пользователя (Имени, фамилии) из ActiveDirectory

<SPAN id=ctl03_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ct l04_lblFullMessage>Дано: Login пользователя
Требуется: найти Фамилию, Имя пользователя в ActiveDirectory.
Для получения доступа к ActiveDirectory откомпилировал и зарегистрировал DLL с функцией getUser(...), параметры получает, но не все.
Итак, текст функции в DLL:
Function getUser(ByVal strCnName As String, ByVal DC0 As String, ByVal DC1 As String, ByVal DC2 As String) As Recordset
'Получение информации о пользователе strCnName
On Error GoTo ErrorHandler
'Соединение с Active Directory
Dim cn As New Connection
cn.CursorLocation = adUseClient
cn.Provider = "ADsDSOObject"
cn.Open
'Установка набора записей
Dim rs As New Recordset
Set rs.ActiveConnection = cn
'выполнение запроса
Dim str As String
str = "select cn, sAMAccountName, company, title, telephoneNumber" & " from 'LDAP://CN=" & strCnName & ",CN=" & DC0 & ",DC=" & DC1 & ",DC=" & DC2 & "'" '-к этой строке запроса вернемся чуть позже.
rs.Source = str
rs.Open
'отсоединение набора записей
Set rs.ActiveConnection = Nothing
cn.Close
'Возвращение записи
Set getUser = rs
Exit Function
ErrorHandler:
Err.Raise Err.Number, Err.Source, "GetUser from .dll: " & Err.Description
End Function
Пишу программу на VBScript (выбор языка объектного программирования в принципе неважен):
Set obj = Server.CreateObject("asp0202.tstweb")
-здесь имя DLL и имя класса, которому принадлежит функция
User = "Administrator"
CN0 = "Users"
CN1 = "admkrs"
CN2 = "ru"
Set RsUserInfo = obj.getUser(User, CN0, CN1, CN2)
Response.Write(" RsUserInfo.Fields.Count:"""+trim(RsUserInfo.Fields .Count)+"""
")
For i=0 to RsUserInfo.Fields.Count-1
Response.Write(" "&trim(i)&":"""+RsUserInfo.Fields(i)+"""
")
next

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

Если в DLL в функции getUser написать запрос, в котором указать * вместо конкретных имен полей,
то Recordset возвращает только одно поле:
RsUserInfo.Fields.Count = 1 созначением:
<STRONG><FONT color=#336633>RsUserInfo.Fields(0)="ldap://CN=Administrator,CN=Users,DC=admkrs,DC=ru/ LDAP://CN=Administrator,CN=Users,DC=admkrs,DC=ru"</STRONG>

Вопрос: возможно ли запросить сразу все поля атрибутов пользователя (что-то вроде "select * From LDAP//..."-но этот запрос точно не возвращает всех записей)?
Если нет, то подскажите имена полей атрибутов пользователя, которые возможно прочитать в ActiveDirectory (Фамилия, имя, отчество и другие)</SPAN>
AvnAvn вне форума  
Старый 16.02.2007, 12:26   #2
AvnAvn
Местный
 
Регистрация: 21.01.2006
Сообщений: 132
AvnAvn пока не определено
По умолчанию RE: Чтение атрибутов пользователя (Имени, фамилии) из ActiveDirectory

Вопрос снят, помог LdapBrowser
AvnAvn вне форума  
Старый 16.02.2007, 12:28   #3
AvnAvn
Местный
 
Регистрация: 21.01.2006
Сообщений: 132
AvnAvn пока не определено
По умолчанию RE: Чтение атрибутов пользователя (Имени, фамилии) из ActiveDirectory

Вопрос снят, решается выбором порта в Ldap-запросе
AvnAvn вне форума  
Ads
Ответ
Опции темы

Похожие темы
Тема Автор
Программирование Как узнать используемый по умолчанию Charset?
Как узнать используемый по умолчанию Charset (когда выбираешь шрифт в диалоговом окне есть набор символов - по умолчанию кирилический). Т.е. какой кодовый набор(страница) для Windows родной
Alextt
Программирование отправка содержимого файла по сети
как по локалке отправить содержимое файла на другой комп используя командную строку... Желательно нет сендом... Хотя моно и другим способом.... Кто подскажет?
platonenkonikita
Как проверить, отключена ли учетная запись пользователя в ActiveDirectory? Программирование
<SPAN class=itemCommentText> Работаю с LDAP-запросом пользователей Active Directory <STRONG>Как проверить, отключена ли учетная запись пользователя в ActiveDirectory?</STRONG> Const...
AvnAvn
Хранение кода в базе данных - как Программирование
Хочу хранить код (модуль) в базе данных. Код представляет собой набор функций. Я передаю в вычислитель ссылку на коллекцию глобальных переменных и запускаю одну из функций модуля, установив ей...
fixin
Алгоритм построения библиотеки классов по описанию сложных объектов. Программирование
Имееца сложный объект состоящий из множества вложенных объектов, которые, в свою очередь, так же состоят из вложенных объектов. Т.е. есть описание агрегации. Необходимо получить библиотеку классов...
FateFlex
Программирование Как изменить изображение при старте ПК?
Народ, знаете когда вы включаете комп, то у вас ещё перед загрузкой системы появляется изображение какой либо фирмы, у меня например Intel. Так вот подскажите как его поменять plz
vIRisium



Текущее время: 11:58. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.

Рейтинг@Mail.ru