Få styr på dine Office 365 licenser – del 2

5. oktober 2016 | Office 365

I første del af “Få styr på dine Office 365 licenser” demonstrerede jeg hvordan du via PowerShell kunne skabe dig et overblik over de tilgængelige licenser i din Office 365 samt hvordan du kunne skræddersy et licenssæt og tildele det til dine brugere. Her i anden del vil jeg gennemgå et enkelt PowerShell script som kan benyttes til at skifte eller sætte licenser på brugerne helt automatisk.

Det forudsætter at du har overblik over dine licenser, hvad de hedder og hvilke services du eventuelt vil udelade fra en given licens. Hvis ikke du har det endnu – så check lige første del igen inden du fortsætter her.

intro

Formålet med at lave et script der kan håndtere licensstyringen i Office 365 er, at jeg bliver fysisk dårlig af at skulle sidde og klikke mig igennem interfacet i portalen når der fx skal tildeles licenser til brugerne. Ok, måske ikke fysisk dårlig – men så i hvert fald irriteret over det manuelle klikken rundt med musen.

Nuvel, det kan gå for en enkelt bruger eller to og måske endda op til grænsefladens maksimum af bulk-markerede brugere. Men skal det gøres for rigtig mange brugere er PowerShell scripts vejen at gå.

En anden forudsætning for at kunne gøre det i den grafiske Office 365 portal er, at du rent faktisk har muligheden for at fremsøge de brugere du gerne vil ramme. De muligheder for filtering der er tilgængelige i portalen er måske for begrænsede til at du rammer den rigtige gruppe af brugere du ønsker at tildele licenser til.

Men uanset årsag – så synes jeg bare det er sjovere at bruge tiden på at lave arbejdet i PowerShell og bagefter læne mig tilbage og se hvordan licenserne bliver tildelt uden at jeg har klikket med musen. Lad os prøve at kigge på det…

First things first – log på Office 365

Som altid skal vi først lige skabe en forbindelse til vores Office 365 tenant med en konto der har nogle rettigheder. Sørg for at du erstatter variablen $adminuser med dit eget administrator brugernavn:

Indtast din adconnect2gangskode i den boks der fremkommer.

Hvis du allerede er logget ind via PowerShell eller PowerShell ISE kan du udkommentere disse linier i scriptet med et “#” tegn.

 

 

Definér licens optioner

Vi skal nu have defineret hvilke licenser vi gerne vil tildele og på én af licenserne laver vi en option således at den kun indeholder nogle enkelte af de services der er tilgængelige i licensen. Vi fjerner bl.a. RMS, Skype, Exchange og Yammer.

I eksemplet her udelukker vi således nogle enkelte services i Office 365 Education licensen. Husk at skift til dine egne licenser og tenant-navn:

Definér brugere

Det næste der skal ske er, at vi skal have defineret hvilke brugere det er vi gerne vil arbejde med. Altså de brugere som skal have skiftet de gamle licenser ud med de nye licenser vi netop har defineret. Der er her rige muligheder for at justere filteret så du kun kommer til at ramme de brugere der rent faktisk skal have de nye licenser. Det betyder også at du måske først kan justere filteret så du rammer en lille gruppe af brugere for at sikre dig at alt ser korrekt ud.

I eksemplet her ønsker vi at ramme de brugere som har noget med ordet “test” i deres navn; deres brugernavn skal ende på noget med “@tenant-navn.dk” og de skal have en licens tilknyttet i forvejen. Når licensoplysninger er hentet, så skriv lige på skærmen hvor mange det drejer sig om og vent 5 sekunder inden der fortsættes:

Skift licenserne

Nu kommer vi til den helt vitale del af scriptet. Det er her vi fjerner de eksisterende licenser fra brugerne og tildeler det nye licenssæt. Vi looper igennem hver enkelt bruger for at finde ud af hvilke licenser de har fået tildelt og skriver resultatet på skærmen. Så fjerner vi alle brugerens licenser for derefter at tilføje de nye. Til sidst slutter vi af med at skrive hvor mange vi har skiftet licenser på samt hvilke licenser de nu er tildelt.

Det er i denne del af scriptet at tingene kan gå galt hvis ikke vi enten rammer de rigtige brugere eller har defineret licenserne korrekt. For at sikre os at vi har tildelt det vi ønsker, slutter vi af med dels at skrive hvilke licenser vi har tildelt hver enkelt bruger samt antallet af brugere vi har skiftet licens på.

Du bør udkommentere de 2 sidste linier når du har sikret dig at scriptet kører som det skal med dine test brugere. Ellers får du en kæmpe liste med brugere og deres licenser listet som afslutning. Det kan være fint nok i forbindelse med test, men i produktion vil du i praksis stole på at antallet passer. 🙂

Output fra scriptet

Hvis du sætter de enkelte dele sammen og tilretter det med dine egne oplysninger vil du have et samlet script du kan bruge i det daglige til at tildele licenser. Filteret gør at du kan justere det sådan at du også bare rammer en enkelt bruger om nødvendigt. Tag det som inspiration og gør dine egne erfaringer.

output

Det står dig frit for at benytte kodestumperne, men husk at ret dem til inden brug. Det betyder at du kan sætte din museskade i bero og få mere tid til noget af det andet vigtige arbejde du mangler at få lavet.

God weekend 😉

OBS! Opdatering 09/2017:
I dag vil jeg helt klart anbefale, at du i stedet benytter gruppebaseret licensstyring i Office 365 / Azure AD, hvis du har mulighed for det. Når jeg får tid, vil jeg også skrive en artikel omkring denne metode at tildele licenser på. Men indtil da, er du velkommen til at kontakte mig.

0 kommentarer

Indsend en kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Share This