Jak spravovat uživatele z PowerShellu: Kompletní návod

  • Automatizujte kompletní životní cyklus lokálních nebo doménových uživatelských a skupinových účtů pomocí PowerShellu.
  • Využijte pokročilá oprávnění, správu hesel a auditování v Active Directory a Microsoft 365.
  • Zvyšte efektivitu pomocí skriptů a souborů CSV pro hromadnou správu a reporting.

správa uživatelů z PowerShellu

Správa uživatelů v systémech Windows je jedním z nejčastějších – a nejdůležitějších – úkolů každého IT administrátora. Zatímco grafické rozhraní zjednodušuje určité akce, používání PowerShellu šetří čas, zlepšuje kontrolu a automatizuje složité pracovní postupy . Možná si myslíte, že je to jen pro experty, ale realita je taková, že používání PowerShellu se stalo nezbytnou dovedností v moderní systémové administraci, ať už v lokálním prostředí, doménách nebo cloudu.

Tento článek je určen pro ty, kteří se chtějí hlouběji ponořit do efektivní správy uživatelských účtů pomocí PowerShellu , a to jak pro každodenní úkoly, tak pro pokročilé scénáře, od serverů bez grafického rozhraní až po prostředí Microsoft 365 a SharePoint Online. Vysvětlím krok za krokem, jak vytvářet, upravovat, mazat, auditovat a spravovat uživatele a skupiny, a to vše od základních rutin až po automatizační skripty. Pojďme se do toho pustit!

Co jsou cmdlety a moduly PowerShellu?

Pokročilá správa Windows prostřednictvím příkazového řádku se spoléhá na cmdlety , malé utility, které používají syntaxi sloveso-podstatné jméno a umožňují provádět akce na systémových objektech. Například pro vytvoření nového lokálního uživatele používáme New-LocalUser ; pro dotazování uživatelů v Active Directory používáme Get-ADUser . Každý cmdlet může přijímat argumenty pro přizpůsobení svého chování.

Naučte se, jak opravit Windows, pokud se něco pokazí
Související článek:
Jak krok za krokem vytvořit automatické přírůstkové zálohy ve Windows

Rutiny (cmdlety) jsou uspořádány do modulů, které seskupují související příkazy. Jedním z klíčových modulů pro správu lokálních účtů je Microsoft.PowerShell.LocalAccounts , který musíte mít nainstalovaný (starší verze systému Windows Server mohou vyžadovat instalaci Windows Management Framework). Pro práci s uživateli domény potřebujete modul ActiveDirectory , který je ve Windows Serveru obvykle k dispozici po přidání odpovídající funkce.

  • Zobrazení seznamu nainstalovaných modulů běžet Get-Module -ListAvailable.
  • Zobrazit cmdlety dostupné v modulu: Get-Command -Module Microsoft.PowerShell.LocalAccounts o Get-Command -Module ActiveDirectory

Aktualizuje nápovědu a vyhledá potřebné příkazy

správa uživatelů z PowerShellu

Před zahájením je vhodné aktualizovat databázi nápovědy pro přístup k nejnovější dokumentaci k cmdletům. Spusťte Update-Help aby vše bylo aktuální. Pokud se ztratíte a nevíte, který příkaz použít, můžete vyhledat v nápovědě spuštěním Get-Help *usuario* nebo filtrovat podle klíčových slov v seznamu příkazů.

Modulární struktura PowerShellu usnadňuje nalezení toho, co potřebujete. Například pro nalezení všech cmdletů, které obsahují „Uživatel“, postupujte takto: Get-Command *User*.

Správa lokálních uživatelů: vytváření, úpravy a mazání

Pojďme si projít nejužitečnější příkazy pro správu účtů na počítačích mimo doménu:

  • Zobrazit stávající lokální uživatele: Get-LocalUser
  • Zkontrolujte konkrétní účet: Get-LocalUser -Name "Administrador"
  • Vytvořit uživatele bez hesla: New-LocalUser -Name "usuario1" -FullName "Nombre completo" -Description "Sin contraseña" -NoPassword
  • Vytvořte uživatele s heslem požadovaným v řádku:
    $password = Read-Host -AsSecureString
    New-LocalUser "usuario2" -Password $password -FullName "Usuario 2" -Description "Cuenta curso"
  • Zakázat účet: Disable-LocalUser -Name "usuario2"
  • Smazat uživatele: Remove-LocalUser -Name "usuario1"
  • Upravit atributy: Set-LocalUser -Name "usuario2" -Description "Nuevo rol"

Správa hesel a atributů v lokálních účtech

PowerShell umožňuje interaktivně a hromadně měnit hesla:

  • Změna hesla uživatele:
    $password = Read-Host -AsSecureString
    Set-LocalUser -Name "usuario2" -Password $password
  • Nastavit heslo s neomezenou platností: Set-LocalUser -Name "usuario2" –PasswordNeverExpires $true
  • Přejmenovat lokálního uživatele: Rename-LocalUser -Name "usuario2" -NewName "nuevo.nombre"

Správa místních skupin

Skupiny vám umožňují spravovat kolektivní oprávnění. Můžete je spravovat takto:

  • Konzultační skupiny: Get-LocalGroup
  • Zobrazit členy skupiny: Get-LocalGroupMember -Name "Empleados"
  • Vytvořit skupinu: New-LocalGroup -Name "Empleados" -Description "Grupo de empleados"
  • Přidat uživatele do skupiny: Add-LocalGroupMember -Group "Empleados" -Member "usuario2"
  • Odebrat uživatele ze skupiny: Remove-LocalGroupMember -Group "Empleados" -Member "usuario2"
  • Smazat skupinu: Remove-LocalGroup -Name "Empleados"

Správa uživatelů v doménách (AD DS) pomocí PowerShellu

Ve firmách a síťových prostředích je běžné, že účty jsou spravovány z Active DirectoryZde se správa provádí prostřednictvím modulu ActiveDirectory a cmdlety obvykle začínají na „AD“. Nezapomeňte spustit PowerShell jako správce a v případě potřeby importovat modul pomocí Import-Module ActiveDirectory.

Základní dotazy týkající se prostředí AD

  • Informace o lesích: Get-ADForest
  • Informace o doméně: Get-ADDomain
  • Dotazování řadičů domény: Get-ADDomainController

Získání informací o uživatelích a jejich audit

  • Zobrazit uživatele domény: Get-ADUser -Filter *
  • Podívejte se na další nemovitosti: Get-ADUser usuario -Properties *
  • Filtrovat uživatele podle jména: Get-ADUser -Filter 'Name -like "jio*"' | Select Name

Vytváření, úprava a mazání uživatelů v Active Directory

  • Vytvořte jednoduchého uživatele: New-ADUser -Name "Victor"
  • Vytvořit uživatele s atributy: New-ADUser -Name "Victor" -GivenName "Victor" -Surname "Genovés" -Path "CN=Users,DC=empresa,DC=local"
  • Přiřadit heslo (musí být použita proměnná typu SecureString):
    $userpassword=ConvertTo-SecureString -AsPlainText -Force -String "clave123"
    New-ADUser -Name "Victor" -AccountPassword $userpassword -Enabled $true
  • Smazat uživatele: Remove-ADUser -Identity "CN=Victor,CN=Users,DC=empresa,DC=local"

Automatizace: Hromadné nahrávání a mazání uživatelů pomocí CSV

Pokud potřebujete vytvořit nebo smazat desítky (nebo stovky) účtů, je nejlepší připravit si soubor CSV a použít smyčku v PowerShellu:

  • Příklad hromadné tvorby:
    $users = Import-Csv -Path "usuarios.csv"
    foreach ($i in $users) {
    $userpassword=ConvertTo-SecureString $i.password -AsPlainText -Force
    New-ADUser -Name $i.user -AccountPassword $userpassword
    }
  • Hromadné smazání pomocí CSV:
    $users = Import-Csv -Path "borradousuarios.csv"
    foreach ($i in $users) { Remove-ADUser -Identity $i.user }

Pokročilé operace: Členství, atributy a zabezpečení

Kromě základní správy umožňuje PowerShell i pokročilé akce, jako například:

  • Přidat uživatele do reklamní skupiny: Add-ADGroupMember "GrupoPrueba" usuario1,usuario2
  • Zkontrolujte členství uživatele: Get-ADUser usuario1 -Properties MemberOf
  • Upravit vlastní atributy: Set-ADUser usuario1 -Description "Usuario de soporte"
  • Kontrola hodin přihlášení (logonhours):
    Nejprve definujte bajtové pole představující povolený počet hodin a poté použijte:
    Get-ADUser usuario1 | Set-ADUser -replace @{logonhours = $horario}

Správa hesel a odemykání účtů v Active Directory

  • Změna nebo reset hesla (známé): Set-ADAccountPassword usuario1
  • Obnovení bez znalosti předchozího: Set-ADAccountPassword usuario1 -Reset
  • Odemknout účet: Unlock-ADAccount usuario1 -Verbose

Správa skupin a členství v Active Directory

  • Zkontrolujte informace o skupinách: Get-ADGroup "Grupo"
  • Zobrazit členy skupiny: Get-ADGroupMember "Grupo"
  • Přidat uživatele do skupiny: Add-ADGroupMember "Grupo" usuario1
Žena prohlíží svůj notebook
Související článek:
Jak používat AccessChk ve Windows

Správa uživatelů a skupin v Microsoft 365 a SharePointu Online

PowerShell není určen pouze pro místní prostředí. Správci Microsoft 365 a SharePointu Online mohou automatizovat správu účtů, skupin, oprávnění a webů pomocí specifických rutin. Je nezbytné se nejprve připojit k prostředí (například pomocí Connect-SPOService).

  • Seznam webů: Get-SPOSite
  • Vypsat skupiny z webu: Get-SPOSite | ForEach {Get-SPOSiteGroup -Site $_.Url}
  • Seznam uživatelů webu: Get-SPOSite | ForEach {Get-SPOUser -Site $_.Url}
  • Přidat uživatele jako správce kolekce webů:
    $tenant = "contoso"
    $site = "contosotest"
    $user = "opalc"
    Set-SPOUser -Site https://$tenant.sharepoint.com/sites/$site -LoginName $user@$tenant.com -IsSiteCollectionAdmin $true
  • Přidat uživatele do skupiny SharePoint:
    Add-SPOUser -Group $group -LoginName $user@$tenant.com -Site https://$tenant.sharepoint.com/sites/$site
  • Odstranit uživatele ze skupiny: Remove-SPOUser -LoginName $user@$tenant.com -Site https://$tenant.sharepoint.com/sites/$site -Group $group

Pokročilá automatizace s CSV v Microsoftu 365

Pro přidání nebo odebrání více uživatelů a oprávnění je nejefektivnější připravit strukturované soubory CSV a použít automatizované skripty. Například:

  • Vytvoření skupin z CSV:
    Import-Csv C:\O365Admin\GroupsAndPermissions.csv | ForEach {New-SPOSiteGroup -Group $_.Group -PermissionLevels $_.PermissionLevels -Site $_.Site}
  • Přidání uživatelů do skupin z CSV:
    Import-Csv C:\O365Admin\Users.csv | ForEach {Add-SPOUser -Group $_.Group –LoginName $_.LoginName -Site $_.Site}

Jak generovat uživatelské reporty a audity?

Jednou ze silných stránek PowerShellu je možnost exportovat informace a vytvářet reporty o účtech a oprávněních:

  • Uživatelé webu v SharePointu Online:
    Get-SPOUser -Site https://contoso.sharepoint.com/sites/contosotest | Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append
  • Pro více webů:
    Get-SPOSite | ForEach {Get-SPOUser –Site $_.Url} | Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append

Doporučení a praktické aspekty

Před spuštěním rozsáhlých operací vždy proveďte test v laboratorním prostředí nebo „mock-upech“, abyste se vyhnuli chybám, které by mohly ovlivnit produkční systémy. Je nezbytné si zvyknout dokumentovat a ukládat skripty a také kontrolovat přidělování oprávnění.

PowerShell je mnohem víc než jen příkazový řádek: pracuje s objekty, umožňuje filtrovat výstup, přesměrovávat informace a automatizovat věci, které by s grafickým rozhraním nebyly možné. Věnujte čas seznámení se s podrobnostmi o jednotlivých rutinách s... Get-Help a experimentujte s příklady přizpůsobenými vašemu prostředí.

Jak opravit chybu „CHYBÍ BOOTMGR“ ve Windows 11
Související článek:
Triky pro úpravu registru Windows 11 a odemknutí skrytých funkcí

Zvládnutí tohoto návodu vám poskytne větší kontrolu, rychlost a zabezpečení při správě uživatelů a skupin, a to jak na lokálních serverech, tak v cloudu, což zjednoduší opakující se úkoly a zlepší celkovou správu vašich systémů. Sdílejte tuto příručku, aby se o tomto tématu mohli dozvědět i ostatní uživatelé.


Přidat jako preferovaný zdroj v Googlu