सक्रिय निर्देशिका को PowerShell या लीगेसी dsquery कमांड का उपयोग करके कमांड लाइन से क्वेरी किया जा सकता है।
पावरशेल सक्रिय निर्देशिका कमांड
सभी उपयोगकर्ताओं की सूची बनाएं:
Get-ADUser -Filter *
विशिष्ट उपयोगकर्ता खोजें:
Get-ADUser -Identity "username"
उपयोगकर्ता को नाम से खोजें:
Get-ADUser -Filter "Name -like '*John*'"
सभी कंप्यूटरों की सूची बनाएं:
Get-ADComputer -Filter *
सभी समूहों की सूची बनाएं:
Get-ADGroup -Filter *
डोमेन जानकारी प्राप्त करें:
Get-ADDomain
डोमेन नियंत्रक प्राप्त करें:
Get-ADDomainController -Filter *
पावरशेल एडी मॉड्यूल सक्षम करें
यदि Get-ADUser काम नहीं करता है, तो मॉड्यूल सक्षम करें:
विंडोज सर्वर:
Import-Module ActiveDirectory
विंडोज़ 10/11: सेटिंग्स> ऐप्स> वैकल्पिक सुविधाओं से आरएसएटी (रिमोट सर्वर एडमिनिस्ट्रेशन टूल्स) इंस्टॉल करें।
फिर चलाएँ:
Import-Module ActiveDirectory
लीगेसी DSQUERY कमांड
डोमेन से जुड़ी मशीनों पर पावरशेल मॉड्यूल के बिना काम करता है।
सभी उपयोगकर्ता खोजें:
dsquery user
उपयोगकर्ता को नाम से ढूंढें:
dsquery user -name "John*"
सभी कंप्यूटर खोजें:
dsquery computer
सभी समूह खोजें:
dsquery group
अक्षम खाते ढूंढें:
dsquery user -disabled
निष्क्रिय कंप्यूटर खोजें (90 दिन):
dsquery computer -inactive 12
12 सप्ताह = लगभग 90 दिन।
विस्तृत उपयोगकर्ता जानकारी प्राप्त करें
पावरशेल - सभी गुण दिखाएं:
Get-ADUser -Identity "username" -Properties *
डीएसजीईटी (विरासत):
dsquery user -name "username" | dsget user -display -email -mobile
उपयोगकर्ता की समूह सदस्यता खोजें
पावरशेल:
Get-ADPrincipalGroupMembership -Identity "username"
डीएसजीईटी:
dsget user "CN=Username,OU=Users,DC=domain,DC=com" -memberof
किसी समूह के सदस्यों को ढूंढें
पावरशेल:
Get-ADGroupMember -Identity "GroupName"
डीएसजीईटी:
dsget group "CN=GroupName,OU=Groups,DC=domain,DC=com" -members
जांचें कि क्या उपयोगकर्ता लॉक आउट है
पावरशेल:
Get-ADUser -Identity "username" -Properties LockedOut | Select-Object Name,LockedOut
उपयोगकर्ता को अनलॉक करें:
Unlock-ADAccount -Identity "username"
यूजर पासवर्ड रीसेट करें
Set-ADAccountPassword -Identity "username" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "NewPassword123!" -Force)
अगले लॉगऑन पर जबरन पासवर्ड बदलें:
Set-ADUser -Identity "username" -ChangePasswordAtLogon $true
कंप्यूटर खोजें
नाम से:
Get-ADComputer -Filter "Name -like '*DESKTOP*'"
ऑपरेटिंग सिस्टम द्वारा:
Get-ADComputer -Filter "OperatingSystem -like '*Windows 11*'" -Properties OperatingSystem
सीएसवी में परिणाम निर्यात करें
पावरशेल:
Get-ADUser -Filter * -Properties DisplayName,EmailAddress | Export-Csv users.csv -NoTypeInformation
उपयोगकर्ता डेटा के साथ CSV फ़ाइल बनाता है।
सामान्य फ़िल्टर
पिछले 30 दिनों में बनाए गए उपयोगकर्ता:
$date = (Get-Date).AddDays(-30)
Get-ADUser -Filter "Created -gt '$date'" -Properties Created
उपयोगकर्ता कभी लॉग इन नहीं हुए:
Get-ADUser -Filter "LastLogonDate -notlike '*'" -Properties LastLogonDate
90 दिनों से कंप्यूटर लॉग इन नहीं:
$date = (Get-Date).AddDays(-90)
Get-ADComputer -Filter "LastLogonDate -lt '$date'" -Properties LastLogonDate
समस्या निवारण
"Get-ADUser पहचाना नहीं गया": ActiveDirectory मॉड्यूल आयात करें या RSAT स्थापित करें।
"सर्वर से संपर्क करने में असमर्थ": डोमेन नेटवर्क या डोमेन नियंत्रक पर नहीं पहुंच योग्य।
"प्रवेश निषेध": डोमेन व्यवस्थापक या उपयुक्त AD अनुमतियों की आवश्यकता है।
DSQUERY कुछ नहीं लौटाता: सिंटैक्स की जाँच करें, डोमेन से जुड़ना सुनिश्चित करें, नेटवर्क कनेक्शन सत्यापित करें।
निचली पंक्ति
पावरशेल (आधुनिक):
Get-ADUser -Filter * | Find users
Get-ADComputer -Filter * | Find computers
Get-ADGroup -Filter * | Find groups
DSQUERY (विरासत):
dsquery user | Find users
dsquery computer | Find computers
dsquery group | Find groups
पावरशेल अधिक शक्तिशाली है लेकिन इसके लिए ActiveDirectory मॉड्यूल की आवश्यकता होती है। DSQUERY अतिरिक्त सेटअप के बिना डोमेन से जुड़ी मशीनों पर काम करता है।
दोनों को डोमेन नेटवर्क कनेक्शन और उचित अनुमति की आवश्यकता होती है।