Ben je het zat om telkens weer Active Directory (AD) Gebruikers en Computers (ADUC) te openen, rond te klikken, typfouten te maken en de handelingen uit te voeren om voor de zesde keer vandaag een nieuw gebruikersaccount aan te maken? Zo ja, dan moet je het veelvoorkomende proces van het toevoegen van een gebruiker aan Active Directory automatiseren met behulp van PowerShell en het New-ADUser cmdlet!
Het is vrijdagavond en een uur voordat je van plan bent om naar huis te gaan voor het weekend. Het was een drukke week, dus je hebt besloten om plannen te maken om de grote wedstrijd te kijken met je beste vrienden. Maar dan komt je baas nonchalant naar je toe en vraagt: “Heb je de e-mail ontvangen? Kun je dit afhandelen voor het einde van de dag?” Je opent snel Microsoft Outlook en jawel, het is een e-mail van de HR-afdeling, waarbij je geadresseerd bent door je manager, die je vraagt om 400 nieuwe werknemersaccounts voor Active Directory (AD) aan te maken voordat je het kantoor verlaat. Geweldig. Daar gaat de wedstrijd.
Je zoekt snel op internet naar opties om deze gebruikersaccounts snel aan te maken en ontdekt dat je de accountprovisionering in AD kunt automatiseren met behulp van de commandoregel en een PowerShell-cmdlet genaamd New-ADUser.
Meestal maken beheerders handmatig AD-accounts aan door gebruik te maken van de Active Directory-gebruikers en -computers MMC-snap-in die is geïnstalleerd op je desktopcomputer via Remote Server Administration Tools (RSAT). Maar op deze manier een AD-gebruiker aanmaken kost gemiddeld drie minuten per gebruikersaccount. Het aanmaken van AD-gebruikersaccounts is geen glamoureuze taak en is rijp voor automatisering.
Er zijn drie gebruikelijke manieren waarop beheerders AD-gebruikersaccountobjecten aanmaken met behulp van het New-AdUser
cmdlet.
- Voeg een Active Directory gebruikersaccount toe met behulp van de vereiste en aanvullende cmdlet parameters.
- Kopieer een bestaand AD gebruikersobject om een nieuw account te maken met behulp van de
Instance
parameter. - Koppel het
Import-Csv
cmdlet met deNew-ADUser
cmdlet om meerdere Active Directory gebruikersobjecten te maken met behulp van een door komma’s gescheiden waarde (CSV) bestand.
Deze praktijken kunnen soms worden gecombineerd om samen een efficiëntere oplossing te creëren. Bijvoorbeeld, je kunt alle drie de opties gebruiken om een sjabloon-AD-account te maken dat kan worden gekopieerd met behulp van een CSV-bestand om meerdere nieuwe AD-accounts te genereren.
In dit artikel ga je leren hoe je New-AdUser
kunt gebruiken en profiteren van elk van deze methoden.
Beheer en rapporteer over Active Directory, Exchange en Microsoft 365 met ManageEngine ADManager Plus. Download gratis proefversie!
Vereisten
Voordat je aan de slag gaat met de New-AdUser
cmdlet, moet je eerst zorgen dat je aan een paar vereisten voldoet.
- Windows PowerShell 5.1
- De Remote Server Administration Tools (RSAT)-pakket is geïnstalleerd. Dit pakket installeert de Active Directory PowerShell-module, die het
New-AdUser
-cmdlet bevat - Aangemeld op een Windows-computer in hetzelfde domein als de gebruikersaccounts die u wilt maken
- Aangemeld als een AD-gebruikersaccount met toestemming om nieuwe gebruikersaccounts te maken
Zodra u aan deze vereisten voldoet, kunt u aan de slag!
Het maken van een enkel gebruikersaccount met behulp van het New-ADUser-cmdlet
Laten we eerst een enkel gebruikersaccount maken om te laten zien hoe New-ADUser
op een basaal niveau werkt. U zult merken dat New-ADUser niet veel verplichte parameters heeft. Sterker nog, de enige verplichte parameter is de Name
-parameter, maar deze wordt zelden alleen gebruikt.
U zult meestal veel verschillende parameters gebruiken om een gebruikersaccount te maken. Gelukkig zijn de meeste parameters zelfverklarend en komen ze goed overeen met wat u ziet in ADUC. Zoals u kunt zien in het onderstaande voorbeeld, kunt u gemakkelijk veel parameters gebruiken. Elke parameter komt ongeveer overeen met een attribuut van een enkel gebruikersaccount.
Merk op dat we in het voorbeeld backticks gebruiken. Dit is alleen om een lange enkele regel te voorkomen voor leesbaarheidsdoeleinden.
De organisatie-eenheid (OU) waar het AD-gebruikersobject is opgeslagen, mag geen duplicaat van SamAccountName hebben.
Nu het account is aangemaakt, bevestig dan dat het account is aangemaakt met behulp van het Get-ADUser
cmdlet. Hieronder kun je zien dat Get-AdUser
enkele veelvoorkomende attributen retourneert voor het zojuist aangemaakte gebruikersaccount.
Het kopiëren van een bestaand AD-gebruikersobject
Een andere methode voor accountcreatie is het kopiëren van een bestaand AD-gebruikersobject en het gebruiken als sjabloon voor een nieuw AD-account. Er zijn verschillende voordelen aan deze aanpak:
- Het bespaart tijd omdat je niet elk parameter afzonderlijk hoeft op te geven
- Het helpt bij het standaardiseren van het maken van AD-accounts
- Het voorkomt menselijke fouten veroorzaakt door handmatige accountcreatie en maakt het mogelijk dat medewerkers in hetzelfde team dezelfde aangepaste AD-attributen hebben
Voor dit voorbeeld gebruik je het zojuist aangemaakte account als sjabloon (kesapp-test). Misschien moet je een nieuw gebruikersaccount maken met dezelfde staat, locatie, afdeling, land en stad AD-attributen. Dit nieuwe account is voor de medewerker James Brown.
Merk op dat er een beperking is bij deze aanpak en dat alleen de volgende AD-accounteigenschappen die worden vermeld in de onderstaande link kunnen worden gekopieerd met dit proces. Voor meer informatie, bekijk de Copy a User’s Properties Microsoft docs pagina.
De eerste stap is het vinden van het AD-gebruikersaccount dat als sjabloon zal worden gebruikt, waarbij ervoor wordt gezorgd dat alle attributen die moeten worden gekopieerd, worden verstrekt via de Properties
-parameter. Gebruik hiervoor de Get-ADUser
-cmdlet zoals hieronder getoond. Hiermee wordt eenvoudig het AD-gebruikersobject opgeslagen in de variabele $template_account
.
Merk op dat de tweede regel de UserPrincipalName
(UPN)-eigenschap van het sjabloonobject instelt op $null
. Dit wordt aanbevolen om ervoor te zorgen dat de UPN van het sjabloon uniek is. Elk AD-gebruikersaccount moet een unieke UPN hebben.
Zodra je het sjabloon-gebruikersaccount hebt vastgelegd, kun je dat object gebruiken als waarde voor de Instance
-parameter en eventuele gebruikersspecifieke parameters verstrekken om de andere attributen in te vullen zoals hieronder getoond.
Je zou nu een account moeten hebben voor James met alle toegestane AD-attributen overgenomen door het sjabloonobject.
Valkuilen bij gebruikersaccountsjablonen
Een veelvoorkomende fout bij deze aanpak is het gebruik van het *-teken als jokerteken voor de Properties
-parameter bij het vastleggen van het sjabloonobject. Beheerders doen dit omdat ze alle gebruikersaccounteigenschappen in één keer willen kopiëren. Maar dit werkt niet.
Bijvoorbeeld, de onderstaande opdracht zal een fout genereren:
Het probleem met deze aanpak is dat het attribuut UserPrincipalName uniek moet zijn over het AD Forest. Daarom moet de UPN worden overschreven in de New-ADUser
-opdracht of worden ingesteld op null in de sjabloongegevens (hieronder weergegeven).
Nog een reden waarom de wildcard-aanpak faalt, is dat sommige van de AD-eigenschappen die worden gekopieerd door de wildcard alleen-lezen zijn (bezit van de Security Account Manager).

Het maken van nieuwe gebruikersaccounts met een CSV-bestand
Wat je nog verder kunt doen, is werknemersaccounts uit een CSV-bestand lezen en New-ADUser
gebruiken om AD-gebruikersaccounts te maken.
Deze oplossing wordt vaak gebruikt door veel organisaties om accountcreatie te automatiseren in combinatie met HR-systemen die platte bestanden maken met informatie over de onboarding van nieuwe medewerkers.
Laten we zeggen dat je een lijst met nieuwe medewerkers hebt ontvangen in een CSV-bestand. Elke rij in het CSV-bestand vertegenwoordigt een enkele rij en heeft de volgende kolommen: Voornaam, Achternaam, Afdeling, Staat, WerknemerID en Kantoor. De naamgevingsconventie voor het gebruikersaanmeldingsaccount is de eerste initiaal van de werknemer samengevoegd met de achternaam, zoals ksapp voor de werknemer Kevin Sapp.
Zodra je het CSV-bestand hebt, gebruik dan Import-Csv
om het CSV-bestand te lezen en elke rij vast te leggen als een enkel object. Itereer vervolgens over elk van die rijen en geef de juiste velden in het CSV-bestand door aan de verwachte parameters van New-ADUser
. Je kunt hieronder een voorbeeld hiervan zien.
Beheer en rapporteer Active Directory, Exchange en Microsoft 365 met ManageEngine ADManager Plus. Download gratis proefversie!
Samenvatting
In deze post heb je geleerd hoe je nieuwe gebruikersaccounts kunt voorzien met behulp van drie verschillende methoden:
- Enkelvoudige accountcreatie
- Het kopiëren van een gebruikersaccount vanuit een sjabloon
- Het aanmaken van meerdere accounts met behulp van een CSV-bestand
Dit zijn basismanieren om nieuwe gebruikers in je omgeving te voorzien. Deze methoden werken uitstekend wanneer je ze bundelt door een PowerShell-functie en module te maken. Je kunt zelfs nog een stap verder gaan en je eigen automatiseringsproces maken met behulp van een SQL- of Oracle-database als bron (in plaats van een CSV-bestand). Voel je vrij om elke methode te benutten op basis van je eigen unieke vereisten en gebruiksscenario’s.
Hopelijk bespaart deze informatie je in moeilijke situaties! Je hebt een nieuwe vaardigheid geleerd en je kon met je vrienden naar het feest gaan zonder je werk-privébalans op te offeren!