DSQUERY Commands to query AD objects:-
1.
How to find all members for a particular group
dsget group "<DN of the group>" -members
dsget group "<DN of the group>" -members
1a. How to find all groups for a particular member (including
nested groups)
dsget user "<DN of the user>" -memberof -expand
dsquery user -samid "username" | dsget user -memberof -expand
2. How to find memberof , lastlogontimestamp , homemta(Mail server) , Samaccountname & so on(Repadmin /showattr <DCname> <"DN">)
dsget user "<DN of the user>" -memberof -expand
dsquery user -samid "username" | dsget user -memberof -expand
2. How to find memberof , lastlogontimestamp , homemta(Mail server) , Samaccountname & so on(Repadmin /showattr <DCname> <"DN">)
dsquery
* "<DN>" -scope base -attr lastlogontimestamp memberoff
repadmin /showattr <DCNAME> <"DN"> /attrs:lastlogon,homemta,whencreated,lastlogontimestamp,samaccountname
repadmin /showattr <DCNAME> <"DN"> /attrs:lastlogon,homemta,whencreated,lastlogontimestamp,samaccountname
3. How to modify user last name.
dsmod
user <dn> -ln "<last name>"
4. How to find memberof , lastlogontimestamp , homemta(Mail
server) , Samaccountname & so on for "n" number of users
Create
a batch file(for /f "eol= tokens=* delims= usebackq" %%x in (%1) do
dsquery * %%x -scope base -attr sAMAccountName objectsid whencreated
lastlogontimestamp mail homeMTA memberof) e.g ds.bat
Create a text file (All users DN e.g:dn.txt)
Open cmd & run ds.bat dn.txt >> c:\attr.txt
Create a text file (All users DN e.g:dn.txt)
Open cmd & run ds.bat dn.txt >> c:\attr.txt
5. How to find DN for n number of computers
for
/f %%x in (%1) do dsquery computer -name %%x
(Create a batch file with line & create a txt file computer.txt
open cmd >>>>>>batchfile computer.txt >> c:\dn.txt
(Create a batch file with line & create a txt file computer.txt
open cmd >>>>>>batchfile computer.txt >> c:\dn.txt
6. Find Subnet with associated site.
dsquery subnet -name <CIDR> | dsget subnet
8.How to find disabled users
dsquery user "dc=ssig,dc=com" -disabled
dsquery * -filter "(&(objectCategory=person)(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=2))"
9. How to find OS?
dsquery * <"DN"> -scope base -attr operatingSystem
10. How to find site ?
dsquery subnet -name <CIDR> | dsget subnet
8.How to find disabled users
dsquery user "dc=ssig,dc=com" -disabled
dsquery * -filter "(&(objectCategory=person)(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=2))"
9. How to find OS?
dsquery * <"DN"> -scope base -attr operatingSystem
10. How to find site ?
dsquery
site -name * -limit 0
dsquery
server -s <server> | dsget server -site
11. How to get tombstonelifetime ?
11. How to get tombstonelifetime ?
dsquery
* "CN=Directory Service,CN=Windows
NT,CN=Services,CN=Configuration,DC=yourdomain,DC=com" -scope base -attr
tombstonelifetime
13. How to find mail box?
dsquery * -filter "samaccountname=biswajit" -attr homemdb
14. How to find the GCs?
13. How to find mail box?
dsquery * -filter "samaccountname=biswajit" -attr homemdb
14. How to find the GCs?
DsQuery
Server -domain contoso.com -isgc
15.How to find all the active users?
dsquery * -filter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))"
dsquery * -filter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))"
For Single user
dsquery * domainroot -filter "(&(objectCategory=Person)(objectClass=User)(mail=e-mailaddress))" -attr name
For bulk users
for /f %%x in (%1) do dsquery * domainroot -filter "(&(objectcategory=person)(objectclass=user)(mail=%%x))" -attr name
17. How to find Schema version?
dsquery * cn=schema,cn=configuration,dc=domainname,dc=local -scope base -attr objectVersion
or
schupgr
18. How to find Site name by server name ?
dsquery server -name test1 | dsget server -site
dsquery server -name (provide the server name for DN) | dsget server -site
dsquery server -name test1 | dsget server -site
dsquery server -name (provide the server name for DN) | dsget server -site
19. How to find all groups of a user is memberof without the
DN's?
dsquery user -samid anthony | dsget user -memberof | dsget group -samid
dsquery user -samid (provide the samaccount name of the user) | dsget user -memberof | dsget group -samid
20. How to find all groups if a computer account without giving the DN's ?
dsquery computer -name test1 | dsget computer -memberof | dsget group -samid
21. How to find PDC role holder for the existing domain ?
dsquery server -hasfsmo PDC
22. How to find Infrastructure Master role holder existing domain ?
dsquery server -hasfsmo INFR
23. How to find RID master role holder for existing domain ?
dsquery server -hasfsmo RID
24. How to find Schema master role holder in a Forest ?
dsquery server -forest -hasfsmo Schema
25. How to find Domain Naming Master in a Forest ?
dsquery server -forest -hasfsmo Name
26. How to find if the Domain Controller is a Global Catalog (GC) or not ?
dsquery server -name test1 | dsget server -isgc
27. How to find subnet with associated site.
dsquery subnet -name 10.222.88.0/25 | dsget subnet
dsquery user -samid anthony | dsget user -memberof | dsget group -samid
dsquery user -samid (provide the samaccount name of the user) | dsget user -memberof | dsget group -samid
20. How to find all groups if a computer account without giving the DN's ?
dsquery computer -name test1 | dsget computer -memberof | dsget group -samid
21. How to find PDC role holder for the existing domain ?
dsquery server -hasfsmo PDC
22. How to find Infrastructure Master role holder existing domain ?
dsquery server -hasfsmo INFR
23. How to find RID master role holder for existing domain ?
dsquery server -hasfsmo RID
24. How to find Schema master role holder in a Forest ?
dsquery server -forest -hasfsmo Schema
25. How to find Domain Naming Master in a Forest ?
dsquery server -forest -hasfsmo Name
26. How to find if the Domain Controller is a Global Catalog (GC) or not ?
dsquery server -name test1 | dsget server -isgc
27. How to find subnet with associated site.
dsquery subnet -name 10.222.88.0/25 | dsget subnet
28. How to find SID of a user?
dsquery user -samid <bbiswas> | dsget user -sid
dsquery * -filter (samaccountname=Biswajit) – attr sid
29. How to find sIDHisotry of a user?
Dsquery * -filter (samaccoutname=Bbiswas) – attr siDhistory
30. How to find enabled computer accounts in an OU?
dsquery computer OU=Test,DC=contoso,DC=com -limit 5000 | dsget computer -dn -disabled | find /i " no"
31. How to count enabled computer accounts in an OU?
dsquery computer OU=Test,DC=contoso,DC=com -limit 5000 | dsget computer -dn -disabled | find /c /i " no"
dsquery user -samid <bbiswas> | dsget user -sid
dsquery * -filter (samaccountname=Biswajit) – attr sid
29. How to find sIDHisotry of a user?
Dsquery * -filter (samaccoutname=Bbiswas) – attr siDhistory
30. How to find enabled computer accounts in an OU?
dsquery computer OU=Test,DC=contoso,DC=com -limit 5000 | dsget computer -dn -disabled | find /i " no"
31. How to count enabled computer accounts in an OU?
dsquery computer OU=Test,DC=contoso,DC=com -limit 5000 | dsget computer -dn -disabled | find /c /i " no"
32. How to find all members for a OU.
dsquery
user ou=targetOU,dc=domain,dc=com
33. How to find all groups for a OU.
dsquery group ou=targetOU,dc=domain,dc=com
dsquery group ou=targetOU,dc=domain,dc=com
dsquery
group -samid “Group Pre-Win2k Name” | dsget group -members | dsget user
-disabled -display
35.Command to find all the subnets for the given site
dsquery subnet -o rdn
-site <site name>
36. Command to find all DCs in the given site
>>dsquery server -o rdn -site <site name>
37. Command to find all DCs in the Forest
>>dsquery server -o rdn -forest
38. To list the distinguished names of all directory partitions in the current forest
>>dsquery partition
36. Command to find all DCs in the given site
>>dsquery server -o rdn -site <site name>
37. Command to find all DCs in the Forest
>>dsquery server -o rdn -forest
38. To list the distinguished names of all directory partitions in the current forest
>>dsquery partition
Below example for single domain
Below example for parent/child domain
39. To
find all contacts in the organizational unit (OU)
dsquery contact OU=Sales,DC=Contoso,DC=Com
40. To list the relative distinguished names of all sites that are defined in the directory
dsquery site -limit 0
dsquery contact OU=Sales,DC=Contoso,DC=Com
40. To list the relative distinguished names of all sites that are defined in the directory
dsquery site -limit 0
41. List of all users with primary group "Domain
Users"
dsquery * -filter "(primaryGroupID=513)" -limit 0
(You can change the "primaryGroupID" as per your requirement)
513:Domain Users
514:Domain Guests
515:Domain Computers
516:Domain Controllers
dsquery * -filter "(primaryGroupID=513)" -limit 0
(You can change the "primaryGroupID" as per your requirement)
513:Domain Users
514:Domain Guests
515:Domain Computers
516:Domain Controllers
42. How to find all attributes for all users?
Dsquery * -limit 0 -filter "&(objectClass=User)(objectCategory=Person)" -attr * >>output123.txt
Dsquery * -limit 0 -filter "&(objectClass=User)(objectCategory=Person)" -attr * >>output123.txt
43.
Show How Many Times wrong Password has been entered on a specified domain
controller.
dsquery * -filter "(sAMAccountName=jsmith)" -s MyServer -attr givenName sn badPwdCount
The badPwdCount attribute is not replicated, so a different value is saved for each user on each domain controller.
44. Expire use account.
dsquery * -filter "(sAMAccountName=jsmith)" -s MyServer -attr givenName sn badPwdCount
The badPwdCount attribute is not replicated, so a different value is saved for each user on each domain controller.
44. Expire use account.
dsquery * "dc=contoso,dc=com" -filter "(&(objectCategory=Person)(objectClass=User)(!accountExpires=0)(!accountExpires=9223372036854775807)) " -attr sAMAccountname displayName
Fine Granted Password Policy
C:\>dsget user
"CN=bshwjt,OU=pso,DC=contoso,DC=com" -effectivepso
effectivepso
"CN=test,CN=Password Settings Container,CN=System,DC=contoso,DC=com"
dsget succeeded
("bshwjt" is the user and test is the "PSO" also see the below snap)
effectivepso
"CN=test,CN=Password Settings Container,CN=System,DC=contoso,DC=com"
dsget succeeded
("bshwjt" is the user and test is the "PSO" also see the below snap)
ii) How
to find the PSO settings
C:\>dsquery * "<CN=your pso name>,CN=Password Settings Container,CN=System,DC=contoso,DC=com" -scope base -attr *
46. Find out Account Expiry date
dsquery
user -name * -limit 0 | dsget user -samid -acctexpires
47.This example displays all attributes of the contoso.com domain object
47.This example displays all attributes of the contoso.com domain object
dsquery * -filter (dc=contoso) -attr *
48.This complex example displays the names of all attributes (150) that Windows Server 2003 replicates to Global Catalog servers. (If the command displays no attributes, ensure that you typed TRUE in capital letters
dsquery * cn=Schema,cn=Configuration,dc=contoso,dc=com -filter "(&(objectCategory=attributeSchema)(isMemberOfPartialAttributeSet=TRUE))" -limit 0 -attr name
49. How to get all samaacount name ?
dsquery user -o rdn -limit 0
50.The command displays the DNS host name, the site name, and whether the server is Global Catalog (GC) server for each domain controller
dsquery server | dsget server -dnsname -site -isgc
Get all the servers in the forest
dsquery server -forest -limit 0 | dsget server -dnsname -site -isgc
dsquery server -forest -limit 0 | dsget server -dnsname -site -isgc
51.The dsget command
displays properties of users or other objects. In this example, it displays the
6 groups that explicitly list the Administrator as member
Note: The -memberof -expand combination recursively expands the list of groups of which the user is a member. In this example, the Users group is added to the list because Domain Users is a member of the Users group.
Note: The -memberof -expand combination recursively expands the list of groups of which the user is a member. In this example, the Users group is added to the list because Domain Users is a member of the Users group.
dsget user cn=Administrator,cn=Users,dc=contoso,dc=com -memberof
52.The
output of the dsquery command can be used as input for the dsget command by
using a pipe ( | ). In this example, the SAM account name and the security ID
(SID) of each user is displayed.
dsquery user | dsget user -samid -sid -limit 0 >> c:\Allusers-samid-sid.txt
53. How to find RODC ?
dsquery server
-isreadonly
Dsquery for exchange server
54. How to find the Schema Version for Exchange Servers.
dsquery * CN=ms-Exch-Schema-Version-Pt,cn=schema,cn=configuration,dc=domain,dc=local -scope base -attr rangeUpper
55.How to find lastLogonTimestamp for all users for a domain
dsquery * -filter "&(objectClass=person)(objectCategory=user)" -attr cn lastLogonTimestamp -limit 0
56. Inactive users are go to disable state
54. How to find the Schema Version for Exchange Servers.
dsquery * CN=ms-Exch-Schema-Version-Pt,cn=schema,cn=configuration,dc=domain,dc=local -scope base -attr rangeUpper
55.How to find lastLogonTimestamp for all users for a domain
dsquery * -filter "&(objectClass=person)(objectCategory=user)" -attr cn lastLogonTimestamp -limit 0
56. Inactive users are go to disable state
dsquery * <ou> -filter "(&(objectCategory=Person)(objectClass=User)(!accountExpires=0)(!accountExpires=9223372036854775807))" | dsmod
user -disabled yes
57.ADDS existing
connection point objects
dsquery * forestroot
-filter (objectclass=serviceconnectionpoint)
58. Find all Hyper-V hosts in your forest
58. Find all Hyper-V hosts in your forest
C:\>dsquery *
forestroot -filter "&(cn=Microsoft
Hyper-V)(objectCategory=serviceconnectionpoint)" -attr
servicebindinginformation >> c:\hyper-v.txt
59. Find all
windows virtual machine in your forest
C:\>dsquery *
forestroot -filter "&(cn=windows
virtual machine)(objectCategory=serviceconnectionpoint)" -limit 0 -attr *
>> c:\allvirtualPCs.txt
60.Extract the all groups
from an OU with Group Scope & Group Type. Find the below snap for your
reference.
C:\>dsquery group "ou=test,dc=gs,dc=com" -limit 0 | dsget group -samid -scope -secgrp
61.The following example displays a list of users of the Organigation
Unit "Techie Sol",
can then be forwarded to dsget that can provide detailed information about objects.
In the example, the requested user list is headed by the pipe symbol after dsget that
-outputs then the sAMAccountName for all users and email address.
If you wanted to carry out modifications to the information returned by DSQuery user list,
we could send the result to dsmod, which for us is making changes to all users.
In following Image shows the changes in the command ensures that all users of DSQuery
-user list must change their passwords in next logon.
can then be forwarded to dsget that can provide detailed information about objects.
In the example, the requested user list is headed by the pipe symbol after dsget that
-outputs then the sAMAccountName for all users and email address.
If you wanted to carry out modifications to the information returned by DSQuery user list,
we could send the result to dsmod, which for us is making changes to all users.
In following Image shows the changes in the command ensures that all users of DSQuery
-user list must change their passwords in next logon.
Another way to get the user attributes from an OU. Find the below snap
& dsquery for that.
C:\>dsquery * "ou=test,DC=contoso,DC=com" -filter "(&(objectcategory=person)(objectclass=user))" -limit 0
-attr samaccountname description department title
62.retrieve the DN of
all users in the domain that are not direct members of a specified group
dsquery *
-filter
"(&(objectCategory=person)(objectClass=user)(!(memberOf=Groupname,ou=West,
dc=Contoso,dc=com))) -limit 0 > NotInGroup.txt
dc=Contoso,dc=com))) -limit 0 > NotInGroup.txt
63. How to open DSQUERY
GUI Window
rundll32 dsquery,OpenQueryWindow
DNS application partition
64. How to find the DNS servers from DomainDNSZones & ForestDNSzones
C:\>dsquery * DC=DomainDnsZones,DC=contoso,DC=com -scope base -attr msDs-masteredBy
C:\>dsquery * DC=forestDnsZones,DC=contoso,DC=com -scope base -attr msDs-masteredBy
65.Finding the Functional Levels of Active Directory
C:\>dsquery * DC=forestDnsZones,DC=contoso,DC=com -scope base -attr msDs-masteredBy
65.Finding the Functional Levels of Active Directory
dsquery * "DC=contoso,DC=com" -scope base -attr msDS-Behavior-Version ntMixedDomain
0, 0 Windows 2000 Native domain Level
0, 1 Windows 2000 Mixed domain Level
2, 0 Windows 2003 Domain Level
3, 0 Windows 2008 Domain Level
4, 0 Windows 2008 R2 Domain Level
Source : MS TechNet