SpiderPlus
|
|
1 | |
работа с Active Directory из ASP или ASP.NET02.11.2008, 12:23. Показов 3628. Ответов 4
Метки нет (Все метки)
надо для себя, как администратора, сделать страничку, которая позволяла бы считывать состав группы пользователей из AD и добавлять/удалять из этой группы пользователей.
я понимаю, что для этого надо использовать adsi, но так как раньше подобным (то есть с AD) не занимался, то хочется увидеть работающие примеры подобного кода на ASP или ASP.NET |
02.11.2008, 12:23 | |
Ответы с готовыми решениями:
4
Active Directory и ASP.NET (C#) Создание юзерей в Active Directory посредством ASP скрипта Что выбрать ASP.NET или ASP.NET Core ? На чем лучше писать приложения: ASP или ASP.NET? |
1 / 1 / 0
Регистрация: 21.06.2007
Сообщений: 654
|
|
02.11.2008, 14:50 | 2 |
Если разберешься, (я сам уже с трудом разбираюсь чего я тут понаписал ) - давно это было) то вот такой код 100% рабочий, пользуюсь каждую неделю почти.
<%@ Language=VBScript %> <%Response.Buffer=false on error resume next '//////////////////////////////////////////////////////////////////////////// 'служебная страница для перевода информации о персонах их Active Directory 'в базу данных '////////////////////////////////////////////////////////////////////////// 'Соединяемся с базой данных Dim connIntranet,rsIntranet,rsIntranet1 set connIntranet=Server.CreateObject ('ADODB.Connection') 'открываем объект connIntranet.Open 'Provider=sqloledbata Source=MORPHEUSONTARIO;Initial Catalog=intranet;User Id=Dima;Password=;' set rsIntranet=Server.CreateObject ('ADODB.Recordset') set rsIntranet1=Server.CreateObject ('ADODB.Recordset') 'соединяемся с ActiveDirectory set connAD=server.CreateObject('adodb.connection') connAD.provider='ADsDSOObject' connAD.open 'ADSI' set rsAD=server.CreateObject('adodb.recordset') rsAD.open ''LDAP://neo.gskaudit.spb.ru/OU=Группа КУБ,DC=gskaudit,DC=spb,DC=ru' where objectCategory='user'',connAD Dim user_exists_in_db user_exists_in_db=false do while rsAD.EOF=false 'цикл по всем групам в AD set user=GetObject(rsAD(0)) 'получим объект типа group rsIntranet.Open 'SELECT * FROM tblPersons WHERE login_name='' & user.samaccountname & ''',connIntranet if rsIntranet.BOF=true and rsIntranet.EOF=true then 'user-а нет в базе данных department_id=-1 'вытаскиваем id депарамента из базы rsIntranet1.Open 'SELECT * FROM tblDepartments',connIntranet do while rsIntranet1.EOF if Instr(1,user.distinguishedname,rsIntranet('ad_object'))<>0 then department_id=rsIntranet('department_id') end if rsIntranet.MoveNext () loop rsIntranet1.Close() 'добавляем user-a в базу Dim strSQL connIntranet.Execute 'execute new_person ' & department_id & ','' & user.samaccountname & '','' & user.distinguishedname & '','' & user.fullname & ''' connIntranet.Execute 'INSERT INTO tblNews (division_id,author_id,header,published_at) VALUES (5,164,'В нашей компании появился новый сотрудник - ' & user.fullname & '',GETDATE())' Dim newsID rsIntranet.Open 'SELECT @@IDENTITY',connIntranet newsID=rsIntranet(0) rsIntranet.Close() 'регистрируем область действия новости 'для данной новости - это Группа КУБ connIntranet.Execute 'INSERT INTO tblNewsDepartments (news_id,department_id)' & _ ' VALUES (' & newsID & ',12)' Response.Write 'Пользователь <b>' & user.samaccountname & '</b>' & 'добавлен в базу ' else 'user есть в базе данных end if rsIntranet.Close() rsAD.MoveNext () loop %>
0
|
SpiderPlus
|
|
02.11.2008, 14:57 | 3 |
спасибо, сейчас попробую...
|
0 / 2 / 3
Регистрация: 27.03.2012
|
|
01.12.2008, 19:51 | 4 |
в строке 'LDAP://neo.gskaudit.spb.ru/OU=Группа КУБ,DC=gskaudit,DC=spb,DC=ru' что такое 'OU', 'DC' и пр.? Можешь подробнее подсказать?
0
|
1 / 1 / 0
Регистрация: 21.06.2007
Сообщений: 654
|
|
02.12.2008, 09:44 | 5 |
DC - domain controller
OU - organizational unit
0
|
02.12.2008, 09:44 | |
02.12.2008, 09:44 | |
Помогаю со студенческими работами здесь
5
Отправка email сообщения с аттачментом (ASP или ASP.NET) Как средствами ASP или ASP.NET преобразовать страницу html в PDF документ? ASP.NET Core или ASP.NET MVC Что лучше ASP или ASP.NET? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |