Wenn man Änderungen an den Lizenzen in Microsoft (Office) 365 vornimmt, erlebt man oft dass die „alten“ und die „neuen“ Lizenzen widersprüchliche Optionen enthalten. Zudem gibt es häufiger mal Probleme, wenn Lizenzen „gepoolt“ sind und gleichzeitig zu Konten hinzugefügt werden sollen. Außerdem kommt es schon mal vor, das „mal eben“ eine Lizenz für alle Benutzer zu ersetzen ist.
Da hilt es, wenn man „mal eben“ alle Microsoft 365 Lizenzen auf einmal ersetzen kann.
Die Umstellung der Lizenzen der Benutzern muss selbstverständlich so durchgeführt werden, das die Endbenutzer das nich bemerken und alle Daten erhalten bleiben.
To the rescue: Das neue Lizenz-SKU mit dem Cmdlet Get-MsolAccountSku
anschauen und via Set-MsolUserLicense
tauschen.
Was habe ich überhaupt für Lizenzen (SKU)?
Die SKU ist die Microsoft „Stock Keepig Unit“, also quasi der Artikel. Das „quasi“ steht hier für den Artikelumfang, wirklich gleich sind ide Artikel nie. Jeder Tenant bekommt siene „eigene“ Kopie davon. In diesem Fall „TCHERNBYL“ als Platzhalter betrachten.
„Seine“ SKUs schaut man sich am besten zuerst an.
PS C:\> Get-MsolAccountSku
AccountSkuId ActiveUnits WarningUnits ConsumedUnits
------------ ----------- ------------ -------------
TCHERNBYL:FLOW_FREE 10000 0 0
TCHERNBYL:SPB 18 0 18
TCHERNBYL:EXCHANGESTANDARD 1 0 1
TCHERNBYL:O365_BUSINESS_PREMIUM 18 0 0
Hier hat der Tentant FLOW_FREE (GUI-Name „Power Automate Free“), ein paar SPB („Microsoft 365 Business Premium“), Exchange Pa und O365_BUSINESS_PREMIUM (Meint heute „Microsoft 365 Business Standard“).
Welche SKU haben meine Benutzer?
Das lässt sich genau so schnell herausfinden, wenn man Get-MsolUser
filtert:
PS C:\> Get-MsolUser -All | Where {$_.isLicensed -eq "TRUE" -and $_.Licenses.AccountSKUID -eq "TCHERNBYL:SPB"}
UserPrincipalName DisplayName isLicensed
----------------- ----------- ----------
[email protected] Wiktor Petrowytsch True
Und wie tausche ich eine Lizenz gegen eine andere?
Im Beispiel wird „Business Premium“ durch „Business Standard“ für alle Lizenzierten Benutzer ausgetauscht:
PS C:\> Get-MsolUser -All | Where {$_.isLicensed -eq "TRUE" -and $_.Licenses.AccountSKUID -eq "TCHERNBYL:SPB"} | Set-MsolUserLicense –AddLicenses "TCHERNBYL:O365_BUSINESS_PREMIUM" –RemoveLicenses "TCHERNBYL:SPB"
Das hilt übrigens auch, wenn man im POrtal zwei vermeintlich identische Lizenzen sieht.
Welche einzelnen Microsoft 365 Pläne sind in einem Plan (=Vertrag) enthalten?
Das lässt sich mit dem ServiceStatus Property beantworten. Eine Liste für eine aktive SKU lässt sich, zum Beispiel, so ausgeben:
PS C:\> (Get-MsolAccountSku | where {$_.AccountSkuId -eq "TCHERNBYL:SPB"}).ServiceStatus
ServicePlan ProvisioningStatus
----------- ------------------
MDE_SMB Success
VIVA_LEARNING_SEEDED Success
Nucleus Success
M365_LIGHTHOUSE_PARTNER_PLAN1 Success
WINDOWSUPDATEFORBUSINESS_DEPLOYMENTSERVICE Success
UNIVERSAL_PRINT_01 Success
M365_LIGHTHOUSE_CUSTOMER_PLAN1 Success
POWER_VIRTUAL_AGENTS_O365_P3 Success
CDS_O365_P3 Success
PROJECT_O365_P3 Success
DYN365_CDS_O365_P3 Success
MFA_PREMIUM Success
EXCHANGE_S_FOUNDATION Success
ADALLOM_S_DISCOVERY Success
AAD_PREMIUM Success
KAIZALA_O365_P2 Success
MICROSOFT_SEARCH Success
OFFICE_SHARED_COMPUTER_ACTIVATION Success
WHITEBOARD_PLAN1 Success
[...]