Opdrachtkaart 7 : Onboarding Automatisatie

🎯
  • 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:

  1. Identity: De gebruiker aanmaken in Active Directory (voorkennis).
  2. Storage: Een persoonlijke Home Directory aanmaken en de juiste machtigingen instellen.
  3. 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

  1. Open de PowerShell ISE.
  2. Gebruik Read-Host om de $Voornaam, $Achternaam en $Login op te vragen.
  3. Voeg de regel $VolledigeNaam = "$Voornaam $Achternaam" toe.

Opdracht 2: Mappenstructuur automatiseren

  1. Voeg regels toe die de volgende mappen aanmaken:
    • \\JARVIS\HomeUsers_<initialen>$\ + de $Login.
    • \\JARVIS\Profiles_<initialen>$\ + de $Login.
  2. Gebruik hiervoor het commando uit de theorie.

Opdracht 3: De AD-User aanmaken

  1. Gebruik het New-ADUser commando in je script.
  2. Gebruik -Name $VolledigeNaam voor de weergave en -SamAccountName $Login voor de inlognaam.
  3. Koppel de home directory: -HomeDirectory "\\JARVIS\HomeUsers_<initialen>$\$Login" -HomeDrive "H:"
  4. 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.