പരസ്യത്തിൽ നിന്ന് അൺലോഡ് ചെയ്യുന്നു. PowerShell-ന് പകരം Excel: AD-ലേക്കുള്ള അന്വേഷണങ്ങളും സിസ്റ്റം റിപ്പോർട്ടുകളും "മുട്ടിൽ"

ഗുഡ് ആഫ്റ്റർനൂൺ പ്രിയ വായനക്കാരെവരിക്കാരും, പവർഷെല്ലിൻ്റെയും ആക്ടീവ് ഡയറക്ടറിയുടെയും കഴിവുകൾ ഞങ്ങൾ പര്യവേക്ഷണം ചെയ്യുന്നത് തുടരുന്നു. നിങ്ങൾ ഓർക്കുന്നതുപോലെ, അവളുടെ എല്ലാ ഉപയോക്തൃ, കമ്പ്യൂട്ടർ അക്കൗണ്ടുകളും NTDS.dit ഡാറ്റാബേസിൽ സ്ഥിതിചെയ്യുന്നു, എല്ലാം മികച്ചതും കേന്ദ്രീകൃതവുമാണ്. ഒരു കമ്പനിക്ക് ഒന്നിലധികം സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർമാർ ഉള്ളപ്പോൾ, മാലിന്യങ്ങളും അനാവശ്യ യോഗ്യതാപത്രങ്ങളും കുമിഞ്ഞുകൂടുന്ന ഒരു സാഹചര്യം ഉടലെടുത്തേക്കാം. നാമെല്ലാവരും മനുഷ്യരാണ്, നമുക്ക് ചില കാര്യങ്ങൾ മറക്കാം, ചില നിമിഷങ്ങളിൽ നമുക്ക് ശ്രദ്ധ തിരിക്കാം, അത് മറക്കാനും ഇടയാക്കും. പ്രധാനപ്പെട്ട വിവരം. ആക്‌വി ഡയറക്‌ടറി ശേഖരിക്കപ്പെടുന്നില്ല എന്ന നിഗമനത്തിൽ ഞങ്ങൾ എത്തിച്ചേരുന്നു സജീവ ഉപയോക്താക്കൾ(തെറിച്ചു അല്ലെങ്കിൽ മറന്നു), ഒന്നുകിൽ, നല്ലത് സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർഅവരെ തിരിച്ചറിയുകയും പ്രവർത്തനരഹിതമാക്കുകയും തുടർന്ന് ആവശ്യമെങ്കിൽ ഇല്ലാതാക്കുകയും വേണം, അതാണ് ഞങ്ങൾ ചെയ്യുന്നത്.

ADUC സ്നാപ്പ്-ഇൻ വഴി

കഴിഞ്ഞ തവണ, സജീവമായ സ്നാപ്പ്-ഇൻ ഉപയോഗിക്കുന്നതിനുള്ള ഒരു ഉദാഹരണം ഞാൻ ഇതിനകം നിങ്ങൾക്ക് നൽകിയിട്ടുണ്ട് ഡയറക്ടറി ഉപയോക്താക്കൾകമ്പ്യൂട്ടറുകളും, അതിലൂടെ ഒരു മാസമായി ദൃശ്യമാകാത്ത ലോക്കൽ നെറ്റ്‌വർക്കിൽ കാണാതായ കമ്പ്യൂട്ടറുകൾക്കായി ഞങ്ങൾ തിരഞ്ഞു. ഇപ്പോൾ ഞങ്ങൾ ഉപയോക്തൃ അക്കൗണ്ടുകളിലും ഇത് ചെയ്യും. എനിക്ക് AD ഉണ്ട് വിൻഡോസ് സെർവർ 2012 R2, ADUC തുറക്കുക, ഇത് ചെയ്യുന്നതിന് WIN+R അമർത്തി dsa.msc നൽകുക.

തുറക്കുന്ന അഭ്യർത്ഥന ഫോമിൽ, നൽകുക:

  • അഭ്യർത്ഥന പേര് > എന്നെ സംബന്ധിച്ചിടത്തോളം ഇത് നഷ്ടപ്പെട്ട ഉപയോക്താക്കളാണ്
  • ആവശ്യമെങ്കിൽ വിവരണം
  • റൂട്ട് അഭ്യർത്ഥിക്കുക> ഇവിടെ നിങ്ങൾക്ക് മുഴുവൻ ഡൊമെയ്‌നും വിടാം, അല്ലെങ്കിൽ ആവശ്യമുള്ള OU-ൽ അത് വ്യക്തമാക്കുക

തുടർന്ന് റിക്വസ്റ്റ് ബട്ടണിൽ ക്ലിക്ക് ചെയ്യുക.

ഉപയോക്തൃ ടാബിൽ "അവസാനം ലോഗിൻ ചെയ്തതിന് ശേഷമുള്ള ദിവസങ്ങളുടെ എണ്ണം" എന്ന ഇനം ഞങ്ങൾ കാണുന്നു, ഉദാഹരണത്തിന്, ഞാൻ അത് 60 ദിവസമായി സജ്ജമാക്കി.

തൽഫലമായി, പ്രവർത്തനരഹിതമായ ജീവനക്കാരുടെ അക്കൗണ്ടുകളുടെ ലിസ്റ്റ് നിങ്ങൾക്ക് ലഭിക്കും.

പവർഷെൽ സ്നാപ്പ്-ഇൻ വഴി

പവർഷെല്ലിലൂടെയും ഇതുതന്നെ ചെയ്യാം. ചുമതലയുള്ള കോഡ് ഞാൻ ഉടൻ നൽകും തിരച്ചിൽ നടക്കുന്നു നിഷ്ക്രിയ ഉപയോക്താക്കൾ, ഇതിനായി ഞാൻ 45 ദിവസത്തെ കാലയളവ് തിരഞ്ഞെടുത്തു, ഉപയോക്തൃ ഡാറ്റ പ്രവർത്തനരഹിതമാക്കി പ്രത്യേകം നിയുക്ത OU-ലേക്ക് നീക്കുന്നു.

$date_with_offset= (Get-Date).AddDays(-45)
$users = Get-ADUser -Properties LastLogonDate -Filter (LastLogonDate -lt $date_with_offset ) | LastLogonDate അടുക്കുക
foreach ($user in $user) (set-aduser $user -enabled $false; move-adobject -identity $user -targetpath "ou=Fired,ou=Moscow L. ഉപയോക്താക്കൾ,ou=ലൊക്കേഷൻ,dc=msk,dc= contoso,dc=com")
Get-ADUser -Properties LastLogonDate -Filter (LastLogonDate -lt $date_with_offset ) | LastLogonDate | അടുക്കുക FT നാമം, അവസാന ലോഗിൻ തീയതി -ഓട്ടോ സൈസ് | ഔട്ട്-ഫയൽ c:\Script\users.txt

  • ആദ്യ വരിയിൽ നിങ്ങൾ തിരയൽ പദം സജ്ജമാക്കിയ ഒരു വേരിയബിൾ പ്രഖ്യാപിക്കുന്നു
  • ഒരു വേരിയബിൾ സൃഷ്ടിച്ച് അവസാന ലോഗിൻ സമയത്തെ അടിസ്ഥാനമാക്കി ഒരു തിരഞ്ഞെടുപ്പ് നടത്തുക
  • ഉപയോക്താക്കളെ നീക്കുന്നു

  • ഒരു ഫയലിലേക്ക് ഒരു റിപ്പോർട്ട് ഉണ്ടാക്കുന്നു

ഉപയോക്താവുമായി പ്രവർത്തിക്കുന്നത് സംബന്ധിച്ച് കൂടുതൽ ഉപയോഗപ്രദമായ കാര്യങ്ങൾ. താഴെയുള്ള കമാൻഡുകൾ ഉപയോഗിക്കുന്നതിന് മുമ്പ്, കമാൻഡ് വഴി നിങ്ങൾ ആക്റ്റീവ് ഡയറക്ടറി മൊഡ്യൂൾ ലോഡ് ചെയ്യേണ്ടതുണ്ട്

Get-Help Get-ADUser

സമർപ്പിച്ചിരിക്കുന്നു ശക്തി ഉപയോഗിക്കുന്നു AD അഡ്മിനിസ്ട്രേഷനുള്ള ഷെൽ. ഒരു ആരംഭ പോയിൻ്റ് എന്ന നിലയിൽ, 10 സാധാരണ എഡി അഡ്മിനിസ്ട്രേഷൻ ടാസ്‌ക്കുകൾ എടുക്കാനും പവർഷെൽ ഉപയോഗിച്ച് അവ എങ്ങനെ ലളിതമാക്കാമെന്ന് നോക്കാനും രചയിതാവ് തീരുമാനിച്ചു:

  1. ഉപയോക്തൃ പാസ്‌വേഡ് പുനഃസജ്ജമാക്കുക
  2. അക്കൗണ്ടുകൾ സജീവമാക്കുകയും നിർജ്ജീവമാക്കുകയും ചെയ്യുക
  3. ഉപയോക്തൃ അക്കൗണ്ട് അൺലോക്ക് ചെയ്യുക
  4. നിങ്ങളുടെ അക്കൗണ്ട് ഇല്ലാതാക്കുക
  5. ശൂന്യമായ ഗ്രൂപ്പുകൾ കണ്ടെത്തുക
  6. ഒരു ഗ്രൂപ്പിലേക്ക് ഉപയോക്താക്കളെ ചേർക്കുക
  7. ഗ്രൂപ്പ് അംഗങ്ങളുടെ പട്ടിക
  8. കാലഹരണപ്പെട്ട കമ്പ്യൂട്ടർ അക്കൗണ്ടുകൾ കണ്ടെത്തുക
  9. ഒരു കമ്പ്യൂട്ടർ അക്കൗണ്ട് നിർജ്ജീവമാക്കുക
  10. തരം അനുസരിച്ച് കമ്പ്യൂട്ടറുകൾ കണ്ടെത്തുക

കൂടാതെ, രചയിതാവ് ഒരു ബ്ലോഗ് പരിപാലിക്കുന്നു (തീർച്ചയായും പവർഷെൽ ഉപയോഗിച്ച്), നോക്കാൻ ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു - jdhitsolutions.com/blog. കൂടാതെ അദ്ദേഹത്തിൻ്റെ ട്വിറ്ററിൽ നിന്ന് ഏറ്റവും കാലികമായ വിവരങ്ങൾ നിങ്ങൾക്ക് ലഭിക്കും twitter.com/jeffhicks.
അതിനാൽ, "പവർഷെൽ ഉപയോഗിച്ച് പരിഹരിച്ച മികച്ച 10 സജീവ ഡയറക്‌ടറി ടാസ്‌ക്കുകൾ" എന്ന ലേഖനത്തിൻ്റെ വിവർത്തനം ചുവടെയുണ്ട്.

സജീവ നിയന്ത്രണംഡയറക്ടറി (എഡി) ഉപയോഗിക്കുന്നു വിൻഡോസ് പവർഷെൽ- ഇത് നിങ്ങൾ ചിന്തിക്കുന്നതിലും എളുപ്പമാണ്, അത് നിങ്ങൾക്ക് തെളിയിക്കാൻ ഞാൻ ആഗ്രഹിക്കുന്നു. നിങ്ങൾക്ക് താഴെയുള്ള സ്‌ക്രിപ്റ്റുകൾ എടുത്ത് അവ ഉപയോഗിച്ച് നിരവധി എഡി മാനേജ്‌മെൻ്റ് ടാസ്‌ക്കുകൾ പരിഹരിക്കാനാകും.

ആവശ്യകതകൾ

AD നിയന്ത്രിക്കാൻ PowerShell ഉപയോഗിക്കുന്നതിന്, നിങ്ങൾ നിരവധി ആവശ്യകതകൾ പാലിക്കേണ്ടതുണ്ട്. ഒരു Windows 7 കമ്പ്യൂട്ടർ ഉപയോഗിച്ച് AD cmdlets എങ്ങനെ പ്രവർത്തിക്കുന്നുവെന്ന് ഞാൻ ഒരു ഉദാഹരണമായി കാണിക്കാൻ പോകുന്നു.
cmdlets ഉപയോഗിക്കുന്നതിന്, നിങ്ങൾക്ക് ഒരു Windows Server 2008 R2 ഡൊമെയ്ൻ കൺട്രോളർ ഉണ്ടായിരിക്കണം, അല്ലെങ്കിൽ നിങ്ങൾക്ക് ലെഗസി DC-കളിൽ സജീവ ഡയറക്ടറി മാനേജ്‌മെൻ്റ് ഗേറ്റ്‌വേ സേവനം ഡൗൺലോഡ് ചെയ്‌ത് ഇൻസ്റ്റാൾ ചെയ്യാം. ഇൻസ്റ്റാളുചെയ്യുന്നതിനുമുമ്പ് ദയവായി ഡോക്യുമെൻ്റേഷൻ ശ്രദ്ധാപൂർവ്വം വായിക്കുക; സിഡി റീബൂട്ട് ആവശ്യമാണ്.
ക്ലയൻ്റ് ഭാഗത്ത്, Windows 7 അല്ലെങ്കിൽ Windows 8 എന്നിവയ്‌ക്കായി ഡൗൺലോഡ് ചെയ്‌ത് ഇൻസ്റ്റാൾ ചെയ്യുക (RSAT). വിൻഡോസ് 7-ൽ, നിങ്ങൾ തുറക്കേണ്ടതുണ്ട് നിയന്ത്രണ പാനലുകൾഅധ്യായം പ്രോഗ്രാമുകൾതിരഞ്ഞെടുക്കുക ഓണാക്കുകയോ ഓഫാക്കുകയോ ചെയ്യുക വിൻഡോസ് സവിശേഷതകൾ(വിൻഡോസ് ഫീച്ചറുകൾ ഓൺ അല്ലെങ്കിൽ ഓഫ് ചെയ്യുക). കണ്ടെത്തുക റിമോട്ട് സെർവർ അഡ്മിനിസ്ട്രേഷൻ ടൂളുകൾവിഭാഗം വികസിപ്പിക്കുകയും ചെയ്യുക റോൾ അഡ്മിനിസ്ട്രേഷൻ ടൂളുകൾ. AD DS, AD LDS ടൂളുകൾ എന്നിവയ്‌ക്കായി ഉചിതമായ ഇനങ്ങൾ തിരഞ്ഞെടുക്കുക, പ്രത്യേകിച്ച് ഇനം തിരഞ്ഞെടുക്കേണ്ടതുണ്ടെന്ന കാര്യം ശ്രദ്ധിക്കുക സജീവ ഡയറക്ടറി മൊഡ്യൂൾ വിൻഡോസിനായിപവർഷെൽ, ചിത്രം 1. (Windows 8-ൽ, എല്ലാ ടൂളുകളും ഡിഫോൾട്ടായി തിരഞ്ഞെടുക്കപ്പെടുന്നു). ഇപ്പോൾ ഞങ്ങൾ പ്രവർത്തിക്കാൻ തയ്യാറാണ്.

ചിത്രം.1 AD DS, AD LDS ടൂളുകൾ പ്രവർത്തനക്ഷമമാക്കുന്നു

ഡൊമെയ്ൻ അഡ്മിനിസ്ട്രേറ്റർ അവകാശങ്ങളുള്ള ഒരു അക്കൗണ്ട് ഉപയോഗിച്ചാണ് ഞാൻ ലോഗിൻ ചെയ്തിരിക്കുന്നത്. ഞാൻ കാണിക്കുന്ന മിക്ക cmdlet-കളും ഇതര ക്രെഡൻഷ്യലുകൾ വ്യക്തമാക്കാൻ നിങ്ങളെ അനുവദിക്കും. ഏത് സാഹചര്യത്തിലും, സഹായം വായിക്കാൻ ഞാൻ ശുപാർശ ചെയ്യുന്നു ( സഹായം തേടു) കൂടാതെ ഞാൻ താഴെ കാണിക്കുന്ന ഉദാഹരണങ്ങളും.
ഒരു PowerShell സെഷൻ ആരംഭിച്ച് മൊഡ്യൂൾ ഇറക്കുമതി ചെയ്യുക:

PS C:\> ഇറക്കുമതി-മൊഡ്യൂൾ ActiveDirectory

ഇറക്കുമതി ഒരു പുതിയ PSDrive സൃഷ്ടിക്കുന്നു, പക്ഷേ ഞങ്ങൾ അത് ഉപയോഗിക്കില്ല. എന്നിരുന്നാലും, ഇറക്കുമതി ചെയ്ത മൊഡ്യൂളിൽ ഏതൊക്കെ കമാൻഡുകൾ ലഭ്യമാണ് എന്ന് നിങ്ങൾക്ക് കാണാൻ കഴിയും.

PS C:\> get-command -module ActiveDirectory

ഈ കമാൻഡുകളുടെ ഭംഗി എന്തെന്നാൽ, ഒരു എഡി ഒബ്‌ജക്‌റ്റിൽ എനിക്ക് ഒരു കമാൻഡ് ഉപയോഗിക്കാൻ കഴിയുമെങ്കിൽ, അത് 10, 100, കൂടാതെ 1000 എന്നിവയിലും ഉപയോഗിക്കാം. ഈ ചില cmdlets എങ്ങനെ പ്രവർത്തിക്കുന്നുവെന്ന് നോക്കാം.

ടാസ്ക് 1: ഉപയോക്തൃ പാസ്‌വേഡ് പുനഃസജ്ജമാക്കുക

ഒരു സാധാരണ ടാസ്ക്കിൽ നിന്ന് നമുക്ക് ആരംഭിക്കാം: ഒരു ഉപയോക്താവിൻ്റെ പാസ്വേഡ് പുനഃസജ്ജമാക്കൽ. ഒരു cmdlet ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് എളുപ്പത്തിലും ലളിതമായും ചെയ്യാൻ കഴിയും സെറ്റ്-ADAccountPassword. തന്ത്രപരമായ ഭാഗം അതാണ് പുതിയ പാസ്വേഡ്ഒരു സംരക്ഷിത സ്ട്രിംഗായി യോഗ്യത നേടിയിരിക്കണം: ഒരു പവർഷെൽ സെഷൻ്റെ സമയത്തേക്ക് എൻക്രിപ്റ്റ് ചെയ്യുകയും മെമ്മറിയിൽ സൂക്ഷിക്കുകയും ചെയ്യുന്ന ഒരു വാചകം. ആദ്യം, നമുക്ക് പുതിയ പാസ്‌വേഡ് ഉപയോഗിച്ച് ഒരു വേരിയബിൾ ഉണ്ടാക്കാം:
PS C:\> $new=Read-Host "പുതിയ പാസ്‌വേഡ് നൽകുക" -AsSecureString

തുടർന്ന്, ഒരു പുതിയ പാസ്‌വേഡ് നൽകുക:

ഇപ്പോൾ നമുക്ക് അക്കൗണ്ട് എക്‌സ്‌ട്രാക്‌റ്റ് ചെയ്യാം (ഉപയോഗിച്ച് samഅക്കൗണ്ട്നാമം- മികച്ച ഓപ്ഷൻ) കൂടാതെ ഒരു പുതിയ പാസ്‌വേഡ് സജ്ജമാക്കുക. ജാക്ക് ഫ്രോസ്റ്റ് എന്ന ഉപയോക്താവിനുള്ള ഒരു ഉദാഹരണം ഇതാ:

PS C:\> സെറ്റ്-ADAccountPassword jfrost -NewPassword $new

നിർഭാഗ്യവശാൽ, ഈ cmdlet-ൽ ഒരു ബഗ് ഉണ്ട്: -പസ്ത്രു, -അങ്ങനെയെങ്കിൽ, ഒപ്പം - സ്ഥിരീകരിക്കുകപ്രവർത്തിക്കുന്നില്ല. നിങ്ങൾ ഒരു കുറുക്കുവഴി തിരഞ്ഞെടുക്കുകയാണെങ്കിൽ, ഇത് പരീക്ഷിക്കുക:

PS C:\> Set-ADAccountPassword jfrost -NewPassword (ConvertTo-SecureString -AsPlainText -String "P@ssw0rd1z3" -force)

തൽഫലമായി, അടുത്ത തവണ ലോഗിൻ ചെയ്യുമ്പോൾ ജാക്ക് അവൻ്റെ പാസ്‌വേഡ് മാറ്റേണ്ടതുണ്ട്, അതിനാൽ ഞാൻ അക്കൗണ്ട് പരിഷ്‌ക്കരിക്കുന്നു സെറ്റ്-ADUser.

PS C:\> Set-ADUser jfrost -ChangePasswordAtLogon $True

cmdlet പ്രവർത്തിപ്പിക്കുന്നതിൻ്റെ ഫലങ്ങൾ കൺസോളിൽ എഴുതിയിട്ടില്ല. ഇത് ചെയ്യേണ്ടതുണ്ടെങ്കിൽ, ഉപയോഗിക്കുക - സത്യം. എന്നാൽ cmdlet ഉപയോഗിച്ച് ഉപയോക്തൃനാമം വീണ്ടെടുക്കുന്നതിലൂടെ പ്രവർത്തനം വിജയകരമാണോ അല്ലയോ എന്ന് എനിക്ക് കണ്ടെത്താനാകും Get-ADUserസ്വത്ത് വ്യക്തമാക്കുന്നതും പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു, ചിത്രം 2 ൽ കാണിച്ചിരിക്കുന്നത് പോലെ.


അരി. 2. പാസ്‌വേഡ് കാലഹരണപ്പെട്ട പ്രോപ്പർട്ടി ഉള്ള Get-ADUser Cmdlet ൻ്റെ ഫലങ്ങൾ

ചുവടെയുള്ള വരി: PowerShell ഉപയോഗിച്ച് ഒരു ഉപയോക്താവിൻ്റെ പാസ്‌വേഡ് പുനഃസജ്ജമാക്കുന്നത് ബുദ്ധിമുട്ടുള്ള കാര്യമല്ല. പാസ്‌വേഡ് പുനഃസജ്ജമാക്കുന്നതും സ്നാപ്പിലൂടെ എളുപ്പമാണെന്ന് ഞാൻ സമ്മതിക്കുന്നു സജീവ ഡയറക്ടറി ഉപയോക്താക്കളും കമ്പ്യൂട്ടറുകളുംകൺസോളുകൾ മൈക്രോസോഫ്റ്റ് മാനേജ്മെൻ്റ്കൺസോൾ (എംഎംസി).പക്ഷേ PowerShell ഉപയോഗിക്കുന്നുനിങ്ങൾക്ക് ഒരു ടാസ്‌ക്ക് ഡെലിഗേറ്റ് ചെയ്യണമെങ്കിൽ, മുകളിൽ സൂചിപ്പിച്ച സ്‌നാപ്പ്-ഇൻ വിന്യസിക്കാൻ താൽപ്പര്യമില്ലെങ്കിൽ അല്ലെങ്കിൽ ഒരു വലിയ ഓട്ടോമേറ്റഡ് ഐടി പ്രോസസിൻ്റെ ഭാഗമായി ഒരു പാസ്‌വേഡ് പുനഃസജ്ജമാക്കുകയാണെങ്കിൽ അനുയോജ്യം.

ടാസ്ക് 2: അക്കൗണ്ടുകൾ സജീവമാക്കുകയും നിർജ്ജീവമാക്കുകയും ചെയ്യുക

ഇനി അക്കൗണ്ട് ഡീആക്ടിവേറ്റ് ചെയ്യാം. ജാക്ക് ഫ്രോസ്റ്റിനൊപ്പം പ്രവർത്തിക്കുന്നത് തുടരാം. ഈ കോഡ് പരാമീറ്റർ ഉപയോഗിക്കുന്നു -അങ്ങനെയെങ്കിൽ, എൻ്റെ കമാൻഡ് പ്രവർത്തിപ്പിക്കാതെ തന്നെ പരീക്ഷിക്കുന്നതിന് മാറ്റങ്ങൾ വരുത്തുന്ന മറ്റ് കോമാഡ്‌ലെറ്റുകളിൽ നിങ്ങൾക്ക് കണ്ടെത്താനാകും.

PS C:\> Disable-ADAccount jfrost -whatif എങ്കിൽ: "CN=ജാക്ക് ഫ്രോസ്റ്റ്, OU=സ്റ്റാഫ്,OU=ടെസ്റ്റിംഗ്,DC=GLOBOMANTICS,DC=local" എന്ന ലക്ഷ്യത്തിൽ "സെറ്റ്" പ്രവർത്തനം നടത്തുന്നു.

ഇപ്പോൾ നമുക്ക് ഇത് യഥാർത്ഥമായി നിർജ്ജീവമാക്കാം:

PS C:\> പ്രവർത്തനരഹിതമാക്കുക-ADAA അക്കൗണ്ട് jfrost

അക്കൗണ്ട് സജീവമാക്കാനുള്ള സമയം വരുമ്പോൾ, ഏത് cmdlet ഞങ്ങളെ സഹായിക്കും?

PS C:\> പ്രവർത്തനക്ഷമമാക്കുക-ADAccount jfrost

ഈ cmdlets ഒരു പൈപ്പ്‌ലൈൻ എക്‌സ്‌പ്രഷനിൽ ഉപയോഗിക്കാൻ കഴിയും, ഇത് നിങ്ങൾക്ക് ഇഷ്ടമുള്ളത്ര അക്കൗണ്ടുകൾ സജീവമാക്കാനോ നിർജ്ജീവമാക്കാനോ അനുവദിക്കുന്നു. ഉദാഹരണത്തിന്, ഈ കോഡ് സെയിൽസ് ഡിപ്പാർട്ട്മെൻ്റിലെ എല്ലാ അക്കൗണ്ടുകളും നിർജ്ജീവമാക്കും

PS C:\> get-aduser -filter "department -eq "sales"" | പ്രവർത്തനരഹിതമാക്കുക-അക്കൗണ്ട്

തീർച്ചയായും, ഇതിനായി ഒരു ഫിൽട്ടർ എഴുതുക Get-ADUserവളരെ സങ്കീർണ്ണമാണ്, എന്നാൽ ഇവിടെയാണ് പരാമീറ്ററിൻ്റെ ഉപയോഗം -അങ്ങനെയെങ്കിൽ cmdlet സഹിതം അപ്രാപ്തമാക്കുക-ADAcountരക്ഷയ്ക്കായി വരുന്നു.

ടാസ്ക് 3: ഉപയോക്തൃ അക്കൗണ്ട് അൺലോക്ക് ചെയ്യുക

ഒരു പുതിയ പാസ്‌വേഡ് നൽകാൻ ശ്രമിക്കുന്നതിനിടെ ജാക്ക് തൻ്റെ അക്കൗണ്ട് ലോക്ക് ചെയ്ത ഒരു സാഹചര്യം പരിഗണിക്കുക. GUI വഴി അവൻ്റെ അക്കൗണ്ട് കണ്ടെത്താൻ ശ്രമിക്കുന്നതിനുപകരം, ഒരു ലളിതമായ കമാൻഡ് ഉപയോഗിച്ച് അൺലോക്കിംഗ് നടപടിക്രമം നടത്താം.

PS C:\> Unlock-ADAAccount jfrost

cmdlet പാരാമീറ്ററുകളും പിന്തുണയ്ക്കുന്നു -അങ്ങനെയെങ്കിൽഒപ്പം -സ്ഥിരീകരിക്കുക.

ടാസ്ക് 4: അക്കൗണ്ട് ഇല്ലാതാക്കുക

നിങ്ങൾ എത്ര ഉപയോക്താക്കളെ നീക്കം ചെയ്യുന്നു എന്നത് പ്രശ്നമല്ല - cmdlet ഉപയോഗിച്ച് ഇത് ചെയ്യാൻ എളുപ്പമാണ് Remove-ADUser. എനിക്ക് ജാക്ക് ഫ്രോസ്റ്റിനെ നീക്കം ചെയ്യാൻ താൽപ്പര്യമില്ല, എന്നാൽ എനിക്ക് വേണമെങ്കിൽ, ഞാൻ ഇതുപോലുള്ള കോഡ് ഉപയോഗിക്കും:

PS C:\> Remove-ADUser jfrost -whatif: "CN=Jack Frost,OU=staff,OU=Testing,DC=GLOBOMANTICS,DC=local" എന്ന ലക്ഷ്യത്തിൽ "നീക്കംചെയ്യുക" എന്ന പ്രവർത്തനം നടത്തുകയാണെങ്കിൽ.

അല്ലെങ്കിൽ എനിക്ക് ഒന്നിലധികം ഉപയോക്താക്കളെ നൽകാനും ഒരു ലളിതമായ കമാൻഡ് ഉപയോഗിച്ച് അവരെ ഇല്ലാതാക്കാനും കഴിയും:

PS C:\> get-aduser -filter "enabled -eq "false"" -property When Changed -SearchBase "OU=Employees, DC=Globomantics,DC=Local" | എവിടെ ($_.WhenChanged -le (Get-Date).AddDays(-180)) | Remove-ADuser -whatif

ഈ കമാൻഡ് 180 ദിവസമോ അതിൽ കൂടുതലോ പരിഷ്‌ക്കരിക്കാത്ത ഏതെങ്കിലും പ്രവർത്തനരഹിതമായ എംപ്ലോയീസ് OU അക്കൗണ്ടുകൾ കണ്ടെത്തി ഇല്ലാതാക്കും.

ടാസ്ക് 5: ശൂന്യമായ ഗ്രൂപ്പുകൾ കണ്ടെത്തൽ

ഗ്രൂപ്പുകൾ കൈകാര്യം ചെയ്യുന്നത് അനന്തവും നന്ദിയില്ലാത്തതുമായ ഒരു ജോലിയാണ്. ശൂന്യമായ ഗ്രൂപ്പുകൾ കണ്ടെത്താൻ നിരവധി മാർഗങ്ങളുണ്ട്. നിങ്ങളുടെ ഓർഗനൈസേഷനെ ആശ്രയിച്ച് ചില പദപ്രയോഗങ്ങൾ മറ്റുള്ളവയേക്കാൾ നന്നായി പ്രവർത്തിച്ചേക്കാം. ബിൽറ്റ്-ഇൻ ഗ്രൂപ്പുകൾ ഉൾപ്പെടെ ഡൊമെയ്‌നിലെ എല്ലാ ഗ്രൂപ്പുകളെയും ചുവടെയുള്ള കോഡ് കണ്ടെത്തും.

PS C:\> get-adgroup -filter * | എവിടെ (-അല്ല ($_ | get-adgroupmember)) | പേര് തിരഞ്ഞെടുക്കുക

നിങ്ങൾക്ക് നൂറുകണക്കിന് അംഗങ്ങളുള്ള ഗ്രൂപ്പുകൾ ഉണ്ടെങ്കിൽ, ഈ കമാൻഡ് ഉപയോഗിക്കുന്നത് വളരെ സമയമെടുക്കും; ADGroupMember നേടുകഓരോ ഗ്രൂപ്പും പരിശോധിക്കുന്നു. നിങ്ങൾക്ക് പരിമിതപ്പെടുത്താനോ ഇഷ്ടാനുസൃതമാക്കാനോ കഴിയുമെങ്കിൽ അത് മികച്ചതായിരിക്കും.
മറ്റൊരു സമീപനം ഇതാ:

PS C:\> get-adgroup -filter "members -notlike "*" -AND GroupScope -eq "Universal"" -SearchBase "OU=Groups,OU=Employees,DC=Globomantics, DC=local" | പേര്, ഗ്രൂപ്പ്* തിരഞ്ഞെടുക്കുക

OU ഗ്രൂപ്പുകളിൽ അംഗത്വമില്ലാത്ത എല്ലാ യൂണിവേഴ്സൽ ഗ്രൂപ്പുകളും ഈ കമാൻഡ് കണ്ടെത്തുകയും ചില പ്രോപ്പർട്ടികൾ പ്രദർശിപ്പിക്കുകയും ചെയ്യുന്നു. ഫലം ചിത്രം 3 ൽ കാണിച്ചിരിക്കുന്നു.


അരി. 3. സാർവത്രിക ഗ്രൂപ്പുകൾ തിരയുകയും ഫിൽട്ടർ ചെയ്യുകയും ചെയ്യുക

ടാസ്ക് 6: ഒരു ഗ്രൂപ്പിലേക്ക് ഉപയോക്താക്കളെ ചേർക്കുന്നു

നമുക്ക് ജാക്ക് ഫ്രോസ്റ്റിനെ ചിക്കാഗോ ഐടി ഗ്രൂപ്പിലേക്ക് ചേർക്കാം:

PS C:\> add-adgroupmember "chicago IT" -Members jfrost

അതെ, അത് വളരെ ലളിതമാണ്. നിങ്ങൾക്ക് ഗ്രൂപ്പുകളിലേക്ക് നൂറുകണക്കിന് ഉപയോക്താക്കളെ എളുപ്പത്തിൽ ചേർക്കാനും കഴിയും, എന്നിരുന്നാലും എനിക്ക് ഇത് അൽപ്പം വിചിത്രമായി തോന്നുന്നു:

PS C:\> Add-ADGroupMember "Chicago Employees" -member (get-aduser -filter "city -eq "Chicago"")

ചിക്കാഗോയിൽ സിറ്റി പ്രോപ്പർട്ടി ഉള്ള എല്ലാ ഉപയോക്താക്കളെയും കണ്ടെത്താൻ ഞാൻ പാരന്തറ്റിക്കൽ പൈപ്പ്ലൈൻ എക്സ്പ്രഷൻ ഉപയോഗിച്ചു. പരാൻതീസിസിലെ കോഡ് എക്സിക്യൂട്ട് ചെയ്യുകയും തത്ഫലമായുണ്ടാകുന്ന ഒബ്ജക്റ്റുകൾ -മെമ്പർ പാരാമീറ്ററിലേക്ക് കൈമാറുകയും ചെയ്യുന്നു. ഓരോ ഉപയോക്തൃ ഒബ്ജക്റ്റും ചിക്കാഗോ എംപ്ലോയീസ് ഗ്രൂപ്പിലേക്ക് ചേർക്കുന്നു. ഞങ്ങൾ 5 അല്ലെങ്കിൽ 5000 ഉപയോക്താക്കളുമായി ഇടപഴകുന്നുണ്ടോ എന്നത് പ്രശ്നമല്ല, ഗ്രൂപ്പ് അംഗത്വങ്ങൾ അപ്‌ഡേറ്റ് ചെയ്യുന്നതിന് കുറച്ച് നിമിഷങ്ങൾ മാത്രമേ എടുക്കൂ. ഉപയോഗിച്ചും ഈ പദപ്രയോഗം എഴുതാം ഓരോ വസ്തുവിനുംഎന്താണ് കൂടുതൽ സൗകര്യപ്രദമായത്:

PS C:\> Get-ADUser -filter "city -eq "Chicago"" | foreach (Add-ADGroupMember "ഷിക്കാഗോ എംപ്ലോയീസ്" -അംഗം $_)

ടാസ്ക് 7: ഗ്രൂപ്പ് അംഗങ്ങളെ പട്ടികപ്പെടുത്തുക

ഒരു പ്രത്യേക ഗ്രൂപ്പിൽ ആരാണെന്ന് അറിയാൻ നിങ്ങൾ ആഗ്രഹിച്ചേക്കാം. ഉദാഹരണത്തിന്, ഡൊമെയ്ൻ അഡ്മിൻസ് ഗ്രൂപ്പിലെ അംഗം ആരാണെന്ന് നിങ്ങൾ ഇടയ്ക്കിടെ കണ്ടെത്തണം:

PS C:\> Get-ADGroupMember "Domain Admins"

ചിത്രം 4 ഫലം കാണിക്കുന്നു.


അരി. 4. ഡൊമെയ്ൻ അഡ്മിൻസ് ഗ്രൂപ്പിലെ അംഗങ്ങൾ

cmdlet ഓരോ ഗ്രൂപ്പ് അംഗത്തിനും വേണ്ടിയുള്ള AD ഒബ്ജക്റ്റ് പ്രദർശിപ്പിക്കുന്നു. നെസ്റ്റഡ് ഗ്രൂപ്പുകളുമായി എന്തുചെയ്യണം? എൻ്റെ ഗ്രൂപ്പ് ചിക്കാഗോ എല്ലാ ഉപയോക്താക്കളും നെസ്റ്റഡ് ഗ്രൂപ്പുകളുടെ ഒരു ശേഖരമാണ്. എല്ലാ അക്കൗണ്ടുകളുടെയും ഒരു ലിസ്റ്റ് ലഭിക്കാൻ, ഞാൻ പാരാമീറ്റർ ഉപയോഗിക്കേണ്ടതുണ്ട് -ആവർത്തനപരം.

PS C:\> Get-ADGroupMember "Chicago All Users" -Recursive | വിശിഷ്ടമായ പേര് തിരഞ്ഞെടുക്കുക

നിങ്ങൾക്ക് മറ്റൊരു വഴിക്ക് പോകണമെങ്കിൽ - ഒരു ഉപയോക്താവ് ഏത് ഗ്രൂപ്പിലാണെന്ന് കണ്ടെത്തുക - ഉപയോക്തൃ പ്രോപ്പർട്ടി ഉപയോഗിക്കുക മെമ്പർഓഫ്:

PS C:\> get-aduser jfrost -property Memberof | തിരഞ്ഞെടുക്കുക -ExpandProperty memberOf CN=NewTest,OU=ഗ്രൂപ്പുകൾ,OU=ജീവനക്കാർ, DC=GLOBOMANTICS,DC=ലോക്കൽ CN=ചിക്കാഗോ ടെസ്റ്റ്,OU=ഗ്രൂപ്പുകൾ,OU=ജീവനക്കാർ, DC=GLOBOMANTICS,DC=ലോക്കൽ CNOU=പ്രാദേശിക CN, ഗ്രൂപ്പുകൾ,OU=ജീവനക്കാർ, DC=GLOBOMANTICS,DC=പ്രാദേശിക CN=ഷിക്കാഗോ സെയിൽസ് ഉപയോക്താക്കൾ,OU=ഗ്രൂപ്പുകൾ,OU=ജീവനക്കാർ, DC=GLOBOMANTICS,DC=ലോക്കൽ

ഞാൻ പരാമീറ്റർ ഉപയോഗിച്ചു - പ്രോപ്പർട്ടി വികസിപ്പിക്കുകപേരുകൾ പ്രദർശിപ്പിക്കാൻ മെമ്പർഓഫ്വരികൾ പോലെ.

ടാസ്ക് 8: കാലഹരണപ്പെട്ട കമ്പ്യൂട്ടർ അക്കൗണ്ടുകൾ കണ്ടെത്തുക

ഈ ചോദ്യം എന്നോട് ഒരുപാട് ചോദിക്കാറുണ്ട്: "കാലഹരണപ്പെട്ട കമ്പ്യൂട്ടർ അക്കൗണ്ടുകൾ എങ്ങനെ കണ്ടെത്താം?" ഞാൻ എപ്പോഴും ഉത്തരം നൽകുന്നു: "നിങ്ങൾക്ക് എന്താണ് കാലഹരണപ്പെട്ടത്?" എപ്പോൾ എന്ന് കമ്പനികൾ നിർവ്വചിക്കുന്നു അക്കൗണ്ട്കമ്പ്യൂട്ടർ (അല്ലെങ്കിൽ ഉപയോക്താവ്, അത് പ്രശ്നമല്ല) കാലഹരണപ്പെട്ടതായി കണക്കാക്കുന്നു, അത് പിന്നീട് ഉപയോഗിക്കാൻ കഴിയില്ല. എന്നെ സംബന്ധിച്ചിടത്തോളം, പാസ്‌വേഡുകൾ മാറ്റാത്ത അക്കൗണ്ടുകൾ ഞാൻ ശ്രദ്ധിക്കുന്നു നിശ്ചിത കാലയളവ്സമയം. എനിക്ക് ഈ കാലയളവ് 90 ദിവസമാണ് - ഈ കാലയളവിൽ കമ്പ്യൂട്ടർ ഡൊമെയ്‌നിനൊപ്പം പാസ്‌വേഡ് മാറ്റിയിട്ടില്ലെങ്കിൽ, മിക്കവാറും അത് ഓഫ്‌ലൈനും കാലഹരണപ്പെട്ടതുമാണ്. Cmdlet ഉപയോഗിച്ചു Get-ADComputer:

PS C:\> get-adcomputer -filter "Passwordlastset -lt "1/1/2012"" -properties *| പേര്, പാസ്‌വേഡ് അവസാന സെറ്റ് തിരഞ്ഞെടുക്കുക

ഫിൽട്ടർ മികച്ച മൂല്യത്തിൽ പ്രവർത്തിക്കുന്നു, എന്നാൽ 2012 ജനുവരി 1 മുതൽ പാസ്‌വേഡുകൾ മാറ്റാത്ത എല്ലാ കമ്പ്യൂട്ടർ അക്കൗണ്ടുകൾക്കും ഈ കോഡ് അപ്‌ഡേറ്റ് ചെയ്യും. ഫലങ്ങൾ ചിത്രം 5 ൽ കാണിച്ചിരിക്കുന്നു.


അരി. 5. കാലഹരണപ്പെട്ട കമ്പ്യൂട്ടർ അക്കൗണ്ടുകൾ കണ്ടെത്തുക

മറ്റൊരു ഓപ്ഷൻ: നിങ്ങൾ ഫങ്ഷണൽ തലത്തിലെങ്കിലും ആണെന്ന് കരുതുക വിൻഡോസ് ഡൊമെയ്ൻ 2003. പ്രോപ്പർട്ടി പ്രകാരം ഫിൽട്ടർ ചെയ്യുക അവസാന ലോഗോൺടൈം സ്റ്റാമ്പ്. ഈ മൂല്യം ജനുവരി 1, 1601 മുതലുള്ള 100 നാനോ സെക്കൻഡ് ഇടവേളകളുടെ എണ്ണമാണ്, ഇത് GMT-യിൽ സംഭരിച്ചിരിക്കുന്നു, അതിനാൽ ഈ മൂല്യം ഉപയോഗിച്ച് പ്രവർത്തിക്കുന്നത് അൽപ്പം ബുദ്ധിമുട്ടാണ്:

PS C:\> get-adcomputer -filter "LastlogonTimestamp -gt 0" -properties * | പേര്, ലാസ്റ്റ്ലോഗോൺടൈംസ്റ്റാമ്പ് തിരഞ്ഞെടുക്കുക, @(പേര് = "അവസാന ലോഗൺ";എക്സ്പ്രഷൻ=(::ഫയൽ ടൈം മുതൽ ($_.ലാസ്റ്റ്ലോഗോൺടൈംസ്റ്റാമ്പ്))),പാസ്വേഡ് ലാസ്റ്റ്സെറ്റ് | LastLogonTimeStamp അടുക്കുക


അരി. 6. LastLogonTimeStamp മൂല്യം പരിചിതമായ ഫോർമാറ്റിലേക്ക് പരിവർത്തനം ചെയ്യുക

ഒരു ഫിൽട്ടർ സൃഷ്ടിക്കാൻ, എനിക്ക് തീയതി പരിവർത്തനം ചെയ്യേണ്ടതുണ്ട്, ഉദാഹരണത്തിന് ജനുവരി 1, 2012, ശരിയായ ഫോർമാറ്റിലേക്ക്. ഫയൽ ടൈമിൽ പരിവർത്തനം നടത്തുന്നു:

PS C:\> $cutoff=(Get-Date "1/1/2012").ToFileTime() PS C:\> $cutoff 12969867600000000

ഇപ്പോൾ എനിക്ക് ഈ വേരിയബിൾ ഫിൽട്ടറിൽ ഉപയോഗിക്കാം Get-ADComputer:

PS C:\> Get-ADComputer -Filter "(lastlogontimestamp -lt $cutoff) -അല്ലെങ്കിൽ (lastlogontimestamp -Notlike "*")" -property * | പേര്, ലാസ്റ്റ്ലോഗൺ ടൈംസ്റ്റാമ്പ്, പാസ്‌വേഡ് ലാസ്റ്റ്സെറ്റ് തിരഞ്ഞെടുക്കുക

മുകളിലെ കോഡ് ചിത്രം 5 ൽ കാണിച്ചിരിക്കുന്ന അതേ കമ്പ്യൂട്ടറുകൾ കണ്ടെത്തുന്നു.

ടാസ്ക് 9: കമ്പ്യൂട്ടർ അക്കൗണ്ട് നിർജ്ജീവമാക്കുക

ഒരുപക്ഷേ നിങ്ങൾ നിഷ്‌ക്രിയമോ കാലഹരണപ്പെട്ടതോ ആയ അക്കൗണ്ടുകൾ കണ്ടെത്തുമ്പോൾ, അവ നിർജ്ജീവമാക്കാൻ നിങ്ങൾ ആഗ്രഹിച്ചേക്കാം. ഇത് ചെയ്യാൻ വളരെ എളുപ്പമാണ്. ഉപയോക്തൃ അക്കൗണ്ടുകളിൽ പ്രവർത്തിക്കാൻ ഞങ്ങൾ ഉപയോഗിച്ച അതേ cmdlet ഞങ്ങൾ ഉപയോഗിക്കും. ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് വ്യക്തമാക്കാം samഅക്കൗണ്ട്നാമംഅക്കൗണ്ട്.

PS C:\> Disable-ADAccount -Identity "chi-srv01$" -whatif: "CN=CHI-SRV01, CN=Computers,DC=GLOBOMANTICS,DC=local" എന്ന ലക്ഷ്യത്തിൽ "സെറ്റ്" പ്രവർത്തനം നടത്തുകയാണെങ്കിൽ.

അല്ലെങ്കിൽ ഒരു പൈപ്പ്ലൈൻ എക്സ്പ്രഷൻ ഉപയോഗിക്കുന്നു:

PS C:\> get-adcomputer "chi-srv01" | അപ്രാപ്തമാക്കുക-ADAcount

കാലഹരണപ്പെട്ട അക്കൗണ്ടുകൾ കണ്ടെത്താനും അവയെല്ലാം നിർജ്ജീവമാക്കാനും എനിക്ക് എൻ്റെ കോഡ് ഉപയോഗിക്കാം:

PS C:\> get-adcomputer -filter "Passwordlastset -lt "1/1/2012"" -properties *| അപ്രാപ്തമാക്കുക-ADAcount

ടാസ്ക് 10: തരം അനുസരിച്ച് കമ്പ്യൂട്ടറുകൾ കണ്ടെത്തുക

സെർവറുകൾ അല്ലെങ്കിൽ വർക്ക്സ്റ്റേഷനുകൾ പോലെയുള്ള തരം അനുസരിച്ച് കമ്പ്യൂട്ടർ അക്കൗണ്ടുകൾ എങ്ങനെ കണ്ടെത്താമെന്നും എന്നോട് പലപ്പോഴും ചോദിക്കാറുണ്ട്. ഇതിന് നിങ്ങളുടെ ഭാഗത്ത് കുറച്ച് സർഗ്ഗാത്മകത ആവശ്യമാണ്. ഒരു സെർവറിനെ ക്ലയൻ്റിൽനിന്ന് വേർതിരിക്കുന്ന മറ്റൊന്നും AD-ൽ ഇല്ല, ഒരുപക്ഷേ OS ഒഴികെ. നിങ്ങളുടെ കമ്പ്യൂട്ടർ വിൻഡോസ് സെർവർ 2008 പ്രവർത്തിപ്പിക്കുകയാണെങ്കിൽ, നിങ്ങൾ കുറച്ച് അധിക ഘട്ടങ്ങൾ ചെയ്യേണ്ടതുണ്ട്.
ആദ്യം, നിങ്ങൾക്ക് ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളുടെ ഒരു ലിസ്റ്റ് ലഭിക്കേണ്ടതുണ്ട്, തുടർന്ന് ലഭ്യമായ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾ ഉപയോഗിച്ച് ഞങ്ങൾ അക്കൗണ്ടുകൾ ഫിൽട്ടർ ചെയ്യുന്നു.

PS C:\> Get-ADComputer -Filter * -Properties Operating System | OperatingSystem -unique | തിരഞ്ഞെടുക്കുക ഓപ്പറേറ്റിംഗ് സിസ്റ്റം അടുക്കുക

ഫലങ്ങൾ ചിത്രം 7 ൽ കാണിച്ചിരിക്കുന്നു.


അരി. 7. OS ലിസ്റ്റ് വീണ്ടെടുക്കുന്നു

ഒരു സെർവർ OS പ്രവർത്തിക്കുന്ന എല്ലാ കമ്പ്യൂട്ടറുകളും കണ്ടെത്താൻ ഞാൻ ആഗ്രഹിക്കുന്നു:

PS C:\> Get-ADComputer -Filter "Operating System -like "*Server*"" -properties Operating System,OperatingSystem ServicePack | പേര് തിരഞ്ഞെടുക്കുക, ഓപ്* | ഫോർമാറ്റ്-ലിസ്റ്റ്

ഫലങ്ങൾ ചിത്രം 8 ൽ കാണിച്ചിരിക്കുന്നു.

മറ്റ് AD നേടുക cmdlets പോലെ, നിങ്ങൾക്ക് തിരയൽ പാരാമീറ്ററുകൾ ഇഷ്ടാനുസൃതമാക്കാനും ആവശ്യമെങ്കിൽ നിർദ്ദിഷ്ട OU-കളിലേക്ക് അഭ്യർത്ഥന പരിമിതപ്പെടുത്താനും കഴിയും. ഞാൻ കാണിച്ചിരിക്കുന്ന എല്ലാ എക്സ്പ്രഷനുകളും വലിയ പവർഷെൽ എക്സ്പ്രഷനുകളിലേക്ക് സംയോജിപ്പിക്കാൻ കഴിയും. ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് അടുക്കാനും ഗ്രൂപ്പുചെയ്യാനും ഫിൽട്ടറുകൾ പ്രയോഗിക്കാനും CSV-യിലേക്ക് കയറ്റുമതി ചെയ്യാനും അല്ലെങ്കിൽ സൃഷ്‌ടിക്കാനും അയയ്‌ക്കാനും കഴിയും HTML മെയിൽറിപ്പോർട്ടുകൾ - എല്ലാം PowerShell-ൽ നിന്ന്! ഈ സാഹചര്യത്തിൽ, നിങ്ങൾ ഒരു സ്ക്രിപ്റ്റ് പോലും എഴുതേണ്ടതില്ല.
ഇതാ ഒരു ബോണസ്: ഒരു HTML ഫയലിൽ സംരക്ഷിച്ചിട്ടുള്ള ഒരു ഉപയോക്തൃ പാസ്‌വേഡ്-ഏജ് റിപ്പോർട്ട്:

PS C:\> Get-ADUser -Filter "Enabled -eq "True" -AND PasswordNeverExpires -eq "False"" -Properties PasswordLastSet,PasswordNeverExpires,PasswordExpired | DistinguishedName,Name,pass*,@(Name="PasswordAge"; Expression=(((Get-Date)-$_.PasswordLastSet)) |Sort PasswordAge -Descending | ConvertTo-Html -Title "പാസ്‌വേഡ് പ്രായ റിപ്പോർട്ട്" | Out-File c:\Work\pwage.htm !}

ഈ പദപ്രയോഗം അൽപ്പം ഭയപ്പെടുത്തുന്നതായി തോന്നുമെങ്കിലും, PowerShell-നെ കുറിച്ചുള്ള കുറഞ്ഞ അറിവോടെ ഇത് ഉപയോഗിക്കാൻ എളുപ്പമാണ്. അവസാനമായി ഒരു ഉപദേശം മാത്രം അവശേഷിക്കുന്നു: ഒരു ഇഷ്‌ടാനുസൃത പ്രോപ്പർട്ടി എങ്ങനെ നിർവചിക്കാം പാസ്‌വേഡ് പ്രായം. ഇന്നത്തെയും PasswordLastSet പ്രോപ്പർട്ടിയും തമ്മിലുള്ള വിടവിനെ മൂല്യം പ്രതിനിധീകരിക്കുന്നു. അപ്പോൾ ഞാൻ എൻ്റെ പുതിയ പ്രോപ്പർട്ടിക്കായി ഫലങ്ങൾ അടുക്കുന്നു. എൻ്റെ ചെറിയ ടെസ്റ്റ് ഡൊമെയ്‌നിൻ്റെ ഔട്ട്‌പുട്ട് ചിത്രം 9 കാണിക്കുന്നു.

അപ്ഡേറ്റ്:
പോസ്റ്റിൽ പോർട്ടലിലെ ലേഖനത്തിൻ്റെ വിവർത്തനം അടങ്ങിയിരിക്കുന്നു

ഡയറക്‌ടറി ഒബ്‌ജക്‌റ്റുകൾ സൃഷ്‌ടിക്കാനും പരിഷ്‌ക്കരിക്കാനും ഇല്ലാതാക്കാനും ഉപയോഗിക്കുന്നു. ഉപയോക്താവിന് കമാൻഡ് ഉപയോഗിക്കാനും കഴിയും ldifdeസ്കീമ വികസിപ്പിക്കാൻ, കയറ്റുമതി വിവരങ്ങൾ സജീവമാണ്മറ്റ് ആപ്ലിക്കേഷനുകളിലേക്കോ സേവനങ്ങളിലേക്കോ ഡയറക്‌ടറി ഉപയോക്താവിൻ്റെയും ഗ്രൂപ്പ് വിവരങ്ങളും, കൂടാതെ മറ്റ് ഡയറക്‌ടറി സേവനങ്ങളിൽ നിന്നുള്ള ഡാറ്റ ഉപയോഗിച്ച് ADAM (ആക്‌റ്റീവ് ഡയറക്‌ടറി ആപ്ലിക്കേഷൻ മോഡ്) സേവനം പോപ്പുലേറ്റ് ചെയ്യാനും.

വാക്യഘടന

ldifde [-ഐ] [-എഫ് ഫയലിന്റെ പേര്] [-എസ് സെർവറിന്റെ പേര്] [-സി വരി1 വരി2] [-വി] [-ജെ പാത] [-ടി പോർട്ട്_നമ്പർ] [-ഡി DN_ബേസ്] [-ആർ ഫിൽട്ടർ_LDAP] [-പി പ്രദേശം] [-എൽ LDAP_attribute_list] [-ഒ LDAP_attribute_list] [-ജി] [-എം] [-എൻ] [-കെ] [-എ ] [-ബി ] [-? ]

ഓപ്ഷനുകൾ

-ഐ ഇറക്കുമതി മോഡ് വ്യക്തമാക്കുന്നു. പരാമീറ്റർ നിർവചിച്ചിട്ടില്ലെങ്കിൽ, കയറ്റുമതി മോഡ് സ്ഥിരസ്ഥിതിയായി ഉപയോഗിക്കുന്നു. -എഫ്ഫയലിന്റെ പേര് ഇറക്കുമതി അല്ലെങ്കിൽ കയറ്റുമതി ഫയലിൻ്റെ പേര് വ്യക്തമാക്കുന്നു. -എസ്സെർവറിന്റെ പേര് ഇറക്കുമതി അല്ലെങ്കിൽ കയറ്റുമതി പ്രവർത്തനം നടത്തേണ്ട കമ്പ്യൂട്ടർ വ്യക്തമാക്കുന്നു. ഡിഫോൾട്ട് പ്രോഗ്രാം ldifdeഏത് കമ്പ്യൂട്ടറിൽ എക്സിക്യൂട്ട് ചെയ്യും ldifdeഇൻസ്റ്റാൾ ചെയ്തു. -സിവരി1 വരി2 എല്ലാ സംഭവങ്ങളെയും മാറ്റിസ്ഥാപിക്കുന്നു വരികൾ1ഉള്ളടക്കം വരികൾ2. നിങ്ങൾ ഒരു ഡൊമെയ്‌നിൽ നിന്ന് മറ്റൊന്നിലേക്ക് ഡാറ്റ ഇറക്കുമതി ചെയ്യുമ്പോൾ, കയറ്റുമതി ചെയ്യുന്ന ഡൊമെയ്‌നിൻ്റെ വിശിഷ്ടമായ പേര് മാറ്റിസ്ഥാപിക്കുമ്പോൾ സാധാരണയായി ഉപയോഗിക്കുന്നു ( വരി1), ഡൊമെയ്ൻ നാമം ഇറക്കുമതി ചെയ്യുന്നു ( വരി2). -വി വിശദമായ ലോഗിംഗ് മോഡ് പ്രവർത്തനക്ഷമമാക്കുന്നു. -ജെപാത ലോഗ് ഫയലിൻ്റെ സ്ഥാനം വ്യക്തമാക്കുന്നു. നിലവിലെ പാതയാണ് സ്ഥിരസ്ഥിതി. -ടിപോർട്ട്_നമ്പർ ലൈറ്റ്‌വെയ്റ്റ് ഡയറക്‌ടറി ആക്‌സസ് പ്രോട്ടോക്കോൾ (LDAP) പോർട്ട് നമ്പർ വ്യക്തമാക്കുന്നു. സ്ഥിരസ്ഥിതി LDAP പോർട്ട് 389 ആണ്. പോർട്ട് ആഗോള കാറ്റലോഗ് 3268 ആണ്. -ഡിDN_ബേസ് ഡാറ്റ എക്‌സ്‌പോർട്ടുചെയ്യുന്നതിനുള്ള സെർച്ച് ബേസ് വിശിഷ്ടമായ പേര് വ്യക്തമാക്കുന്നു. -ആർLDAP ഫിൽട്ടർ ഡാറ്റ എക്‌സ്‌പോർട്ടിനായി ഒരു LDAP തിരയൽ ഫിൽട്ടർ സൃഷ്ടിക്കുന്നു. ഉദാഹരണത്തിന്, ഇനിപ്പറയുന്ന ഫിൽട്ടർ ഒരു പ്രത്യേക മധ്യനാമമുള്ള എല്ലാ ഉപയോക്താക്കളെയും കയറ്റുമതി ചെയ്യുന്നു: csvde -r (ഒപ്പം(objectClass=ഉപയോക്താവ്)(sn=കുടുംബപ്പേര്)) -പിപ്രദേശം തിരയൽ ഏരിയ വ്യക്തമാക്കുന്നു. തിരയൽ സ്കോപ്പ് പരാമീറ്ററുകൾ അടിസ്ഥാനം, വൺലെവൽഒപ്പം സബ്ട്രീ. -എൽLDAP_attribute_list കയറ്റുമതി അഭ്യർത്ഥനയുടെ ഫലങ്ങളിൽ തിരിച്ചെത്തിയ ആട്രിബ്യൂട്ടുകളുടെ ലിസ്റ്റ് വ്യക്തമാക്കുന്നു. ഈ പരാമീറ്റർ ഒഴിവാക്കിയാൽ, എല്ലാ ആട്രിബ്യൂട്ടുകളും തിരികെ നൽകും. -ഒLDAP_attribute_list കയറ്റുമതി അഭ്യർത്ഥന ഫലങ്ങളിൽ നിന്ന് ഒഴിവാക്കേണ്ട ആട്രിബ്യൂട്ടുകളുടെ ഒരു ലിസ്റ്റ് വ്യക്തമാക്കുന്നു. ആക്റ്റീവ് ഡയറക്‌ടറിയിൽ നിന്ന് ഒബ്‌ജക്‌റ്റുകൾ എക്‌സ്‌പോർട്ട് ചെയ്‌ത് മറ്റൊരു എൽഡിഎപി-അനുയോജ്യമായ ഡയറക്‌ടറിയിലേക്ക് ഇമ്പോർട്ടുചെയ്യുമ്പോൾ ഈ ഓപ്ഷൻ സാധാരണയായി ഉപയോഗിക്കുന്നു. ഏതെങ്കിലും ആട്രിബ്യൂട്ടുകൾ മറ്റൊരു കാറ്റലോഗ് പിന്തുണയ്‌ക്കുന്നില്ലെങ്കിൽ, ഈ ഓപ്‌ഷൻ ഉപയോഗിച്ച് സെറ്റ് ഫലത്തിൽ നിന്ന് അവ ഒഴിവാക്കാനാകും. -ജി പേജ് തിരയലുകൾ ഇല്ലാതാക്കുന്നു. -എം എഴുതാൻ കഴിയാത്ത ആട്രിബ്യൂട്ടുകൾ ഒഴിവാക്കുന്നു ObjectGUIDഒപ്പം objectSID. -എൻ ബൈനറി മൂല്യങ്ങളുടെ കയറ്റുമതി ഒഴിവാക്കുന്നു. -കെ ഇറക്കുമതി പ്രവർത്തന സമയത്ത് പിശകുകൾ അവഗണിക്കുകയും പ്രോസസ്സിംഗ് തുടരുകയും ചെയ്യുന്നു. താഴെ മുഴുവൻ പട്ടികഅവഗണിക്കപ്പെട്ട പിശകുകൾ:

  • ഒബ്ജക്റ്റ് ഇതിനകം ഗ്രൂപ്പിലെ അംഗമാണ്;
  • ഇറക്കുമതി ചെയ്ത ഒബ്‌ജക്റ്റിന് മറ്റ് ആട്രിബ്യൂട്ടുകൾ ഇല്ലെങ്കിൽ ഒരു ഒബ്‌ജക്റ്റ് ക്ലാസ് ലംഘനം (നിർദ്ദിഷ്‌ട ഒബ്‌ജക്റ്റ് ക്ലാസ് നിലവിലില്ല എന്നാണ് അർത്ഥമാക്കുന്നത്);
  • വസ്തു ഇതിനകം നിലവിലുണ്ട്;
  • നിയന്ത്രണത്തിൻ്റെ ലംഘനം;
  • ആട്രിബ്യൂട്ട് അല്ലെങ്കിൽ മൂല്യം ഇതിനകം നിലവിലുണ്ട്;
  • അത്തരമൊരു വസ്തു നിലവിലില്ല.
-എdistinguished_name_password വ്യക്തമാക്കിയത് ഉപയോഗിച്ച് ഒരു കമാൻഡിൻ്റെ നിർവ്വഹണം വ്യക്തമാക്കുന്നു distinguished_name_user_nameഒപ്പം password -ബി. -ബിഉപയോക്തൃനാമം ഡൊമെയ്ൻ പാസ്വേഡ് വ്യക്തമാക്കിയത് ഉപയോഗിച്ച് എക്സിക്യൂട്ട് ചെയ്യേണ്ട കമാൻഡ് വ്യക്തമാക്കുന്നു ഉപയോക്തൃനാമം, ഡൊമെയ്ൻ, പാസ്വേഡ്. സ്ഥിരസ്ഥിതിയായി, ഉള്ള ഉപയോക്താവിൻ്റെ ക്രെഡൻഷ്യലുകൾ ഉപയോഗിച്ച് കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യും ഈ നിമിഷംനെറ്റ്‌വർക്കിൽ രജിസ്റ്റർ ചെയ്തിട്ടുണ്ട്. പാരാമീറ്റർ ഉപയോഗിച്ച് ഉപയോഗിക്കാൻ കഴിയില്ല -എ. -? കമാൻഡുകളുടെ ഒരു മെനു പ്രദർശിപ്പിക്കുന്നു.

കുറിപ്പുകൾ

  • പരാമീറ്റർ ഉപയോഗിച്ച് -സിനിങ്ങൾക്ക് സ്ഥിരാങ്കങ്ങൾ ഉപയോഗിക്കാം #schemaNamingContextഒപ്പം #configurationNamingContextസ്കീമ ഡയറക്ടറി പാർട്ടീഷൻ്റെയും കോൺഫിഗറേഷൻ ഡയറക്ടറി പാർട്ടീഷൻ്റെയും വിശിഷ്ടമായ പേരുകൾക്ക് പകരം.
  • ഒരു കമാൻഡിനായി ഒരു ഇറക്കുമതി ഫയൽ സൃഷ്ടിക്കുമ്പോൾ ldifde, മൂല്യം ഉപയോഗിക്കുക തരം മാറ്റുകഇറക്കുമതി ഫയലിൽ അടങ്ങിയിരിക്കുന്ന മാറ്റങ്ങളുടെ തരം നിർണ്ണയിക്കാൻ. മൂല്യങ്ങൾ തരം മാറ്റുകചുവടെയുള്ള പട്ടികയിൽ നൽകിയിരിക്കുന്നു.

മൂല്യം ഉപയോഗിക്കുന്ന LDIF ഫോർമാറ്റിലുള്ള ഒരു LDAP ഇറക്കുമതി ഫയലിൻ്റെ ഒരു ഉദാഹരണം ചുവടെയുണ്ട് ചേർക്കുക:
DN: CN=തിരഞ്ഞെടുത്ത_ഉപയോക്താവ്,DC=ഡൊമെയ്ൻ നാമം
മാറ്റം തരം: ചേർക്കുക
CN: തിരഞ്ഞെടുത്ത_ഉപയോക്താവ്
വിവരണം:ഫയൽ_വിവരണം
ഒബ്ജക്റ്റ് ക്ലാസ്: ഉപയോക്താവ്
ഒബ്ജക്റ്റ് ക്ലാസ്: തിരഞ്ഞെടുത്ത_ഉപയോക്താവ്

ഉദാഹരണങ്ങൾ

വിശിഷ്ടമായ പേര് മാത്രം വേർതിരിച്ചെടുക്കാൻ, പൊതുവായ പേര്, തിരികെ ലഭിച്ച ഒബ്‌ജക്‌റ്റുകളുടെ ആദ്യ നാമം, അവസാന നാമം, ഫോൺ നമ്പർ എന്നിവ നൽകുക:
-എൽ വിശിഷ്ട_നാമം, സിഎൻ, പേര്, എസ്.എൻ. ടെലിഫോണ്
ഒരു ഒബ്‌ജക്റ്റിനായി ആഗോളതലത്തിൽ തനതായ ഐഡൻ്റിഫയർ (GUID) ഒഴിവാക്കാൻ, നൽകുക:
-ഒ എപ്പോൾ_സൃഷ്ടിച്ചു, എപ്പോൾ_മാറി, object_GUID

പവർഷെല്ലിൻ്റെ ആദ്യ പതിപ്പ് മുതൽ, മൈക്രോസോഫ്റ്റ് അതിനെ പ്രധാന ഉപകരണമാക്കാൻ ശ്രമിക്കുന്നു എന്നത് രഹസ്യമല്ല വിൻഡോസ് അഡ്മിനിസ്ട്രേഷൻ. പല തരത്തിൽ ഇത് പ്രവർത്തിക്കുന്നു! ഇന്ന്, ലളിതമായ ഉദാഹരണങ്ങൾ ഉപയോഗിച്ച്, ലഭിക്കാൻ ഉപയോഗിക്കാവുന്ന PowerShell കഴിവുകൾ ഞങ്ങൾ കാണിക്കും വിവിധ വിവരങ്ങൾസജീവ ഡയറക്ടറി ഉപയോക്താക്കളെയും അവരുടെ ആട്രിബ്യൂട്ടുകളെയും കുറിച്ച്.

കുറിപ്പ്. മുമ്പ്, AD ഉപയോക്തൃ അക്കൗണ്ടുകളുടെ ആട്രിബ്യൂട്ടുകളെക്കുറിച്ചുള്ള വിവരങ്ങൾ ലഭിക്കുന്നതിന്, നിങ്ങൾ വിവിധ ടൂളുകൾ ഉപയോഗിക്കേണ്ടതുണ്ട്: ADUC കൺസോൾ (ഉൾപ്പെടെ), ഒരു യൂട്ടിലിറ്റി മുതലായവ. ടൂളിൻ്റെ തിരഞ്ഞെടുപ്പ് സാധാരണയായി ചുമതലയും അഡ്മിനിസ്ട്രേറ്ററുടെ പ്രോഗ്രാമിംഗ് കഴിവുകളും അടിസ്ഥാനമാക്കിയുള്ളതാണ്.

പവർഷെൽ 2.0 ആക്റ്റീവ് ഡയറക്ടറിയുമായി പ്രവർത്തിക്കുന്നതിന് ഒരു പ്രത്യേക മൊഡ്യൂൾ അവതരിപ്പിച്ചു - (വിൻഡോസ് സെർവർ 2008 R2 ൽ അവതരിപ്പിച്ചു), അതിൻ്റെ cmdlets നിങ്ങളെ AD ഡയറക്ടറി ഒബ്‌ജക്റ്റുകൾ ഉപയോഗിച്ച് വിവിധ കൃത്രിമങ്ങൾ നടത്താൻ അനുവദിക്കുന്നു. ഉപയോക്താക്കളെക്കുറിച്ചുള്ള വിവരങ്ങൾ ലഭിക്കുന്നതിന് ഡൊമെയ്ൻ സജീവമാണ്ഡയറക്ടറിയും അവയുടെ ഗുണങ്ങളും cmdlet Get-ADUser. AD-യിൽ നിലവിലുള്ള ഒരു ഉപയോക്തൃ അക്കൗണ്ടിൻ്റെ ഏതെങ്കിലും ആട്രിബ്യൂട്ടിൻ്റെ മൂല്യം ലഭിക്കാൻ നിങ്ങൾക്ക് Get-ADUser cmdlet ഉപയോഗിക്കാം. കൂടാതെ, നിങ്ങൾക്ക് വിവിധ തിരഞ്ഞെടുക്കൽ മാനദണ്ഡങ്ങൾ വ്യക്തമാക്കാനും ഡൊമെയ്ൻ ഉപയോക്താക്കളുടെയും അവരുടെ ആട്രിബ്യൂട്ടുകളുടെയും ലിസ്റ്റുകൾ സൃഷ്ടിക്കാനും കഴിയും.

ഈ ഉദാഹരണത്തിൽ, ഒരു ഉപയോക്താവിൻ്റെ പാസ്‌വേഡ് എപ്പോൾ അവസാനമായി മാറ്റിയെന്നും അത് എപ്പോൾ കാലഹരണപ്പെട്ടുവെന്നും സംബന്ധിച്ച വിവരങ്ങൾ വീണ്ടെടുക്കുന്നതിന് PowerShell Get-ADUser cmdlet എങ്ങനെ ഉപയോഗിക്കാമെന്ന് ഞങ്ങൾ കാണിച്ചുതരാം.

അഡ്‌മിനിസ്‌ട്രേറ്റർ അവകാശങ്ങളോടെ Powershll വിൻഡോ സമാരംഭിച്ച് കമാൻഡ് ഉപയോഗിച്ച് ആക്‌റ്റീവ് ഡയറക്‌ടറി മൊഡ്യൂൾ ഇറക്കുമതി ചെയ്യുക:

ഇറക്കുമതി-മൊഡ്യൂൾ സജീവ ഡയറക്ടറി

ഉപദേശം. വിൻഡോസ് സെർവർ 2012-ലും അതിനുശേഷമുള്ളതിലും, മൊഡ്യൂൾ മുതൽ നിങ്ങൾക്ക് ഈ ഇനം ഒഴിവാക്കാം പവർഷെൽ സജീവമാണ്ഡയറക്‌ടറി സ്ഥിരസ്ഥിതിയായി ബന്ധിപ്പിച്ചിരിക്കുന്നു.

ക്ലയൻ്റ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ (ഉദാഹരണത്തിന് വിൻഡോസ് 10), Get-AdUser കമാൻഡർ പ്രവർത്തിക്കുന്നതിന്, നിങ്ങൾ RSAT-ൻ്റെ ഉചിതമായ പതിപ്പ് ഇൻസ്റ്റാൾ ചെയ്യുകയും നിയന്ത്രണ പാനലിലെ ഘടകം പ്രവർത്തനക്ഷമമാക്കുകയും വേണം. Windows PowerShell-നുള്ള സജീവ ഡയറക്ടറി മൊഡ്യൂൾ(റിമോട്ട് സെർവർ അഡ്മിനിസ്ട്രേഷൻ ടൂളുകൾ -> റോൾ അഡ്മിനിസ്ട്രേഷൻ ടൂളുകൾ -> AD DS, AD LDS ടൂളുകൾ -> AD DS ടൂളുകൾ).

എല്ലാ Get-ADUser cmdlet ആർഗ്യുമെൻ്റുകളുടെയും പൂർണ്ണമായ ലിസ്റ്റ് ഇനിപ്പറയുന്ന രീതിയിൽ ലഭിക്കും:

Get-ADUser-നെ സഹായിക്കുക

എല്ലാ ഡൊമെയ്ൻ അക്കൗണ്ടുകളുടെയും ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കുന്നതിന്, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

Get-ADUser -ഫിൽറ്റർ *

തിരികെ നൽകിയ ലിസ്റ്റിൻ്റെ ഫോർമാറ്റ് ഉപയോഗിക്കാൻ വളരെ സൗകര്യപ്രദമല്ല, ഉപയോക്തൃ അക്കൗണ്ടുകളുടെ 120-ലധികം ആട്രിബ്യൂട്ടുകളിൽ ചില അടിസ്ഥാന 10 മാത്രമേ പ്രദർശിപ്പിക്കൂ (DN, SamAccountName, Name, UPN, മുതലായവ) കൂടാതെ, ഞങ്ങൾ കാണുന്നു അവസാനം പാസ്സ്‌വേർഡ് മാറ്റിയ സമയത്തെക്കുറിച്ച് ഒരു വിവരവുമില്ല.

യൂസർ ട്യൂസറിൻ്റെ ലഭ്യമായ എല്ലാ ആട്രിബ്യൂട്ടുകളെയും കുറിച്ചുള്ള പൂർണ്ണ വിവരങ്ങൾ പ്രദർശിപ്പിക്കുന്നതിന്, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

Get-ADUser -identity tuser -properties *

അതിനാൽ, AD ഉപയോക്തൃ ആട്രിബ്യൂട്ടുകളുടെയും ഉപയോക്തൃ അക്കൗണ്ടുമായി ബന്ധപ്പെട്ട അവയുടെ മൂല്യങ്ങളുടെയും പൂർണ്ണമായ ലിസ്റ്റ് ഞങ്ങൾ കാണുന്നു. അടുത്തതായി, Get-ADUser cmdlet-ൻ്റെ ഔട്ട്പുട്ട് ഫോർമാറ്റ് ചെയ്യുന്നതിലേക്ക് ഞങ്ങൾ നീങ്ങും, അങ്ങനെ നമുക്ക് ആവശ്യമുള്ള ഫീൽഡുകൾ പ്രദർശിപ്പിക്കും. ആട്രിബ്യൂട്ടുകളിൽ ഞങ്ങൾക്ക് താൽപ്പര്യമുണ്ട്:

  • പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു
  • പാസ്‌വേഡ് ലാസ്റ്റ് സെറ്റ്
  • പാസ്‌വേഡ് ഒരിക്കലും കാലഹരണപ്പെടില്ല

നമുക്ക് കമാൻഡ് പ്രവർത്തിപ്പിക്കാം:

Get-ADUser tuser - പ്രോപ്പർട്ടീസ് പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു, പാസ്‌വേഡ് ലാസ്റ്റ്‌സെറ്റ്, പാസ്‌വേഡ് ഒരിക്കലും കാലഹരണപ്പെടില്ല

ഇപ്പോൾ ഉപയോക്തൃ ഡാറ്റയിൽ പാസ്‌വേഡ് മാറ്റത്തിൻ്റെ തീയതിയെക്കുറിച്ചും അത് കാലഹരണപ്പെടുന്ന സമയത്തെക്കുറിച്ചും ഉള്ള വിവരങ്ങൾ അടങ്ങിയിരിക്കുന്നു. കൂടുതൽ സൗകര്യപ്രദമായ ഒരു പട്ടിക രൂപത്തിൽ വിവരങ്ങൾ അവതരിപ്പിക്കാം:

Get-ADUser -filter * -properties PasswordExpired, PasswordLastSet, PasswordNeverExpires | അടി പേര്, പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു, പാസ്‌വേഡ് ലാസ്റ്റ്‌സെറ്റ്, പാസ്‌വേഡ് ഒരിക്കലും കാലഹരണപ്പെടില്ല

ഒരു നിർദ്ദിഷ്ട OU-യിൽ നിന്നുള്ള ഉപയോക്തൃ ഡാറ്റ പ്രദർശിപ്പിക്കുന്നതിന്, പാരാമീറ്റർ ഉപയോഗിക്കുക തിരയൽ ബേസ്:

Get-ADUser -SearchBase ‘OU=Moscow,DC=winitpro,DC=loc’ -filter * -properties PasswordExpired, PasswordLastSet, PasswordNeverExpires | അടി പേര്, പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു, പാസ്‌വേഡ് ലാസ്റ്റ്‌സെറ്റ്, പാസ്‌വേഡ് ഒരിക്കലും കാലഹരണപ്പെടില്ല

കമാൻഡിൻ്റെ ഫലം ഒരു ടെക്സ്റ്റ് ഫയലിലേക്ക് കയറ്റുമതി ചെയ്യാൻ കഴിയും:

Get-ADUser -filter * -properties PasswordExpired, PasswordLastSet, PasswordNeverExpires | അടി പേര്, പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു, പാസ്‌വേഡ് ലാസ്റ്റ്‌സെറ്റ്, പാസ്‌വേഡ്NeverExpires > C:\temp\users.txt

അല്ലെങ്കിൽ ഭാവിയിൽ Excel-ലേക്ക് സൗകര്യപ്രദമായി കയറ്റുമതി ചെയ്യുന്ന CSV-യിൽ (കൂടുതൽ ഉപയോഗിക്കുന്നു അടുക്കുക-വസ്തുപാസ്‌വേഡ് ലാസ്റ്റ്‌സെറ്റ് കോളം ഉപയോഗിച്ച് പട്ടിക അടുക്കാം, കൂടാതെ ഒരു വ്യവസ്ഥയും ചേർക്കുക എവിടെ- ഉപയോക്തൃനാമത്തിൽ "ദിമിത്രി" എന്ന സ്ട്രിംഗ് ഉണ്ടായിരിക്കണം):

Get-ADUser -filter * -properties PasswordExpired, PasswordLastSet, PasswordNeverExpires | എവിടെ ($_.പേര് -"*ദിമിത്രി*" പോലെ) | അടുക്കുക-ഒബ്ജക്റ്റ് പാസ്‌വേഡ് ലാസ്റ്റ്സെറ്റ് | സെലക്ട്-ഒബ്ജക്റ്റ് പേര്, പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു, പാസ്‌വേഡ് ലാസ്റ്റ് സെറ്റ്, പാസ്‌വേഡ് ഒരിക്കലും കാലഹരണപ്പെടില്ല | Export-csv -path c:\temp\user-password-expires-2015.csv

അതിനാൽ, ആവശ്യമായ ഏതെങ്കിലും ആട്രിബ്യൂട്ടുകൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഒരു പട്ടിക നിർമ്മിക്കാൻ കഴിയും സജീവ ഉപയോക്താക്കൾഡയറക്ടറി.

ഒരു പ്രത്യേക സ്വഭാവത്തെ അടിസ്ഥാനമാക്കി AD ഉപയോക്തൃ അക്കൗണ്ടുകളുടെ ഒരു ലിസ്റ്റ് ലഭിക്കുന്നതിന്, -Filter പാരാമീറ്റർ ഉപയോഗിക്കുക. ഈ പരാമീറ്ററിൻ്റെ ആർഗ്യുമെൻ്റുകൾ എന്ന നിലയിൽ, ചില ആക്റ്റീവ് ഡയറക്‌ടറി ഉപയോക്തൃ ആട്രിബ്യൂട്ടുകളുടെ മൂല്യം നിങ്ങൾക്ക് വ്യക്തമാക്കാൻ കഴിയും, ഇത് ഫിൽട്ടർ മാനദണ്ഡങ്ങളുമായി പൊരുത്തപ്പെടുന്ന ഉപയോക്താക്കൾക്ക് Get-ADUser cmdlet ബാധകമാക്കും.

റോമൻ എന്നതിൽ തുടങ്ങുന്ന എഡി ഉപയോക്താക്കളുടെ ഔട്ട്പുട്ട്:

Get-ADUser -filter (പേര് - പോലെ "റോമൻ*")

Get-ADUser -Filter (SamAccountName -like "*") | അളവ്-വസ്തു

എഡിയിലെ എല്ലാ സജീവ (തടയപ്പെട്ടിട്ടില്ലാത്ത) അക്കൗണ്ടുകളുടെയും ലിസ്റ്റ്:

Get-ADUser -Filter (Enabled -eq "True") | Select-Object SamAccountName,Name,Surname,Givenname | ഫോർമാറ്റ്-ടേബിൾ

കാലഹരണപ്പെട്ട പാസ്‌വേഡ് ഉള്ള അക്കൗണ്ടുകളുടെ ലിസ്റ്റ്:

Get-ADUser -filter (Enabled -eq $True) -പ്രോപ്പർട്ടീസ് പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു | എവിടെ ($_.പാസ്‌വേഡ് കാലഹരണപ്പെട്ടു)

ഇമെയിൽ വിലാസങ്ങളുള്ള സജീവ അക്കൗണ്ടുകളുടെ ലിസ്റ്റ്:

Get-ADUser -Filter ((mail -ne "null") -and (Enabled -eq "true")) -Properties Surname,GivenName,mail | സെലക്ട്-ഒബ്ജക്റ്റ് പേര്, കുടുംബപ്പേര്, നൽകിയ പേര്, മെയിൽ | ഫോർമാറ്റ്-ടേബിൾ

ടാസ്‌ക്: ഒരു ടെക്‌സ്‌റ്റ് ഫയലിൽ സംഭരിച്ചിരിക്കുന്ന അക്കൗണ്ടുകളുടെ ഒരു ലിസ്‌റ്റിന് (ഒരു വരിയിൽ ഒരു അക്കൗണ്ട്), നിങ്ങൾ ഉപയോക്താവിൻ്റെ ഫോൺ നമ്പർ AD-ൽ നേടുകയും വിവരങ്ങൾ ഒരു ടെക്‌സ്‌റ്റ് csv ഫയലിലേക്ക് അപ്‌ലോഡ് ചെയ്യുകയും വേണം (Esxel-ലേക്ക് എളുപ്പത്തിൽ ഇറക്കുമതി ചെയ്യാൻ കഴിയും).

Import-Csv c:\ps\usernsme_list.csv | ForEach ( Get-ADUser -identity $_.user -Properties Name, telephoneNumber | പേര് തിരഞ്ഞെടുക്കുക, telephoneNumber | Export-CSV c:\ps\export_ad_list.csv -Append -Encoding UTF8 )

ഒരു എൻ്റർപ്രൈസ് വിലാസ പുസ്തകം ഒരു csv ഫയലായി ഡൗൺലോഡ് ചെയ്യാൻ ഇനിപ്പറയുന്ന ഉദാഹരണം നിങ്ങളെ അനുവദിക്കുന്നു, അത് പിന്നീട് Outlook അല്ലെങ്കിൽ Mozilla Thunderbird-ലേക്ക് ഇമ്പോർട്ടുചെയ്യാനാകും:

Get-ADUser -Filter ((mail -ne "null") -and (Enabled -eq "true")) -Properties Surname,GivenName,mail | സെലക്ട്-ഒബ്ജക്റ്റ് പേര്, കുടുംബപ്പേര്, നൽകിയ പേര്, മെയിൽ | Export-Csv -NoTypeInformation -Encoding utf8 -delimiter "," $env:temp\mail_list.csv

കഴിഞ്ഞ 90 ദിവസമായി പാസ്‌വേഡ് മാറ്റാത്ത ഉപയോക്താക്കൾ:

$90_Days = (Get-Date).adddays(-90) Get-ADUser -filter ((passwordlastset -le $90_days))

$user = Get-ADUser winadmin -Properties thumbnailPhoto $user.thumbnailPhoto | സെറ്റ്-ഉള്ളടക്കം winadmin.jpg -എൻകോഡിംഗ് ബൈറ്റ്

ഉപയോക്തൃ അക്കൗണ്ട് ഉൾപ്പെടുന്ന ഗ്രൂപ്പുകളുടെ ലിസ്റ്റ്

Get-AdUser winadmin -Properties memberof | അംഗത്തെ തിരഞ്ഞെടുക്കുക -പ്രോപ്പർട്ടി അംഗത്തിൻ്റെ വിപുലീകരണം

മുമ്പത്തെ ലേഖനത്തിലെ അഭിപ്രായങ്ങളിൽ, 1C ന് പകരം Excel-ൽ അക്കൗണ്ടിംഗിനെക്കുറിച്ച് ഞങ്ങൾ ഓർത്തു. ശരി, നിങ്ങൾക്ക് Excel എത്രത്തോളം അറിയാം എന്ന് പരിശോധിക്കാം. ആക്ടീവ് ഡയറക്‌ടറിയിൽ നിന്ന് ഡാറ്റ എങ്ങനെ നേടാമെന്നും മാക്രോകളും പവർഷെല്ലും ഇല്ലാതെ എങ്ങനെ പ്രവർത്തിക്കാമെന്നും ഇന്ന് ഞാൻ നിങ്ങളെ കാണിക്കും - സ്റ്റാൻഡേർഡ് ഓഫീസ് മെക്കാനിസങ്ങൾ ഉപയോഗിച്ച് മാത്രം. ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് ഇതിനകം Microsoft SCOM പോലെയുള്ള എന്തെങ്കിലും ഇല്ലെങ്കിൽ, നിങ്ങളുടെ സ്ഥാപനത്തിലെ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളുടെ ഉപയോഗത്തെക്കുറിച്ചുള്ള അനലിറ്റിക്‌സ് നിങ്ങൾക്ക് എളുപ്പത്തിൽ ലഭിക്കും. ശരി, അല്ലെങ്കിൽ ചൂടുപിടിച്ച് സ്ക്രിപ്റ്റുകളിൽ നിന്ന് നിങ്ങളുടെ മനസ്സ് മാറ്റുക.


തീർച്ചയായും, പവർഷെല്ലിലെ ഒരു വരി ഉപയോഗിച്ച് അക്ഷരാർത്ഥത്തിൽ ചുവടെയുള്ള ഉദാഹരണങ്ങളിലെന്നപോലെ നിങ്ങൾക്ക് ഡാറ്റ ലഭിക്കും. പക്ഷേ, ഒന്നാമതായി, PowerShell വളരെ വിരസമാണ്, രണ്ടാമതായി, Excel ന് ഡാറ്റ ചലനാത്മകമായി അപ്ഡേറ്റ് ചെയ്യാൻ കഴിയും - തത്ഫലമായുണ്ടാകുന്ന പ്രമാണങ്ങൾ ഓൺലൈനിൽ പ്രസിദ്ധീകരിക്കുകയും അവ അപ്ഡേറ്റ് ചെയ്യുന്നതിനെക്കുറിച്ച് മറക്കുകയും ചെയ്യാം.

ഡാറ്റയുമായി പ്രവർത്തിക്കാൻ, ഞാൻ പവർ ക്വറി മെക്കാനിസം ഉപയോഗിക്കും. ഓഫീസ് 2010-നും 2013-നും നിങ്ങൾ ഒരു പ്ലഗിൻ ഇൻസ്റ്റാൾ ചെയ്യേണ്ടതുണ്ട്, മൈക്രോസോഫ്റ്റ് ഓഫീസ് 2016-ൽ ഇതിനകം തന്നെ ഈ മൊഡ്യൂൾ ഉണ്ട്. നിർഭാഗ്യവശാൽ, ഞങ്ങൾക്ക് സ്റ്റാൻഡേർഡ് എഡിഷൻ പര്യാപ്തമല്ല; ഞങ്ങൾക്ക് പ്രൊഫഷണൽ ആവശ്യമാണ്.


പഴയ ODBC യിൽ നിന്നും വിവിധ സ്രോതസ്സുകളിൽ നിന്നും ഡാറ്റ സ്വീകരിക്കുന്നതിനും പ്രോസസ്സ് ചെയ്യുന്നതിനുമാണ് ഈ സംവിധാനം രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത് ടെക്സ്റ്റ് ഫയലുകൾ, എക്സ്ചേഞ്ച്, ഒറാക്കിൾ, Facebook എന്നിവയിലേക്ക്. മെക്കാനിസത്തെക്കുറിച്ചും ബിൽറ്റ്-ഇൻ സ്ക്രിപ്റ്റിംഗ് ഭാഷയായ "M" നെക്കുറിച്ചുമുള്ള കൂടുതൽ വിശദാംശങ്ങൾ ഹബ്രെയിൽ ഇതിനകം എഴുതിയിട്ടുണ്ട്, എന്നാൽ ഉപയോഗത്തിൻ്റെ രണ്ട് ഉദാഹരണങ്ങൾ ഞാൻ നോക്കാം. പവർ ക്വറിസജീവ ഡയറക്ടറിയിൽ നിന്ന് ഡാറ്റ വീണ്ടെടുക്കാൻ.

വാം-അപ്പ്: ഞങ്ങളുടെ ഉപയോക്താക്കൾ എപ്പോഴാണ് ലോഗിൻ ചെയ്തതെന്ന് നോക്കാം

ഡൊമെയ്ൻ ഡാറ്റാബേസിലേക്കുള്ള അഭ്യർത്ഥന തന്നെ "ഡാറ്റ - പുതിയ അഭ്യർത്ഥന - മറ്റ് ഉറവിടങ്ങളിൽ നിന്ന് - ആക്റ്റീവ് ഡയറക്ടറിയിൽ നിന്ന്" ടാബിൽ സൃഷ്ടിക്കപ്പെട്ടതാണ്.



ഡാറ്റ ഉറവിടം വ്യക്തമാക്കുക.


നിങ്ങൾ ഒരു ഡൊമെയ്ൻ നാമം തിരഞ്ഞെടുത്ത് ആവശ്യമായ കണക്ഷൻ വിവരങ്ങൾ നൽകേണ്ടതുണ്ട്. അടുത്തതായി, ഈ ഉദാഹരണത്തിൽ ഞങ്ങൾ ഒബ്‌ജക്റ്റുകളുടെ തരം തിരഞ്ഞെടുക്കും - ഉപയോക്താവ്. പ്രിവ്യൂ വിൻഡോയിൽ വലതുവശത്ത്, ഡാറ്റയുടെ പ്രിവ്യൂ കാണിക്കുന്ന അന്വേഷണം ഇതിനകം പ്രവർത്തിക്കുന്നു.



ഞങ്ങൾ ഒരു അഭ്യർത്ഥന തയ്യാറാക്കുകയും പ്രിവ്യൂവിനെ അഭിനന്ദിക്കുകയും ചെയ്യുന്നു.


"എഡിറ്റ്" ബട്ടൺ ക്ലിക്കുചെയ്ത് തിരഞ്ഞെടുത്ത് ആദ്യം നിങ്ങളുടെ അഭ്യർത്ഥന തയ്യാറാക്കണം ആവശ്യമായ നിരകൾ. അടിസ്ഥാനപരമായി, ഈ നിരകൾ ക്ലാസുകളാണ്, അവയിൽ ഓരോന്നിലും പ്രധാന കോളം ഒഴികെ, ഒരു സജീവ ഡയറക്ടറി ഒബ്‌ജക്റ്റിൻ്റെ ഒരു കൂട്ടം പ്രത്യേക ആട്രിബ്യൂട്ടുകൾ അടങ്ങിയിരിക്കുന്നു പ്രദർശന നാമം, അത് തന്നെ ഒരു ആട്രിബ്യൂട്ട് ആണ്. ഞാൻ ക്ലാസുകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കും ഉപയോക്താവ്, വ്യക്തി, മുകളിൽഒപ്പം സുരക്ഷാ പ്രിൻസിപ്പൽ. ഇപ്പോൾ നിങ്ങൾ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട് ആവശ്യമായ ആട്രിബ്യൂട്ടുകൾഓരോ ക്ലാസ്സിൽ നിന്നും "വിപുലീകരണം" ഉപയോഗിക്കുന്നു - നിരയുടെ തലക്കെട്ടിൽ രണ്ട് അമ്പടയാളങ്ങളുള്ള ഒരു ഐക്കൺ:

  • ക്ലാസ് ഉപയോക്താവ്തിരഞ്ഞെടുത്ത് വികസിപ്പിക്കുക അവസാന ലോഗോൺടൈംസ്റ്റാമ്പ്ഒപ്പം ഉപയോക്തൃ അക്കൗണ്ട് നിയന്ത്രണം;
  • വി വ്യക്തിനമുക്ക് തിരഞ്ഞെടുക്കാം ടെലിഫോൺ നമ്പർ;
  • വി മുകളിൽസൃഷ്ടിച്ചപ്പോൾ;
  • ഒപ്പം സുരക്ഷാ പ്രിൻസിപ്പൽSamAccountName.


ഞങ്ങൾ അഭ്യർത്ഥന വിപുലീകരിക്കുന്നു.


ഇനി നമുക്ക് ഫിൽട്ടർ സജ്ജീകരിക്കാം: പ്രത്യേകിച്ചും, ബ്ലോക്ക് ചെയ്ത അക്കൗണ്ടുകൾ ലഭിക്കാതിരിക്കാൻ, userAccountControl ആട്രിബ്യൂട്ടിന് 512 അല്ലെങ്കിൽ 66048 മൂല്യം ഉണ്ടായിരിക്കണം. നിങ്ങളുടെ പരിതസ്ഥിതിയിൽ ഫിൽട്ടർ വ്യത്യസ്തമായിരിക്കാം. മൈക്രോസോഫ്റ്റ് ഡോക്യുമെൻ്റേഷനിൽ നിങ്ങൾക്ക് ആട്രിബ്യൂട്ടിനെക്കുറിച്ച് കൂടുതൽ വായിക്കാം.



ഒരു ഫിൽട്ടർ പ്രയോഗിക്കുന്നു.


ചിലപ്പോൾ Excel തെറ്റായി ഡാറ്റ ഫോർമാറ്റ് കണ്ടുപിടിക്കുന്നു, പ്രത്യേകിച്ച് അവസാന LogonTimestamp ആട്രിബ്യൂട്ടിൻ്റെ മൂല്യം. അത്തരമൊരു ദൗർഭാഗ്യം നിങ്ങൾക്ക് പെട്ടെന്ന് സംഭവിച്ചാൽ, "പരിവർത്തനം" ടാബിൽ നിങ്ങൾക്ക് ശരിയായ ഫോർമാറ്റ് സജ്ജമാക്കാൻ കഴിയും.

ഇപ്പോൾ userAccountControl കോളം ഇല്ലാതാക്കണം - ഡിസ്പ്ലേയിൽ ഇത് ആവശ്യമില്ല. കൂടാതെ "ഡൗൺലോഡ് ചെയ്ത് അടയ്ക്കുക" ക്ലിക്ക് ചെയ്യുക.


ഫലം ഒരു ചെറിയ ഫിനിഷിംഗ് ടച്ചുകൾ ആവശ്യമുള്ള ഒരു പ്ലേറ്റ് ആണ്. ഉദാഹരണത്തിന്, കോളങ്ങളുടെ പേര് കൂടുതൽ വായിക്കാൻ കഴിയുന്ന ഒന്നിലേക്ക് മാറ്റുക. ഒപ്പം ഇഷ്ടാനുസൃതമാക്കുക യാന്ത്രിക അപ്ഡേറ്റ്ഡാറ്റ.


ഒരു ടേബിൾ തുറക്കുമ്പോഴോ കാലഹരണപ്പെടുമ്പോഴോ യാന്ത്രിക അപ്‌ഡേറ്റ് "പ്രോപ്പർട്ടീസ്" എന്നതിലെ "ഡാറ്റ" ടാബിൽ കോൺഫിഗർ ചെയ്തിരിക്കുന്നു.



ഡാറ്റ അപ്ഡേറ്റ് സജ്ജീകരിക്കുന്നു.


അപ്‌ഡേറ്റ് സജ്ജീകരിച്ച ശേഷം, നിങ്ങൾക്ക് സുരക്ഷിതമായി ടേബിൾ പേഴ്‌സണൽ ഡിപ്പാർട്ട്‌മെൻ്റിനോ സുരക്ഷാ സേവനത്തിനോ നൽകാം - ആരാണ് സിസ്റ്റത്തിൽ ലോഗിൻ ചെയ്‌തതെന്നും എപ്പോഴാണെന്നും അവരെ അറിയിക്കുക.


"M" ഭാഷയിലുള്ള അഭ്യർത്ഥന കോഡ് സ്‌പോയിലറിന് കീഴിലാണ്.

സോഴ്‌സ് = ActiveDirectory.Domains("domain.ru"), domain.ru = ഉറവിടം()[#"ഒബ്‌ജക്റ്റ് വിഭാഗങ്ങൾ"], user1 = domain.ru(), #"Remote Columns" = Table.RemoveColumns(user1,(user1,( "organisationalPerson", "shadowAccount", "posixAccount", "msExchOmaUser", "msExchBaseClass", "msExchimRecipient", "msExchCertificateInformation", "msExchMultiMediaUserchomstrim," "മെയിൽ സ്വീകർത്താവ്", "വിശിഷ്‌ട നാമം")), #"വികസിപ്പിച്ച എലമെൻ്റ് സെക്യൂരിറ്റി പ്രിൻസിപ്പൽ" = Table.ExpandRecordColumn(#"നീക്കം ചെയ്ത നിരകൾ", "securityPrincipal", ("sAMAccountName"), #"വികസിപ്പിച്ച മൂലകം ടോപ്പ്" = Table.ExpandRecordExrinpald(# securityPxrincipal "," മുകളിൽ ")), #"വികസിപ്പിച്ച മൂലക ഉപയോക്താവ്" = പട്ടിക.വികസിപ്പിച്ച റിക്കോർഡ് നിര ഫിൽട്ടർ പ്രയോഗിച്ചു" = Table.SelectRows(#"വികസിപ്പിച്ച ഉപയോക്തൃ ഘടകം", ഓരോന്നും ( = 512 അല്ലെങ്കിൽ = 66048)), #"മാറ്റപ്പെട്ട തരം" = Table.TransformColumnTypes(#"അരിപ്പ പ്രയോഗിച്ച വരികൾ",("lastLogonTimestamp", തീയതി ടൈപ്പ് ചെയ്യുക))), #"വിദൂര കോളങ്ങൾ1" = പട്ടിക

ഒരു വിലാസ പുസ്തകം സൃഷ്ടിക്കുന്നു, അല്ലെങ്കിൽ എപ്പോൾ എന്തുചെയ്യണം കോർപ്പറേറ്റ് പോർട്ടൽ AD യുമായി സൗഹൃദമല്ല

മറ്റൊരു വേരിയൻ്റ് Excel ഉപയോഗിക്കുന്നുആക്റ്റീവ് ഡയറക്ടറിയുമായി സംയോജിച്ച് - ഇത് AD ഡാറ്റയെ അടിസ്ഥാനമാക്കിയുള്ള ഒരു വിലാസ പുസ്തകത്തിൻ്റെ രൂപീകരണമാണ്. എന്ന് വ്യക്തമാണ് വിലാസ പുസ്തകംഡൊമെയ്ൻ ക്രമത്തിലാണെങ്കിൽ മാത്രമേ ഇത് പ്രസക്തമാകൂ.


ഒരു ഒബ്ജക്റ്റിനായി ഒരു അഭ്യർത്ഥന സൃഷ്ടിക്കാം ഉപയോക്താവ്, ക്ലാസ് വിപുലീകരിക്കുക ഉപയോക്താവ്വി മെയിൽ, ക്ലാസും വ്യക്തിവി ടെലിഫോൺ നമ്പർ. ഒഴികെയുള്ള എല്ലാ കോളങ്ങളും ഇല്ലാതാക്കാം വിശിഷ്ടമായ പേര്- ഡൊമെയ്ൻ ഘടന എൻ്റർപ്രൈസസിൻ്റെ ഘടന ആവർത്തിക്കുന്നു, അതിനാൽ പേരുകൾ സംഘടനാ യൂണിറ്റുകൾവകുപ്പുകളുടെ പേരുകളുമായി പൊരുത്തപ്പെടുന്നു. അതുപോലെ, സെക്യൂരിറ്റി ഗ്രൂപ്പുകൾ ഡിപ്പാർട്ട്മെൻ്റ് പേരുകൾക്ക് അടിസ്ഥാനമായി ഉപയോഗിക്കാം.


ഇപ്പോൾ വരിയിൽ നിന്ന് CN=ഉപയോക്തൃനാമം, OU=അക്കൗണ്ടിംഗ് വകുപ്പ്, OU=ഡിവിഷനുകൾ, DC=ഡൊമെയ്ൻ, DC=ruനിങ്ങൾ വകുപ്പിൻ്റെ പേര് നേരിട്ട് എക്‌സ്‌ട്രാക്റ്റുചെയ്യേണ്ടതുണ്ട്. ട്രാൻസ്ഫോം ടാബിലെ ഡിലിമിറ്ററുകൾ ഉപയോഗിക്കുക എന്നതാണ് ഇതിനുള്ള എളുപ്പവഴി.



ടെക്സ്റ്റ് എക്‌സ്‌ട്രാക്റ്റുചെയ്യുന്നു.


ഡിലിമിറ്ററുകളായി ഞാൻ ഉപയോഗിക്കുന്നു OU=ഒപ്പം ,OU=. തത്വത്തിൽ, ഒരു കോമ മതി, പക്ഷേ ഞാൻ അത് സുരക്ഷിതമായി കളിക്കുന്നു.



ഡിലിമിറ്ററുകൾ നൽകുക.


ഇപ്പോൾ ഫിൽട്ടർ ഉപയോഗിച്ച് നിങ്ങൾക്ക് അനാവശ്യമായി മുറിക്കാൻ കഴിയും ഒ.യു, തടഞ്ഞ ഉപയോക്താക്കളെ പോലെ ഒപ്പം ബിൽട്ടിൻ, സോർട്ടിംഗ് കോൺഫിഗർ ചെയ്ത് പട്ടികയിലേക്ക് ഡാറ്റ ലോഡ് ചെയ്യുക.



സംഗ്രഹ പട്ടികയുടെ കാഴ്ച.

ഏജൻ്റുമാരെയോ മറ്റ് തയ്യാറെടുപ്പുകളോ അവതരിപ്പിക്കാതെ, വർക്ക്സ്റ്റേഷനുകളുടെ ഘടനയെക്കുറിച്ചുള്ള ദ്രുത റിപ്പോർട്ട്

ഇപ്പോൾ കമ്പ്യൂട്ടറുകളിൽ ഡാറ്റ ലഭ്യമാക്കി ഉപയോഗപ്രദമായ ഒരു പട്ടിക ഉണ്ടാക്കാൻ ശ്രമിക്കാം. കമ്പനി ഉപയോഗിക്കുന്നവയെക്കുറിച്ച് ഞങ്ങൾ ഒരു റിപ്പോർട്ട് തയ്യാറാക്കും ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങൾ: ഇത് ചെയ്യുന്നതിന്, ഞങ്ങൾ ഒരു അഭ്യർത്ഥന സൃഷ്ടിക്കും, എന്നാൽ ഇത്തവണ ഞങ്ങൾ തിരഞ്ഞെടുക്കും കമ്പ്യൂട്ടർ.



കമ്പ്യൂട്ടർ ഒബ്ജക്റ്റിനായി ഞങ്ങൾ ഒരു അഭ്യർത്ഥന നടത്തുന്നു.


കോളം ക്ലാസുകൾ വിടാം കമ്പ്യൂട്ടർഒപ്പം മുകളിൽഅവ വികസിപ്പിക്കുക:

  • ക്ലാസ് കമ്പ്യൂട്ടർതിരഞ്ഞെടുത്ത് വികസിപ്പിക്കുക cn, ഓപ്പറേറ്റിംഗ് സിസ്റ്റം, ഓപ്പറേറ്റിംഗ് സിസ്റ്റം സർവീസ്പാക്ക്ഒപ്പം ഓപ്പറേറ്റിംഗ് സിസ്റ്റം പതിപ്പ്;
  • ക്ലാസിൽ മുകളിൽനമുക്ക് തിരഞ്ഞെടുക്കാം സൃഷ്ടിച്ചപ്പോൾ.


വിപുലമായ അഭ്യർത്ഥന.


വേണമെങ്കിൽ, സെർവർ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ മാത്രമേ നിങ്ങൾക്ക് ഒരു റിപ്പോർട്ട് ചെയ്യാൻ കഴിയൂ. ഉദാഹരണത്തിന്, ഓപ്പറേറ്റിംഗ് സിസ്റ്റം അല്ലെങ്കിൽ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം പതിപ്പ് ആട്രിബ്യൂട്ട് പ്രകാരം ഫിൽട്ടർ ചെയ്യുക. ഞാൻ ഇത് ചെയ്യില്ല, പക്ഷേ സൃഷ്ടി സമയത്തിൻ്റെ പ്രദർശനം ഞാൻ ശരിയാക്കും - എനിക്ക് വർഷത്തിൽ മാത്രമേ താൽപ്പര്യമുള്ളൂ. ഇത് ചെയ്യുന്നതിന്, "പരിവർത്തനം" ടാബിൽ, നമുക്ക് ആവശ്യമുള്ള കോളം തിരഞ്ഞെടുത്ത് "തീയതി" മെനുവിൽ "വർഷം" തിരഞ്ഞെടുക്കുക.



കമ്പ്യൂട്ടർ ഡൊമെയ്‌നിൽ പ്രവേശിച്ച സമയം മുതൽ ഞങ്ങൾ വർഷം എക്‌സ്‌ട്രാക്‌റ്റ് ചെയ്യുന്നു.


ഇപ്പോൾ ബാക്കിയുള്ളത് ഡിസ്പ്ലേ നെയിം കോളം അനാവശ്യമായി ഇല്ലാതാക്കി ഫലം ലോഡ് ചെയ്യുക എന്നതാണ്. ഡാറ്റ തയ്യാറാണ്. ഇപ്പോൾ നിങ്ങൾക്ക് ഒരു സാധാരണ പട്ടിക പോലെ അവരോടൊപ്പം പ്രവർത്തിക്കാം. ആദ്യം, "ഇൻസേർട്ട്" ടാബിൽ ഒരു പിവറ്റ് ടേബിൾ ഉണ്ടാക്കാം - " പിവറ്റ് പട്ടിക" ഡാറ്റാ ഉറവിടം തിരഞ്ഞെടുക്കുന്നത് അംഗീകരിക്കുകയും അതിൻ്റെ ഫീൽഡുകൾ കോൺഫിഗർ ചെയ്യുകയും ചെയ്യാം.



പിവറ്റ് പട്ടിക ഫീൽഡ് ക്രമീകരണങ്ങൾ.


ഇപ്പോൾ അവശേഷിക്കുന്നത് നിങ്ങളുടെ അഭിരുചിക്കനുസരിച്ച് ഡിസൈൻ ഇഷ്ടാനുസൃതമാക്കുകയും ഫലത്തെ അഭിനന്ദിക്കുകയും ചെയ്യുക എന്നതാണ്:



എഡിയിലെ കമ്പ്യൂട്ടറുകൾക്കുള്ള സംഗ്രഹ പട്ടിക.


വേണമെങ്കിൽ, നിങ്ങൾക്ക് ചേർക്കാം സംഗ്രഹ ഷെഡ്യൂൾ, Insert ടാബിലും. "വിഭാഗത്തിൽ" (അല്ലെങ്കിൽ "വരികളിൽ", ആസ്വദിക്കാൻ) ചേർക്കുക ഓപ്പറേറ്റിംഗ് സിസ്റ്റം, ഡാറ്റയിലേക്ക് -- cn. "ഡിസൈൻ" ടാബിൽ, നിങ്ങൾക്ക് ഇഷ്ടമുള്ള ചാർട്ട് തിരഞ്ഞെടുക്കാം;



പൈ ചാർട്ട്.


നിലവിലുള്ള അപ്‌ഡേറ്റ് ഉണ്ടായിരുന്നിട്ടും, വിൻഡോസ് എക്സ്പിയും വിൻഡോസ് 2003 ഉള്ള സെർവറുകളും ഉള്ള മൊത്തം വർക്ക്സ്റ്റേഷനുകളുടെ എണ്ണം വളരെ വലുതാണെന്ന് ഇപ്പോൾ വ്യക്തമായി കാണാം. ഒപ്പം പരിശ്രമിക്കാൻ ചിലതുമുണ്ട്.


അഭ്യർത്ഥന കോഡ് സ്‌പോയിലറിന് കീഴിലാണ്.

ഉറവിടം = ActiveDirectory.Domains("domain.ru"), domain.ru = ഉറവിടം()[#"ഒബ്‌ജക്റ്റ് വിഭാഗങ്ങൾ"], കമ്പ്യൂട്ടർ1 = domain.ru(), #"റിമോട്ട് കോളങ്ങൾ" = Table.RemoveColumns(computer1,(computer1,(computer1,(computer1,(computer1,(computer1,(computer1,(computer1,(computer1) "user", "organizationalPerson", "person")), #"മറ്റ് നീക്കം ചെയ്‌ത നിരകൾ" = പട്ടിക.SelectColumns(#"Remoted columns",("displayName", "computer", "top")), #"ഇനം വികസിപ്പിക്കുക കമ്പ്യൂട്ടർ" = Table.ExpandRecordColumn(#"മറ്റ് റിമോട്ട് കോളങ്ങൾ", "കമ്പ്യൂട്ടർ", ("cn", "operatingSystem", "operatingSystemServicePack", "operatingSystemVersion"), ("cn", "operatingSystem", "operatingSystemService", " ഓപ്പറേറ്റിംഗ് സിസ്റ്റം പതിപ്പ്"), #"വിപുലീകരിച്ച ടോപ്പ് എലമെൻ്റ്" = Table.ExpandRecordColumn(#"വികസിപ്പിച്ച കമ്പ്യൂട്ടർ ഘടകം", "മുകളിൽ", ("സൃഷ്‌ടിച്ചപ്പോൾ"), ("എപ്പോൾ സൃഷ്‌ടിച്ചപ്പോൾ"), #"എക്‌സ്‌ട്രാക്‌റ്റ് ചെയ്‌ത വർഷം" = പട്ടിക.ട്രാൻസ്‌ഫോം കോളങ്ങൾ( #"വികസിപ്പിച്ച എലമെൻ്റ് ടോപ്പ്",(("സൃഷ്‌ടിച്ചപ്പോൾ", തീയതി.വർഷം)), #"വിദൂര കോളങ്ങൾ1" = പട്ടിക.RemoveColumns(#"Extracted year",("displayName")) #"Remoted columns1"

ടാഗ് ചേർക്കുക