Dsquery.exe to narzędzie wiersza polecenia do uzyskiwania informacji o różnych obiektach w domenie Active Directory. Narzędzie jest domyślnie dostępne we wszystkich wersjach systemu Windows Server. Aby używać go w systemach operacyjnych dla komputerów stacjonarnych, musisz zainstalować odpowiednią wersję Narzędzi administracji zdalnej serwera.
Komenda dsquery umożliwia przeszukanie katalogu LDAP w celu znalezienia obiektów spełniających określone kryteria. Jako atrybut polecenia dsquery musisz określić typ obiektu AD, którego szukasz. Na przykład:
- komputer dsquery
- kontakt dsquery
- podsieć dsquery
- grupa dsquery
- dsquery ou
- witryna dsquery
- serwer dsquery
- użytkownik dsquery
- przydział dsquery
- partycja dsquery
- dsquery *
Ostatnie polecenie służy do znajdowania dowolnych obiektów w katalogu AD za pomocą wspólnej kwerendy LDAP.
Aby uzyskać pomoc dotyczącą określonego polecenia, wpisz:
dsquery /?
Rozważ kilka użytecznych przykładów użycia polecenia dsquery w celu pobrania informacji z AD.
Aby znaleźć wszystkie kontrolery domeny w lesie, uruchom polecenie:
Serwer dsquery -o rdn -Forest
Wyświetl wszystkie domeny DC:
Serwer dsquery - domena techcrises.com
Aby wyświetlić wszystkie kontrolery domeny, które również pełnią rolę katalogu globalnego:
Serwer dsquery -domena techcrises.com -isgc
Lista wszystkich kontrolerów domeny w lesie, które pełnią rolę FSMO Schema Master:
dsquery Server -Forest -hasfsmo schemat
Wyświetl wszystkie podsieci na stronie w Londynie:
podsieć dsquery - witryna Londyn
Domyślnie narzędzie dsquery umożliwia wyświetlanie tylko 100 obiektów z AD. Aby użyć polecenia do zwrócenia ponad 100 wyników, użyj -limit argument. The -limit 0 opcja oznacza, że wyniki na wyjściu są nieograniczone.
Wyświetl wszystkie konta użytkowników w domenie:
dsquery * -filter "((objectcategory = person) (objectclass = user) (name = *))" -limit 0 -attr nazwa_konta
Domyślnie polecenie dsquery wyświetla listę obiektów spełniających kryteria na ekranie konsoli, ale można zapisać wynikową listę do pliku, przekierowując wyniki polecenia w następujący sposób:
dsquery Użytkownik> AllUsers.txt
Możesz uzyskać informacje o konkretnym użytkowniku:
dsquery * -filter "((objectcategory = person) (objectclass = user) (samaccountname = jdouglas))" -limit 0 -attr *
Aby uzyskać identyfikator SID użytkownika, użyj polecenia:
dsquery * -filter "(objectcategory = user) (samaccountname = jdouglas)" -attr objectsid
Następujące polecenie zwraca listę grup w domenie:
dsquery * -filter "((objectcategory = group) (objectclass = group) (name = *))" -limit 0 -attr Name
Wyświetl listę komputerów w domenie, których nazwy zaczynają się od PC-LON:
dsquery nazwa-komputera PC-LON *
Narzędzia dsquery można używać z potokiem z innymi narzędziami (dsmod, dsget, dsrm lub dsmove), a następnie polecenie dsquery zostanie użyte jako dane wejściowe. Na przykład, aby zapisać członków określonej grupy AD w pliku tekstowym, użyj następującego potoku:
dsquery group „DC = techcrises, DC = com” -nazwa „administratorzy domeny” | dsget group -members> GroupMembers.txt
Możesz wyłączyć konta znalezionych użytkowników:
dsquery nazwa-użytkownika Test * | użytkownik dsmod - wyłączony tak
Znajdź i usuń wszystkie komputery nieaktywne przez ponad 10 tygodni od AD:
dsquery computer -inactive 10 | dsrm
Dodaj wszystkich użytkowników z określonej jednostki organizacyjnej do grupy zabezpieczeń AD:
użytkownik dsquery „ou = Londyn, dc = techcrises, dc = com” | dsmod group ’cn = LondonUsers, ou = Londyn, dc = techcrises, dc = com’ –addmbr
Aby uzyskać listę użytkowników, którzy nie zmienili hasła w domenie przez ponad 60 dni:
dsquery user -stalepwd 60 -limit 0
Na pierwszy rzut oka składnia narzędzia dsquery jest dość złożona. Ale jeśli spróbujesz wykonać kilka zapytań samodzielnie, zdasz sobie sprawę, że większość komend dsquery używa tej samej standardowej składni i zawiera tylko kilka rozszerzeń standardowej składni, które są specyficzne dla typu obiektu, z którym pracują.