Дразнить Active Directory для разработки вне сайта - PullRequest
3 голосов
/ 03 октября 2009

Я получил клиентское приложение, использующее SQL Server 2005, которое содержит множество представлений с присоединениями к их активному каталогу. Они делают это, чтобы обеспечить то, что люди могут видеть в базе данных. Мне нужно иметь возможность запускать эти представления из моей среды удаленной разработки, и я ищу предложение, как это сделать.

Я не могу продублировать их сервер AD, т. Е. Запустить его на виртуальной машине.
Я думаю, что я мог бы переписать представления, удалив соединения с AD, но это, кажется, талия времени.

Я прочитал о Службах Active Directory облегченного доступа к каталогам в этом вопросе SO , может ли это создать среду для запроса?

Я не склонен к настройке виртуальной машины со службами Active Directory, но это может привести к значительному увеличению времени настройки, когда более простой сервер LDAP может работать так же хорошо (пожимает плечами).

Вот пример запроса, используемого для доступа к AD (большинство полей не используются, но это работа для другого дня):

...   
FROM    OPENQUERY(ADSI, 
   'SELECT  Sn, givenName, userPrincipalName, Name, company, physicalDeliveryOfficeName,
    department, streetAddress, L, St, postalCode, Co, Mail, telephoneNumber,
    facsimileTelephoneNumber, manager, samaccountname, extensionattribute1    
    FROM ''LDAP://OU=EPPPPUsers, DC=EPPPP, DC=COM''
    WHERE objectClass=''user'' OR objectClass=''contact''') AS rs1    
LEFT OUTER JOIN     
  (SELECT  'EPPPP\' + SUBSTRING(userPrincipalName, 0, CHARINDEX('@', serPrincipalName)) AS UserName, CN    
FROM     
  OPENQUERY(ADSI, 'SELECT userPrincipalName,    CN    
  FROM ''LDAP://OU=EPPPPUsers, DC=EPPPP, DC=COM''') AS Rowset_1) AS mUsr    
    ON mUsr.CN = LEFT(SUBSTRING(manager, CHARINDEX('=', manager) + 1, LEN(manager)), CHARINDEX(',', SUBSTRING(manager, CHARINDEX('=', manager) + 1, LEN(manager))) - 1)

Ответы [ 2 ]

8 голосов
/ 03 октября 2009

Можете ли вы скопировать необходимое содержимое AD с ADAM ? Я использовал его как на XP, так и на 2003.

1 голос
/ 09 октября 2009

Похоже, что лучше всего это сделать, попросив их экспортировать объекты и значения, представляющие интерес для файла LDIF.

Тогда вы можете (надеюсь, легко) импортировать файл в экземпляр ADAM.

-Джит

...