Jak wyodrębnić informacje z Active Directory (nazwa użytkownika, imię, nazwisko) i wypełnić tabelę SQL z wynikami?Dane usługi Active Directory do tabeli SQL
Dziękujemy
Scott
Jak wyodrębnić informacje z Active Directory (nazwa użytkownika, imię, nazwisko) i wypełnić tabelę SQL z wynikami?Dane usługi Active Directory do tabeli SQL
Dziękujemy
Scott
Istnieją różne sposoby, aby to zrobić. Używam PHP do pobierania danych z naszego Active Directory. Spójrz na rozdział "Lightweight Directory Access Protocol" w dokumentacji PHP. Łatwo jest również wypełnić bazę danych za pomocą PHP, np. MySQL lub Microsoft SQL Server.
Jeśli korzystasz z .NET 3.5, użyłbym nowej przestrzeni nazw System.DirectoryServices.AccountManagement
.
Dowiedz się więcej o tym tutaj:
Managing Directory Security Principals in the .NET Framework 3.5
W zasadzie, można by założyć pojemnik (a PrincipalContext
), a następnie wyliczyć użytkowników, którzy mają do czynienia. Przeprowadź pętlę nad tymi danymi i wyodrębnij potrzebne informacje, a następnie wprowadź je do programu SQL Server.
Sposób, w jaki to zrobić na LARGE środowiska AD:
Możemy pobrać 145k użytkowników, 80k grup, 130k komputerów z 10 domen w około 2 godziny od początku do końca. Obejmuje to pobieranie dokładnych informacji LastLogon dla użytkowników i komputerów, co wymaga uderzenia każdego kontrolera domeny. Bez tego proces trwa około 30 minut.
Jeśli wystarczy go w SQL, używam poniższy kod
INSERT...
SELECT A.SAMAccountName, A.Mail, A.displayName FROM
(SELECT * FROM OpenQuery(ADSI, 'SELECT title, displayName, sAMAccountName, givenName, telephoneNumber, facsimileTelephoneNumber, sn, userAccountControl,mail
FROM ''LDAP://domain.ro/DC=domain,DC=ro'' where objectClass = ''User''')
WHERE (sn is not null) and (givenName is not null) and (mail is not null))A
gdzie ADSI jest połączony serwer stworzony na podstawie tego: http://msdn2.microsoft.com/en-us/library/aa772380(VS.85).aspx
Co (programowanie) język używasz /dążyć?? –