- De leerling kan eenvoudige beheerstaken automatiseren d.m.v. een Powershell Script.
Theorie
Het concept: 'The Master Script'
In een professionele IT-omgeving voegt een beheerder niet handmatig elke map of instelling toe. We gebruiken scripts om fouten te voorkomen en tijd te besparen. Een volledig onboarding-script voert drie hoofdtaken uit:
- Identity: De gebruiker aanmaken in Active Directory (voorkennis).
- Storage: Een persoonlijke Home Directory aanmaken en de juiste machtigingen instellen.
- Mobiliteit: Het pad naar het Roaming Profile configureren zodat instellingen server-side worden bewaard.
Voorkennis: Roaming Profiles & Home Folders
- Roaming Profile: Een map op de server (meestal
\\Server\Profiles\%username%) waar de Windows-instellingen van de gebruiker staan. - Home Folder: Een persoonlijke netwerkschijf (meestal
H:) die direct gekoppeld is aan de unieke map van de gebruiker op de fileserver. - Variabelen: We gebruiken variabelen om het script herbruikbaar te maken voor elke nieuwe werknemer.
De PowerShell ISE: Jouw Werkplaats
De PowerShell ISE is een ingebouwde editor voor scripts. Het biedt:
- Syntax highlighting: Kleurcodes voor commando's en variabelen.
- IntelliSense: Automatische suggesties tijdens het typen.
- Scriptpaneel: De bovenste helft waar je de volledige logica bouwt.
Variabelen en Input
Om een professionele gebruiker aan te maken, hebben we drie types informatie nodig die we opslaan in variabelen (beginnend met $):
- Voornaam & Achternaam: Voor de weergave (Display Name).
- Inlognaam (sAMAccountName): De technische naam voor mappen (geen spaties/leestekens!).
- Wachtwoord: Een beveiligde string.
Het belang van Quoting
Namen kunnen spaties bevatten. Gebruik altijd dubbele aanhalingstekens (" ") rondom paden met variabelen:
- Goed (voorbeeld):
New-Item -Path "C:\Home\$Login" -ItemType Directory.
Opdrachtenblad: De 'New User' PowerShell Tool
Doel: Een script bouwen in PowerShell ISE dat een nieuwe gebruiker configureert, inclusief Home Folder en Roaming Profile.
Opdracht 1: Input verzamelen in de ISE
- Open de PowerShell ISE.
- Gebruik
Read-Hostom de$Voornaam,$Achternaamen$Loginop te vragen. - Voeg de regel
$VolledigeNaam = "$Voornaam $Achternaam"toe.
Opdracht 2: Mappenstructuur automatiseren
- Voeg regels toe die de volgende mappen aanmaken:
\\JARVIS\HomeUsers_<initialen>$\+ de$Login.\\JARVIS\Profiles_<initialen>$\+ de$Login.
- Gebruik hiervoor het commando uit de theorie.
Opdracht 3: De AD-User aanmaken
- Gebruik het
New-ADUsercommando in je script. - Gebruik
-Name $VolledigeNaamvoor de weergave en-SamAccountName $Loginvoor de inlognaam. - Koppel de home directory:
-HomeDirectory "\\JARVIS\HomeUsers_<initialen>$\$Login" -HomeDrive "H:" - Koppel het roaming profile pad:
-ProfilePath "\\JARVIS\Profiles_<initialen>$\$Login".
Screenshot: Toon het resultaat in 'AD Users and Computers' en de fysieke map op de server.
Differentiatie: De "Clean Coder"
Uitdaging A: Kleine letters afdwingen
Zorg dat de $Login automatisch wordt omgezet naar kleine letters met .ToLower().
Uitdaging B: Interactieve Wachtwoord-input
Pas je script aan zodat er een veilige pop-up verschijnt voor het wachtwoord met de parameter -AsSecureString.
Uitdaging C: De "Company" Property
Zorg dat het veld 'Company' in AD automatisch wordt ingevuld met "IT-Lab KMO".
- Met PowerShell kan ik onboardingstappen automatiseren.
- Ik kan met New-ADUser een gebruiker correct aanmaken in Active Directory.
- Ik kan een Home Directory en Roaming Profile koppelen via -HomeDirectory, -HomeDrive en -ProfilePath.