Active Directory Innsikt (del 9) - Automatisering brukerkonto provisioning

I denne serien av artikler vi har vært undersøker ulike utstedt involvert i planlegging, utrulling og vedlikehold av Active Directory-miljøer. Mens det er helt klart viktig at du planlegge alt nøye før du kaster ut eller utvide Active Directory infrastruktur, er det også viktig som administrator av Active Directory som din daglige driften effektiviseres.

Når Microsoft først introdusert Active Directory som en del av Windows 2000 Server, målet var først og fremst å gjøre implementere og administrere nettverkskatalogtjenester så enkelt som mulig for å oppmuntre brukere av Novell NetWare, den mest populære og allment distribuert nettverkskatalog produkt på den tiden, for å vurdere å migrere fra NetWare til Aktiv katalogen.

Hva hovedsakelig skilles Active Directory da den ble innført fra NetWare var lett-å-bruke grafisk brukergrensesnitt for Active Directory administrasjonsverktøyene. Blir selvsagt hva som er enkelt å bruke for å utføre en administrativ oppgave raskt kjedelig og utsatt for feil når den oppgaven må gjentatte ganger utført. Et vanlig eksempel på dette er oppgaven med klargjøring, konfigurere og administrere brukerkontoer. Mens GUI-basert administrasjonsverktøy gjør provisioning en håndfull nye brukerkontoer så enkel at nesten hvem som helst kan gjøre det, store bedrifter som har tusenvis av brukere med hyppig turn gjengi en slik tilnærming til brukeradministrasjon veldig kjedelig faktisk.

Microsoft først prøvde å ta opp noen av disse bekymringene ved å gi et utfyllende sett-kommandolinjeverktøy kalt Windows 2000 Resource Kit Tools som ble senere gjen utstedt i utvidet form som Windows Server 2003 Resource Kit Tools. Mange administratorer fortsatt bruke noen av disse verktøyene for visse administrative oppgaver selv om de verktøyene ikke støttes av Microsoft, og noen av dem ikke fungerer ordentlig på den nyeste versjonen av Windows Server-plattformen.

Microsoft bare alvor adressert dette mangel av å ikke være i stand til å utføre mange Active Directory administrasjonsoppgaver fra kommandolinjen med introduksjonen av Windows Powershell, Microsofts oppgavebasert kommandolinjekall og skriptspråk for systemadministrasjon, og særlig med versjon 2.0 av Windows Powershell og sin nye Active Directory-modulen som ble inkludert i Windows Server 2008 R2. Ved å aktivere full kommando-linjen av Active Directory funksjoner og funksjonalitet, gjør at Windows Powershell for administratorer å automatisere vanlige administrative oppgaver som ville ta for mange skritt for å utføre ellers.

For å få mer innsikt i hvordan du kan nærme seg oppgaven automatisere Active Directory kontoadministrasjon ved hjelp av Windows Powershell, har jeg bedt om Adam Bertram, en velkjent ekspert i Powershell automatisering, for å gi oss et eksempel som viser hvordan du kan bruke Powershell til å klargjøre nye brukerkontoer i Active Directory. Adam er en uavhengig konsulent, teknisk forfatter, trener og programleder som spesialiserer seg på konsulenttjenester og evangelisering alle ting IT automatisering hovedsakelig fokusert rundt Windows Powershell. Adam er også et Microsoft Windows Powershell MVP, en 2015 powershell.org "Powershell Hero" og har flere Microsoft IT-pro sertifiseringer. Han er også forfatter, trener og programleder og forfattere IT pro kursinnhold for Pluralsight og er en regelmessig bidragsyter til en rekke trykte og elektroniske publikasjoner og presenterer på ulike brukergrupper og konferanser. Du kan finne Adam blogg på http://adamtheautomator.com og du kan følge ham på Twitter påadbertram.

Opprette nye Active Directory-kontoer ved hjelp av Powershell

En felles oppgaver mange sys admins har å gjøre er å klargjøre nye AD kontoer for ansatte. Hva gjør denne prosessen ser ut nå? Her er et eksempel på en typisk arbeidsflyt uten automatisering.


    manuelt åpne opp Active Directory Users and Computers (ADUC) eller Active Directory Administrative Center (ADAC).
  1. Start det nye brukeroppretting veiviser.

    Skriv inn fornavn, etternavn, avdeling, sikre og sette det andre attributter er standard.

    E-HR eller noen andre for å varsle dem om at kontoen har blitt utarbeidet. < .no>

    Dette tar for lang tid og har mange muligheter for deg å gjøre en feil. Du er nødt til å gå gjennom denne prosessen hver, eneste gang en ny medarbeider er brakt på og det er å bli gammel. La oss gå over et eksempel på hvordan du kan gjøre dette i Powershell.

    Før vi kommer så langt inn i detaljene jeg kommer til å anta at du har alle forutsetninger. Jeg bruker Powershell v4 med en Windows Server 2012 R2 Active Directory og Exchange 2013. Imidlertid kan disse trinnene fungerer for andre tidligere utgaver versjoner også. Jeg har også lastet ned Remote Server Administration Tools (RSAT) pakke som inkluderer Active Directory Powershell-modulen. Jeg er også forutsatt at du har alle rettigheter til å opprette nye brukere i AD.

    Så, hvor skal vi begynne? Etter at du har fått RSAT installert bør du nå ha Active Directory-modulen. Dette gir deg mange nyttige cmdlets å samhandle med AD. Den vi skal dekke her er New-AdUser. Som med de fleste Powershell cmdlets, det er selvforklarende i hva som skjer; det skaper en ny AD bruker!

    Ny-AdUser har mange ulike parametere du kan bruke til å opprette en ny brukerkonto. Nesten hver attributt som du ser i hver av kategoriene på en brukerkonto er tilgjengelig for deg på opprettelse tid. Akkurat nå, har du sannsynligvis ikke kan stille alle de ting du trenger rett utenfor balltre. Du har til å lage den, så gå tilbake for å endre det. Med Powershell, det er ikke nødvendig lenger.

    Når du skriver noen script i Powershell er det en god idé å ha alle de inngangene du trenger på forhånd. For å bruke Ny-ADUser du trenger å vite noen attributter for brukerkontoen du skal lage. Disse er de som jeg alltid brukt:

    Brukernavn

    Tittel

    givenname (Fornavn)

    etternavn (etternavn)

    Passord

    La oss gi hver av disse til en variabel. Legg merke til at passordet er i klar tekst. Dette er ikke god praksis sikkerhet-messig, men er utenfor omfanget av denne artikkelen.

    $ brukernavn = 'jdoe' $ Tittel = 'Accounting Manager "$ Firstname =' John '$ Lastname =' Doe '$ passord =' ​​p @ $$ w0rd '

    På grunn av antall parametere her jeg skal bruke et konsept kalt splatting. Det er bare en morsom høres måte å sende parametre til en funksjon eller kommando i Powershell.

    $ Parametere = @ {'navn' = $ brukernavn 'Tittel' = $ Tittel 'givenname' = $ Fornavn ' etternavnet '= $ Lastname' Passord '= (ConvertTo-SecureString $ Passord -AsPlainText -Force)} Ny-AdUserParameters

    Ferdig! Konto opprettet! Det er virkelig så enkelt som det. Men det er ikke ekte nyttig fordi for hver konto du er nødt til å endre disse variablene hver gang. Dette er når du kan lage parametre til skriptet.

    Gå videre og lage en Powershell script som heter Create-NewUser.ps1. La det se omtrent slik ut:

    param ($ brukernavn, $ Tittel, $ Fornavn, $ Etternavn, $ passord) $ Parametere = @ {'navn' = $ brukernavn 'Tittel' = $ tittel 'givenname' = $ Firstname 'etternavnet' = $ Lastname 'Passord' = (ConvertTo-SecureString $ Passord -AsPlainText -Force)} Ny-AdUser @ ParametersSend-MailMessage -Å "John Doe < [email protected]>" -Fra "IT-avdelingen < [email protected]>" -Subject 'Din AD kontoen har vært setup'

    Ved å flytte disse variablene opp som parametre du kan nå gjøre forskjellige brukerkontoer og ikke trenger å endre manuset på noen måte. Du ville bare ringe script som dette:

    PS > Lag-NewUser.ps1 -Name jdoe -title 'Accounting Manager "-FirstName' John '-LastName' Doe '-password' p @ $$ w0rd12 '

    Når dette skriptet er kjørt det ville skape brukerkontoen og deretter umiddelbart sende en e-post til brukeren blir satt opp. Ganske kult, ikke sant! Himmelen er grensen her. Tinker rundt og se hva annet du kan gjøre med dette

    . Merk: Hvis du synes dette tipset nyttig gjerne ta turen til en av mine Pluralsight kurs rett Powershell Verktøyfundamentals. En av de "verktøy" jeg oppretter i dette kurset heter Active Directory konto Automator hvor jeg viser hvordan man egentlig synkroniseringsbrukerkontoer fra en CSV-fil for enkelt å lage AD-kontoer. Det går inn i mye mer detaljert enn det jeg gjør her.

    Likevel fikk spørsmål om Active Directory?

    Hvis du har spørsmål om domenekontroller maskinvare planlegging, det beste stedet å spørre dem er Active Directory Domain Services forum på TechNet. Hvis du ikke får hjelpen du trenger det, kan du prøve å sende spørsmålet ditt til [email protected] slik at vi kan publisere den i English våre lesere delen av vårt nyhetsbrev og se om noen av de nesten 100 000 IT pro abonnenter av vårt nyhetsbrev har noen forslag angående problemet. Anmeldelser