इस लेख में, हम देखेंगे कि सक्रिय निर्देशिका डोमेन में व्यवस्थापकीय अनुमतियों को कैसे प्रत्यायोजित किया जाए। प्रतिनिधिमंडल आपको सामान्य डोमेन (गैर-व्यवस्थापक) उपयोगकर्ताओं को डोमेन व्यवस्थापक, खाता ऑपरेटर आदि जैसे विशेषाधिकार प्राप्त डोमेन समूहों के सदस्य बनाए बिना कुछ एडी प्रबंधन कार्यों को करने की अनुमति देता है। उदाहरण के लिए, आप प्रतिनिधिमंडल का उपयोग कर सकते हैं एक निश्चित AD सुरक्षा समूह (जैसे, हेल्पडेस्क) को उपयोगकर्ताओं को समूहों में जोड़ने, AD में नए उपयोगकर्ता बनाने और खाता पासवर्ड रीसेट करने की अनुमति दें।
सक्रिय निर्देशिका प्रत्यायोजित अनुमतियों को समझना
AD में अनुमतियाँ प्रत्यायोजित करने के लिए, नियंत्रण विज़ार्ड का प्रतिनिधिमंडल सक्रिय निर्देशिका में उपयोगकर्ता और कंप्यूटर (DSA.msc) का उपयोग किया जाता है।
आप AD में प्रशासनिक विशेषाधिकारों को काफी बारीक स्तर पर सौंप सकते हैं। आप एक समूह को OU में पासवर्ड रीसेट करने की अनुमति दे सकते हैं, दूसरा - उपयोगकर्ता खाते बनाने और हटाने के लिए, और तीसरा - समूह सदस्यता बनाने और बदलने के लिए। आप नेस्टेड OU पर अनुमति विरासत को कॉन्फ़िगर कर सकते हैं। निम्नलिखित स्तरों पर सक्रिय निर्देशिका में अनुमतियाँ प्रत्यायोजित की जा सकती हैं:
- विज्ञापन साइट;
- संपूर्ण डोमेन;
- सक्रिय निर्देशिका में एक विशिष्ट संगठनात्मक इकाई (OU);
- एक विशिष्ट AD ऑब्जेक्ट।
सक्रिय निर्देशिका में प्रतिनिधिमंडल नियंत्रण के लिए सर्वोत्तम अभ्यास:
- अनुमति सीधे विशिष्ट उपयोगकर्ता खातों को सौंपने (असाइन) करने की अनुशंसा नहीं की जाती है। इसके बजाय AD में एक नया सुरक्षा समूह बनाएँ, उसमें एक उपयोगकर्ता जोड़ें और उस समूह के लिए किसी OU पर अनुमतियाँ सौंपें। यदि आप किसी अन्य उपयोगकर्ता को वही अनुमतियां देना चाहते हैं, तो आप उसे इस सुरक्षा समूह में जोड़ सकते हैं;
- अस्वीकार अनुमतियों का उपयोग करने से बचें, क्योंकि वे अनुमत अनुमतियों पर वरीयता लेते हैं;
- डोमेन में प्रत्यायोजित अनुमतियों का समय-समय पर ऑडिट करें (प्रति OU अनुमतियों की वर्तमान सूचियों के साथ एक रिपोर्ट PowerShell का उपयोग करके बनाई जा सकती है);
- व्यवस्थापक खातों के साथ OU को प्रबंधित करने के लिए किसी को भी अनुमति न दें। अन्यथा, कोई भी सहायक स्टाफ सदस्य डोमेन व्यवस्थापक पासवर्ड रीसेट कर सकता है। सभी विशेषाधिकार प्राप्त उपयोगकर्ताओं और समूहों को एक अलग OU में रखा जाना चाहिए जो प्रतिनिधिमंडल के नियमों के अधीन नहीं है।
एडी में पासवर्ड रीसेट और अनलॉक खाता अनुमतियां सौंपें
आइए कल्पना करें कि आपका काम हेल्पडेस्क समूह को पासवर्ड रीसेट करने और डोमेन में उपयोगकर्ता खातों को अनलॉक करने की अनुमति देना है। आइए PowerShell का उपयोग करके AD में एक नया सुरक्षा समूह बनाएं:
New-ADGroup "HelpDesk" -path 'OU=Groups,OU=Paris,OU=Fr,dc=woshub,DC=com' -GroupScope Global
अपने इच्छित उपयोगकर्ताओं को इस समूह में जोड़ें:
Add-AdGroupMember -Identity HelpDesk -Members rdroz, jdupont
सक्रिय निर्देशिका उपयोगकर्ता और कंप्यूटर एमएमसी स्नैप-इन चलाएँ (dsa.msc
), उपयोगकर्ताओं के साथ OU पर राइट-क्लिक करें (हमारे उदाहरण में यह 'OU=Users,OU=Paris,OU=Fr,dc=woshub,DC=com') है, और प्रतिनिधि नियंत्रण मेनू आइटम.
उस समूह का चयन करें जिसे आप प्रशासनिक विशेषाधिकार देना चाहते हैं।
विशेषाधिकारों के पूर्व-कॉन्फ़िगर सेट में से एक का चयन करें (निम्न सामान्य कार्यों को सौंपें):
- उपयोगकर्ता खाते बनाएं, हटाएं और प्रबंधित करें;
- उपयोगकर्ता पासवर्ड रीसेट करें और अगले लॉगऑन पर पासवर्ड बदलने के लिए बाध्य करें;
- उपयोगकर्ता की सभी जानकारी पढ़ें;
- समूह बनाएं, हटाएं और प्रबंधित करें;
- समूह की सदस्यता संशोधित करें;
- समूह नीति लिंक प्रबंधित करें;
- नीति का परिणामी सेट तैयार करें (योजना);
- नीति का परिणामी सेट तैयार करें (लॉगिंग);
- इनेटऑर्गपर्सन खाते बनाएं, हटाएं और प्रबंधित करें;
- इनेटऑर्गपर्सन पासवर्ड रीसेट करें और अगले लॉगऑन पर पासवर्ड बदलने के लिए बाध्य करें;
- सभी inetOrgPerson जानकारी पढ़ें।
या प्रतिनिधि के लिए एक कस्टम कार्य बनाएं . मैं दूसरा विकल्प चुनता हूं।
AD ऑब्जेक्ट के प्रकार का चयन करें जिन्हें आप व्यवस्थापकीय अनुमतियाँ देना चाहते हैं। चूंकि हम उपयोगकर्ता खातों पर नियंत्रण देना चाहते हैं, उपयोगकर्ता ऑब्जेक्ट . चुनें वस्तु। यदि आप OU में उपयोगकर्ताओं को बनाने या हटाने की अनुमति देना चाहते हैं, तो विकल्प चुनें इस फ़ोल्डर में चयनित ऑब्जेक्ट बनाएं/हटाएं . हमारे उदाहरण में, हम ऐसे विशेषाधिकार नहीं देते हैं।
अनुमतियों की सूची में, उन अनुमतियों का चयन करें जिन्हें आप प्रत्यायोजित करना चाहते हैं। हमारे उदाहरण में, हम उपयोगकर्ता खातों को अनलॉक करने के लिए विशेषाधिकारों का चयन करेंगे (तालाबंदी का समय पढ़ें और तालाबंदी का समय लिखें ) और पासवर्ड रीसेट करने के लिए (पासवर्ड रीसेट करें )।
हेल्पडेस्क टीम को डोमेन में खाता लॉकआउट के स्रोत की पहचान करने के लिए, आपको उन्हें डोमेन नियंत्रकों पर सुरक्षा लॉग खोजने की अनुमति देनी होगी।
अगला क्लिक करें, और अंतिम स्क्रीन पर चयनित अनुमतियों के प्रतिनिधिमंडल की पुष्टि करें।
अब, हेल्पडेस्क समूह के एक उपयोगकर्ता खाते के अंतर्गत, PowerShell का उपयोग करके लक्ष्य OU से उपयोगकर्ता का पासवर्ड रीसेट करने का प्रयास करें:
Set-ADAccountPassword gchaufourier -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “P@ssdr0w1” -Force -Verbose) –PassThru
पासवर्ड सफलतापूर्वक रीसेट होना चाहिए (यदि यह डोमेन पासवर्ड नीति से मेल खाता है)।
अब इस OU में New-ADUser cmdlet का उपयोग करके एक उपयोगकर्ता बनाने का प्रयास करें:
New-ADUser -Name gmicheaux -Path 'OU=Users,OU=Paris,OU=FR,DC=woshub,DC=com' -Enabled $true
एक एक्सेस अस्वीकृत त्रुटि दिखाई देनी चाहिए क्योंकि आपने नए AD खाते बनाने के अधिकार प्रत्यायोजित नहीं किए हैं।
आप डोमेन नियंत्रक सुरक्षा लॉग का उपयोग उन उपयोगकर्ताओं की कार्रवाइयों का ऑडिट करने के लिए कर सकते हैं जिन्हें आपने व्यवस्थापकीय अनुमतियाँ प्रत्यायोजित की हैं। उदाहरण के लिए, आप ट्रैक कर सकते हैं कि डोमेन में उपयोगकर्ता पासवर्ड किसने रीसेट किया, किसने AD में उपयोगकर्ता खाता बनाया, या संवेदनशील AD समूहों में परिवर्तन ट्रैक कर सकते हैं।
कम्प्यूटर को AD डोमेन से जोड़ने की अनुमतियां सौंपें
डिफ़ॉल्ट रूप से, कोई भी डोमेन उपयोगकर्ता 10 कंप्यूटर तक डोमेन से जुड़ सकता है। 11 वें . जोड़ते समय कंप्यूटर, एक त्रुटि दिखाई देगी:
Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased.
आप ms-DS-MachineAccountQuota का मान बढ़ाकर डोमेन-व्यापी स्तर पर इस प्रतिबंध को बदल सकते हैं गुण। या (जो अधिक सही और सुरक्षित है) कंप्यूटर को एक निश्चित OU से एक विशिष्ट उपयोगकर्ता समूह (हेल्पडेस्क) में शामिल करने की अनुमतियाँ सौंपकर। ऐसा करने के लिए, कंप्यूटर ऑब्जेक्ट . के ऑब्जेक्ट बनाने के लिए अनुमतियां सौंपें प्रकार। नियंत्रण विज़ार्ड के प्रतिनिधिमंडल में, इस फ़ोल्डर में चयनित ऑब्जेक्ट बनाएं का चयन करें ।
सभी चाइल्ड ऑब्जेक्ट बनाएं Select चुनें अनुमतियां अनुभाग में।
यदि आप AD में संगठनात्मक इकाइयों के बीच वस्तुओं को स्थानांतरित करने का अधिकार देना चाहते हैं, तो आपको निम्नलिखित अनुमतियाँ देनी होंगी:उपयोगकर्ता ऑब्जेक्ट हटाएं, विशिष्ट नाम लिखें, नाम लिखें (**), उपयोगकर्ता (या कंप्यूटर) ऑब्जेक्ट बनाएं।
सक्रिय निर्देशिका में प्रत्यायोजित अनुमतियां कैसे देखें और निकालें?
किसी OU को AD में कितनी भी संख्या में डेलिगेशन नियम असाइन किए जा सकते हैं। आप ADUC कंसोल में OU के गुणों में समूहों की सूची और उन्हें दी गई अनुमतियों की सूची प्राप्त कर सकते हैं। सुरक्षा . पर जाएं टैब।
इसमें एडी विषयों की एक सूची है जिन्हें इस कंटेनर के लिए अनुमति दी गई है। आप दी गई अनुमतियों की सूची उन्नत . पर देख सकते हैं टैब। जैसा कि आप देख सकते हैं, हेल्पडेस्क समूह को पासवर्ड रीसेट करने की अनुमति है।
आप प्रतिनिधिमंडल के माध्यम से पूर्व में असाइन की गई व्यवस्थापकीय अनुमतियों के एक विशिष्ट समूह को निरस्त कर सकते हैं। उस समूह का नाम ढूंढें जिसे आपने अनुमतियां सौंपी हैं और निकालें . पर क्लिक करें ।
इसके अलावा, सुरक्षा . पर -> उन्नत टैब पर आप मैन्युअल रूप से विभिन्न सुरक्षा समूहों को प्रत्यायोजित अनुमतियां असाइन कर सकते हैं।
पावरशेल के साथ सक्रिय निर्देशिका में अनुमतियां कैसे सौंपें?
आप उन अनुमतियों की सूची प्राप्त कर सकते हैं जिन्हें OU को प्रत्यायोजित किया गया है या PowerShell का उपयोग करके वर्तमान अनुमतियों को परिवर्तित करें। Get-ACL
और Set-ACL
cmdlets का उपयोग सक्रिय निर्देशिका में अनुमतियों को देखने और बदलने के लिए किया जाता है (फ़ाइलों और फ़ोल्डरों पर NTFS अनुमतियों को प्रबंधित करने के लिए समान PowerShell cmdlets का उपयोग किया जाता है)।
निम्नलिखित सरल स्क्रिप्ट उन सभी गैर-मानक अनुमतियों को सूचीबद्ध करेगी जो AD में एक विशिष्ट संगठनात्मक इकाई को प्रत्यायोजित की गई हैं:
# get the OU
$OUs = Get-ADOrganizationalUnit -Filter 'DistinguishedName -eq "OU=Users,OU=Paris,DC=woshub,DC=com"'| Select-Object -ExpandProperty DistinguishedName
$schemaIDGUID = @{}
$ErrorActionPreference = 'SilentlyContinue'
Get-ADObject -SearchBase (Get-ADRootDSE).schemaNamingContext -LDAPFilter '(schemaIDGUID=*)' -Properties name, schemaIDGUID |
ForEach-Object {$schemaIDGUID.add([System.GUID]$_.schemaIDGUID,$_.name)}
Get-ADObject -SearchBase "CN=Extended-Rights,$((Get-ADRootDSE).configurationNamingContext)" -LDAPFilter '(objectClass=controlAccessRight)' -Properties name, rightsGUID |
ForEach-Object {$schemaIDGUID.add([System.GUID]$_.rightsGUID,$_.name)}
$ErrorActionPreference = 'Continue'
ForEach ($OU in $OUs) {
$report += Get-Acl -Path "AD:\$OU" |
Select-Object -ExpandProperty Access |
Select-Object @{name='organizationalUnit';expression={$OU}}, `
@{name='objectTypeName';expression={if ($_.objectType.ToString() -eq '00000000-0000-0000-0000-000000000000') {'All'} Else {$schemaIDGUID.Item($_.objectType)}}}, `
@{name='inheritedObjectTypeName';expression={$schemaIDGUID.Item($_.inheritedObjectType)}}, `
*
}
# report with assigned OU permissions
आप ग्राफ़िकल आउट-ग्रिड व्यू cmdlet के साथ प्रत्यायोजित अनुमति रिपोर्ट प्राप्त कर सकते हैं:
$report| where {($_.IdentityReference -notlike "*BUILTIN*") -and ($_.IdentityReference -notlike "*NT AUTHORITY*") }| Out-GridView
या Excel में आगे के विश्लेषण के लिए अनुमतियों की सूची को CSV फ़ाइल में निर्यात करें (आप किसी PowerShell स्क्रिप्ट से सीधे Excel फ़ाइल में डेटा लिख सकते हैं):$report | Export-Csv -Path "C:\reports\AD_OU_Permissions.csv" –NoTypeInformation
परिणामी रिपोर्ट से पता चलता है कि हेल्पडेस्क समूह को ओयू में उपयोगकर्ता पासवर्ड (ऑब्जेक्ट टाइपनाम =यूजर-फोर्स-चेंज-पासवर्ड) को रीसेट करने की अनुमति दी गई है।
आप dsacls . का उपयोग कर सकते हैं एक OU को अधिकार सौंपने के लिए उपकरण। उदाहरण के लिए:
dsacls "ou=users,ou=paris,dc=woshub,dc=com" /I:S /G "WOSHUB\HELPDESK:CA;Reset Password;user" "WOSHUB\HELPDESK:WP;pwdLastSet;user" "WOSHUB\HELPDESK:WP;lockoutTime;user
आप PowerShell का उपयोग करके संगठनात्मक इकाई कंटेनर को अनुमतियां भी असाइन कर सकते हैं (इस उदाहरण में, पासवर्ड रीसेट करने की अनुमतियां प्रत्यायोजित की गई हैं):
$ou = "AD:\OU=users,OU=Paris,DC=woshub,DC=com"
$group = Get-ADGroup helpdesk
$sid = new-object System.Security.Principal.SecurityIdentifier $group.SID
$ResetPassword = [GUID]"00299570-246d-11d0-a768-00aa006e0529"
$UserObjectType = "bf967aba-0de6-11d0-a285-00aa003049e2"
$ACL = get-acl $OU
$RuleResetPassword = New-Object System.DirectoryServices.ActiveDirectoryAccessRule ($sid, "ExtendedRight", "Allow", $ResetPassword, "Descendents", $UserObjectType)
$ACL.AddAccessRule($RuleResetPassword)
Set-Acl -Path $OU -AclObject $ACL
इसी तरह, आप PowerShell का उपयोग करके AD संगठनात्मक कंटेनरों को अन्य अनुमतियां सौंप सकते हैं।