কম্পিউটার টিউটোরিয়াল

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

এই নিবন্ধে, আমরা দেখব কীভাবে এক্টিভ ডিরেক্টরি ডোমেইনে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেট করা যায়। ডেলিগেশন আপনাকে কিছু AD ম্যানেজমেন্ট টাস্ক সম্পাদনের অনুমতি সাধারণ ডোমেইন (নন-অ্যাডমিন) ব্যবহারকারীদের দিতে দেয় প্রিভিলেজড ডোমেইন গ্রুপের সদস্য বানানো ছাড়া, যেমন Domain Admins, Account Operators, ইত্যাদি। উদাহরণস্বরূপ, আপনি ডেলিগেশন ব্যবহার করে একটি নির্দিষ্ট AD সিকিউরিটি গ্রুপকে (মান লें, Helpdesk) ব্যবহারকারীকে গ্রুপে যোগ করার, AD-তে নতুন ব্যবহারকারী তৈরির, এবং অ্যাকাউন্ট পাসওয়ার্ড রিসেট করার অনুমতি দিতে পারেন।

এক্টিভ ডিরেক্টরিতে ডেলিগেটেড পারমিশন বোঝা

AD-তে পারমিশন ডেলিগেট করার জন্য, Active Directory Users and Computers (DSA.msc)-এ Delegation of Control Wizard ব্যবহার করা হয়।

আপনি AD-তে প্রশাসনিক সুবিধা কাফি গ্রানুলার লেভেলে ডেলিগেট করতে পারেন। আপনি একটি গ্রুপকে OU-তে পাসওয়ার্ড রিসেট করার অনুমতি দিতে পারেন, অন্য একটি গ্রুপকে ব্যবহারকারী অ্যাকাউন্ট তৈরি এবং ডিলিট করার অনুমতি দিতে পারেন, এবং তৃতীয় গ্রুপকে গ্রুপ মেম্বারশিপ তৈরি এবং পরিবর্তন করার অনুমতি দিতে পারেন। আপনি নেস্টেড OU-তে পারমিশন ইনহেরিটেন্স কনফিগার করতে পারেন। এক্টিভ ডিরেক্টরিতে পারমিশন নিচের লেভেলগুলিতে ডেলিগেট করা যায়:

  • AD সাইট;
  • পুরো ডোমেইন;
  • এক্টিভ ডিরেক্টরিতে একটি নির্দিষ্ট Organizational Unit (OU);
  • একটি নির্দিষ্ট AD অবজেক্ট।

এক্টিভ ডিরেক্টরিতে ডেলিগেশন কন্ট্রোলের সেরা অনুশীলন:

  • নির্দিষ্ট ব্যবহারকারী অ্যাকাউন্টে সরাসরি পারমিশন ডেলিগেট (অ্যাসাইন) করা সুপারিশ করা হয় না। AD-এ একটি নতুন সিকিউরিটি গ্রুপ তৈরি করুন, ব্যবহারকারীকে তাতে যোগ করুন, এবং সেই গ্রুপের জন্য OU-তে পারমিশন ডেলিগেট করুন। আপনি যদি অন্য একজন ব্যবহারকারীকে একই অনুমতি দিতে চান, তবে সে সিম্পলি এই সিকিউরিটি গ্রুপে যোগ করা যাবে;
  • Deny পারমিশন ব্যবহার করা এড়িয়ে চলুন, কারণ এগুলো অ্যালোডেড 퍼মিশনের চেয়ে প্রাধান্য পায়;
  • ডোমেইনে ডেলিগেটেড পারমিশন certo সময় অ্যাডিট করুন (প্রতি OU-র বর্তমান পারমিশন তালিকা সহ একটি রিপোর্ট পাওয়ারশেল ব্যবহার করে তৈরি করা যাবে);
  • অ্যাডমিনিস্ট্রেটর অ্যাকাউন্ট থাকা OU-কে ম্যানেজ করার অনুমতি কারো দেবেন না। অন্যথায়, যেকোনো সাপোর্ট স্টাফ মেম্বার ডোমেইন অ্যাডমিনিস্ট্রেটর পাসওয়ার্ড রিসেট করতে পারবে। সব প্রিবিলেজড ব্যবহারকারী এবং গ্রুপকে একটি আলাদা OU-তে রাখুন যা ডেলিগেশন নিয়মের অধীন নয়।

AD-এ পাসওয়ার্ড রিসেট এবং আনলক অ্যাকাউন্ট পারমিশন ডেলিগেট করা

ধরুন, আপনার টাস্ক হল HelpDesk গ্রুপকে ডোমেইনে পাসওয়ার্ড রিসেট এবং ব্যবহারকারী অ্যাকাউন্ট আনলক করার অনুমতি দেওয়া। পাওয়ারশেল ব্যবহার করে AD-এ একটি নতুন সিকিউরিটি গ্রুপ তৈরি করুন:

New-ADGroup "HelpDesk" -path 'OU=Groups,OU=Paris,OU=Fr,dc=woshub,DC=com' -GroupScope Global

যে ব্যবহারকারীদের আপনি চান সেগুলো এই গ্রুপে যোগ করুন:

Add-AdGroupMember -Identity HelpDesk -Members rdroz, jdupont

Active Directory Users and Computers mmc স্ন্যাপ-ইন (dsa.msc) চালান, ব্যবহারকারীদের OU-তে (আমাদের উদাহরণে এটি ‘OU=Users,OU=Paris,OU=Fr,dc=woshub,DC=com’) রাইট-ক্লিক করুন, এবং Delegate Control মেনু আইটেম সিলেক্ট করুন।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

যে গ্রুপকে প্রশাসনিক সুবিধা দিতে চান সিলেক্ট করুন।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

পূর্ব-কনফিগার্ডেড সুবিধার সেট থেকে একটি সিলেক্ট করুন (Delegate the following common tasks):

  • Create, delete, and manage user accounts (ব্যবহারকারী অ্যাকাউন্ট তৈরি, ডিলিট, এবং ম্যানেজ);
  • Reset user passwords and force password change at next logon (ব্যবহারকারী পাসওয়ার্ড রিসেট এবং পরবর্তী লগ-ইনে পাসওয়ার্ড পরিবর্তন বাধ্যতামূলক);
  • Read all user information (সব ব্যবহারকারীর তথ্য পড়ুন);
  • Create, delete and manage groups (গ্রুপ তৈরি, ডিলিট এবং ম্যানেজ);
  • Modify the membership of a group (গ্রুপ মেম্বারশিপ পরিবর্তন);
  • Manage Group Policy links (গ্রুপ পলিসি লিংক ম্যানেজ);
  • Generate Resultant Set of Policy (Planning);
  • Generate Resultant Set of Policy (Logging);
  • Create, delete, and manage inetOrgPerson accounts;
  • Reset inetOrgPerson passwords and force password change at next logon;
  • Read all inetOrgPerson information.

বা একটি কাস্টম টাস্ক তৈরি করুন ডেলিগেট করার জন্য। আমি দ্বিতীয় অপশন বেছে নিচ্ছি।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

আপনি যে ধরনের AD অবজেক্টের ওপর প্রশাসনিক অনুমতি দিতে চান সেটি সিলেক্ট করুন। যেহেতু আমরা ব্যবহারকারী অ্যাকাউন্টের ওপর কন্ট্রোল দিতে চাই, User Object আইটেম সিলেক্ট করুন। আপনি যদি OU-তে ব্যবহারকারী তৈরি বা ডিলিট করার অনুমতি দিতে চান, তবে Create/Delete selected objects in this folder অপশন সিলেক্ট করুন। আমাদের উদাহরণে, আমরা এমন সুবিধা দিচ্ছি না।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

পারমিশন তালিকা থেকে যেসব ডেলিগেট করতে চান সেগুলো সিলেক্ট করুন। আমাদের উদাহরণে, আমরা ব্যবহারকারী অ্যাকাউন্ট আনলক করার সুবিধা (Read lockoutTime এবং Write lockoutTime) এবং পাসওয়ার্ড রিসেট করার সুবিধা (Reset password) সিলেক্ট করব।

HelpDesk টিম ডোমেইনে অ্যাকাউন্ট লকআউটের উৎস শনাক্ত করতে পারে সেজন্য, আপনাকে তাদের ডোমেইন কন্ট্রোলারগুলোর সিকিউরিটি লগ সার্চ করার অনুমতি দিতে হবে।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

Next ক্লিক করুন, এবং শেষ স্ক্রিনে নির্বাচিত পারমিশন ডেলিগেশন কনফার্ম করুন।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

এখন, টার্গেট OU- থেকে একজন ব্যবহারকারীর পাসওয়ার্ড রিসেট করার চেষ্টা করুন HelpDesk গ্রুপের একজন ব্যবহারকারী অ্যাকাউন্ট দিয়ে পাওয়ারশেল ব্যবহার করে:

Set-ADAccountPassword gchaufourier -Reset -NewPassword (ConvertTo-SecureString -AsPlainText “P@ssdr0w1” -Force -Verbose) –PassThru

পাসওয়ার্ড সফলভাবে রিসেট হওয়া উচিত (যদি এটি ডোমেইন পাসওয়ার্ড পলিসির সাথে মেলে)।

এখন এই OU-তে New-ADUser কমান্ডলেট ব্যবহার করে একটি ব্যবহারকারী তৈরি করার চেষ্টা করুন:

New-ADUser -Name gmicheaux -Path 'OU=Users,OU=Paris,OU=FR,DC=woshub,DC=com' -Enabled $true

এক্সেস ডেনাইড ত্রুটি দেখা উচিত কারণ আপনি AD অ্যাকাউন্ট তৈরি করার অধিকার ডেলিগেট করেননি।

আপনি ডোমেইন কন্ট্রোলার সিকিউরিটি লগ ব্যবহার করে যাদের প্রশাসনিক অনুমতি ডেলিগেট করেছেন তাদের কার্যকলাপ অডিট করতে পারেন। উদাহরণস্বরূপ, আপনি ট্র্যাক করতে পারেন কে ডোমেইনে ব্যবহারকারী পাসওয়ার্ড রিসেট করেছে, কে AD-তে ব্যবহারকারী অ্যাকাউন্ট তৈরি করেছে, বা সংবেদনশীল AD গ্রুপে পরিবর্তন ট্র্যাক করতে পারেন।

AD ডোমেইনে কম্পিউটার জয়েন করার অনুমতি ডেলিগেট করা

ডিফল্টভাবে, যেকোনো ডোমেইন ব্যবহারকারী ডোমেইনে ১০টি কম্পিউটার পর্যন্ত জয়েন করতে পারে। ১১তম কম্পিউটার যোগ করার সময় একটি ত্রুটি দেখায়:

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-তে কম্পিউটার জয়েন করার অনুমতি ডেলিগেট করে। এর জন্য, Computer objects টাইপের অবজেক্ট তৈরি করার অনুমতি ডেলিগেট করুন। Delegation of Control Wizard-এ, Create selected objects in this folder সিলেক্ট করুন।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

Permissions সেকশনে Create All Child Objects সিলেক্ট করুন।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

আপনি যদি AD-তে Organizational Units-এর মধ্যে অবজেক্ট মুভ করার অধিকার ডেলিগেট করতে চান, তবে আপনাকে নিচের পারমিশন দিতে হবে: Delete User objects, Write Distinguished Name, Write name (**), Create User (বা Computer) objects।

এক্টিভ ডিরেক্টরিতে ডেলিগেটেড পারমিশন দেখা এবং সরানো

AD-এ একটি OU-তে যেকোনো সংখ্যক ডেলিগেশন রুল অ্যাসাইন করা যেতে পারে। ADUC কনসোলে OU-এর প্রপার্টিতে গ্রুপ এবং তাদের ডেলিগেট করা পারমিশনের তালিকা পাওয়া যায়। Security ট্যাবে যান।

এতে এই কন্টেইনারের জন্য যেসব AD সাবজেক্টকে পারমিশন দেওয়া হয়েছে তাদের তালিকা থাকে। আপনি Advanced ট্যাবে দেওয়া পারমিশনের তালিকা দেখতে পারেন। দেখুন, HelpDesk গ্রুপকে পাসওয়ার্ড রিসেট করার অনুমতি দেওয়া আছে।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

আপনি ডেলিগেশন মাধ্যমে পূর্বে অ্যাসাইন করা প্রশাসনিক পারমিশনের একটি নির্দিষ্ট গ্রুপ রিভোক করতে পারেন। যে গ্রুপের নামকে পারমিশন ডেলিগেট করা হয়েছিল সেটি খুঁজে বের করুন এবং Remove ক্লিক করুন।

এছাড়া, Security → Advanced ট্যাবে আপনি ম্যানুয়ালি ডেলিগেটেড পারমিশন বিভিন্ন সিকিউরিটি গ্রুপের অ্যাসাইন করতে পারেন।

পাওয়ারশেল দিয়ে এক্টিভ ডিরেক্টরিতে পারমিশন ডেলিগেট করা

আপনি OU-তে ডেলিগেট করা পারমিশনের তালিকা পাওয়ারশেল ব্যবহার করে পেতে পারেন বা বর্তমান পারমিশন পরিবর্তন করতে পারেন। Get-ACL এবং Set-ACL কমান্ডলেট AD-তে পারমিশন দেখতে এবং পরিবর্তন করতে ব্যবহৃত হয় (এই পাওয়ারশেল কমান্ডলেটগুলো ফাইল এবং ফোল্ডারে NTFS পারমিশন ম্যানেজ করতে ব্যবহৃত হয়)।

নিচের সিম্পল স্ক্রিপ্ট AD-এ একটি নির্দিষ্ট Organizational Unit-এ ডেলিগেট করা সব নন-স্ট্যান্ডার্ড পারমিশন তালিকা করবে:

# 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)}}, `
*
}
# অ্যাসাইন করা OU পারমিশনের সাথে রিপোর্ট

আপনি গ্রাফিক্যাল Out-GridView কমান্ডলেট ব্যবহার করে ডেলিগেটেড পারমিশন রিপোর্ট পেতে পারেন:

$report| where {($_.IdentityReference -notlike "*BUILTIN*") -and ($_.IdentityReference -notlike "*NT AUTHORITY*") }| Out-GridView

বা ফर्दার বিশ্লেষণের জন্য এক্সেলে (আপনি পাওয়ারশেল স্ক্রিপ্ট থেকে সরাসরি এক্সেল ফাইলে ডেটা লিখতে পারেন) পারমিশন তালিকা CSV ফাইলে এক্সপোর্ট করুন:
$report | Export-Csv -Path "C:\reports\AD_OU_Permissions.csv" –NoTypeInformation

ফলাফল রিপোর্ট দেখায় যে HelpDesk গ্রুপকে OU-তে ব্যবহারকারী পাসওয়ার্ড রিসেট করার অনুমতি (ObjectTypeName=User-Force-Change-Password) ডেলিগেট করা হয়েছে।

এক্টিভ ডিরেক্টরিতে অ্যাডমিনিস্ট্রেটিভ পারমিশন ডেলিগেশন

আপনি 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

আপনি পাওয়ারশেল ব্যবহার করে Organizational Unit কন্টেইনারের পারমিশনও অ্যাসাইন করতে পারেন (এই উদাহরণে, পাসওয়ার্ড রিসেট করার অনুমতি ডেলিগেট করা হয়েছে):

$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

একইভাবে, আপনি পাওয়ারশেল ব্যবহার করে AD Organizational কন্টেইনারে অন্যান্য পারমিশন ডেলিগেট করতে পারেন।

  1. Active Directory ডোমেন নাম কীভাবে রিনেম করবেন?

  2. MS Office Group Policy Administrative Templates (ADMX) ইনস্টল করা

  3. Zabbix: এক্টিভ ডিরেক্টরিতে সিংগল সাইন-অন (SSO) অথেন্টিকেশন

  4. উইন্ডোজ ১০-এ Active Directory সক্ষম করা: ধাপে ধাপে সম্পূর্ণ গাইড