Microsoft udostępnia polecenia PowerShell dla wszystkich ról i funkcji, w tym Active Directory. Dla samego Active Directory dostępnych jest ponad 900 cmdletów PowerShell, które mogą być używane do uzyskiwania dostępu i zarządzania informacjami z kontrolerów domen, serwerów katalogów globalnych, domen i lasów Active Directory. Niezależnie od twoich wymagań, masz dostępne cmdlety PowerShell., Na przykład, jeśli chcesz odczytać użytkowników Active Directory w domenie Active Directory, możesz użyć cmdletu Get-ADUser PowerShell. Podobnie, jeśli chcesz manipulować członkostwem w grupie Active Directory lub uzyskać listę utworzonych witryn Active Directory, możesz użyć odpowiednio Get-ADGroupMembers I Get-ADSite. W tym artykule pokażemy, w jaki sposób za pomocą PowerShell można gromadzić członkostwo grupy Active Directory w grupach zabezpieczeń.
przed programem PowerShell nie było bezpośredniego sposobu zbierania członkostwa w grupie Active Directory., Aby dowiedzieć się, kto należy do grupy zabezpieczeń usługi Active Directory lub sprawdzić członków więcej niż jednej grupy zabezpieczeń, trzeba było sprawdzić ręcznie za pomocą narzędzia GUI lub zaprojektować skrypt VB, aby sprawdzić członkostwo w grupie. Zadanie sprawdzania przynależności do grup zabezpieczeń zostało drastycznie zmienione w PowerShell. Teraz z pojedynczym cmdletem PowerShell możesz uzyskać członkostwo w grupie określonej lub wielu grup zabezpieczeń. Możesz tylko użyć polecenia Get-ADGroupMember PowerShell cmdlet., Get-ADGroupMember PowerShell cmdlet wymaga podania nazwy grupy do sprawdzenia członków. Na przykład poniższy cmdlet wyświetli listę członków grupy administrators security group w środowisku Active Directory.,
Get-ADGroupMember –Identity „Administratorzy”
Podobnie, jeśli chcesz sprawdzić przynależność do grupy innej grupy zabezpieczeń, powiedzmy „Administratorzy produkcyjni”, wystarczy wykonać poniższe polecenie:
Get-ADGroupMember –Identity „Administratorzy produkcyjni”
jak widać w powyższych poleceniach, sprawdzenie członkostwa grupy Active Directory w poszczególnych grupach zabezpieczeń nie zajmuje więcej niż kilka sekund., Jeśli musisz codziennie sprawdzać członkostwo grupy Active Directory w grupach zabezpieczeń administratora, możesz po prostu dodać powyższe polecenie do pliku wsadowego, a następnie wykonać je ręcznie lub wykonać za pomocą zaplanowanego zadania. Na przykład, dodanie poniższych poleceń do pliku wsadowego da Ci wyniki w pliku CSV. Załóżmy, że utworzyłeś plik wsadowy lub CMD o nazwie GetMembers.CMD i dodał wiersze poniżej:
jak widać, powyższe polecenia po wykonaniu zwrócą listę członków w określonej grupie i zapiszą dane wyjściowe w odpowiednich plikach., Podczas gdy polecenie zapewnia prosty sposób na zbieranie członków z grup, to podejście wymaga więcej czasu i w przypadku, gdy trzeba dodać więcej grup jako część powyższego pliku twój skrypt będzie długi i wtedy będziesz musiał ręcznie sprawdzić wszystkie pliki CSV członków grupy, aby wykonać dowolną kontrolę, którą chcesz zrobić w ramach tego ćwiczenia.,
tworzenie raportów członkostwa w grupie Active Directory
Załóżmy, że chcesz utworzyć raport dotyczący członkostwa w grupie Active Directory wybranych grup zabezpieczeń i zapisać dane wyjściowe w łatwym do odczytania formacie, a następnie sprawdzić dane wyjściowe za pomocą programu Microsoft Excel lub podobnego narzędzia. Dodanie trochę więcej pracy przez napisanie skryptu PowerShell może pomóc w wygenerowaniu raportu o członkostwie w grupie. Załóżmy, że mamy cztery grupy zabezpieczeń o nazwie „BDOAdmin1″,” BDOAdmin2″,” BDOAdmin3 „i”BDOAdmin4”. Załóżmy, że mamy plik o nazwie CheckGroups.,TXT i jest przechowywany w C:\Temp folder. Na C:\Temp\CheckGroups.TXT przechowuje nazwy grup, które chcesz sprawdzić za pomocą skryptu PowerShell. Po przygotowaniu dwóch plików i zapisaniu ich w C:\Temp katalog, wykonaj skrypt PowerShell poniżej. Skrypt utworzy raport zawierający nazwę wyróżniającą i nazwę grupy, do której należy dany członek.,
gdy powyższy skrypt zostanie wykonany z komputera PowerShell, który ma dostęp do domeny Active Directory, wygenerowany zostanie raport w pliku CSV, jak pokazano na poniższym zrzucie ekranu:
Podsumowując go
w tym artykule podaliśmy kilka poleceń, których możesz użyć, aby uzyskać członków grup zabezpieczeń za pomocą polecenia Get-ADGroupMember PowerShell cmdlet, a także skrypt PowerShell, który może być użyty do zebrania członków określonych grup zabezpieczeń i przechowywania danych wyjściowych w pliku CSV do celów sprawozdawczych., Jeśli chcesz generować raport co tydzień lub tak, możesz zaplanować skrypt na serwerze, który ma dostęp do domeny Active Directory.
wyróżniony obraz: