Mehrere SharePoint Services in Microsoft Graph Lizenzabfrage

Aktuell aktiviert Microsoft Clipchamp als neues Produkt für folgende Lizenzen:

  • Microsoft 365 E5
  • Microsoft 365 E3
  • Microsoft 365 Business Premium
  • Microsoft 365 Business Standard

Mit Clipchamp können Mitarbeitende in OneDrive und SharePoint gespeicherte oder über Microsoft Stream abgespielte Videos bearbeiten.

Nachlesen:  Microsoft Clipchamp als neues Produkt für Videos

Da Clipchamp für oben erwähnte Lizenzen in Aktivierung ist nutze ich es zur Simulation.
Ein Administrator kann per Code über Microsoft Graph die aktiven Servicepläne für ein Benutzerkonto überprüfen. Clipchamp ist nun ebenfalls ein Serviceplan.

Clipchamp Serviceplan
Clipchamp Serviceplan

Abhängig wie die Abfrage für ein Benutzerkonto erfolgt zeigt Microsoft Graph teils mehrere SharePoint Services.


Abfrage 1, über assignedPlans
PowerShell
Import-Module Microsoft.Graph.Authentication
Connect-Graph -Scopes User.Read.All
$Url = 'https://graph.microsoft.com/v1.0/users/<UserPrincipalName>?$select=id,userPrincipalName,displayName,assignedPlans'
$Result = Invoke-MgGraphRequest -Method GET -Uri $Url -ContentType "application/json"  
$Result.assignedPlans.GetEnumerator() | ?{$_.service -eq "SharePoint" -and $_.capabilityStatus -eq "Enabled" }
Disconnect-Graph


Abhängig zur Lizenz liefert die API mehrere aktive SharePoint Services zurück.
Am Beispiel von M365 Business Premium.

PowerShell
  • Bei ID c7699d2e-19aa-44de-8edf-1736da088ca1 handelt es sich um SharePoint Plan 1.
  • Bei ID a1ace008-72f3-4ea0-8dac-33b3a23a2472 um Clipchamp.
  • Bei ID e95bec33-7c88-4a70-8e19-b10bd9d0c014 um Office for the web.

Office for the web ist vom SharePoint Plan abhängig, Clipchamp ist nicht davon abhängig. In der Hilfe über Clipchamp wird die Serviceplan ID erwähnt.

The ServicePlanId for Clipchamp is a1ace008-72f3-4ea0-8dac-33b3a23a2472. The ServicePlanName is CLIPCHAMP.

Die Dokumentation über assignedPlans beschreibt das Property service. Es handelt sich um eine Angabe unter welchen Dienst das Produkt bei Microsoft fällt.

service: The name of the service; for example, exchange.

Für die korrekte Ausgabe des ServiceplanName sollte Abfrage 2 genutzt werden.


Abfrage 2, über licenseDetails
PowerShell
Import-Module Microsoft.Graph.Authentication
Connect-Graph -Scopes User.Read.All
$Url = 'https://graph.microsoft.com/v1.0/users/<UserPrincipalName>/licenseDetails' 
$Result = Invoke-MgGraphRequest -Method GET -Uri $Url -ContentType "application/json"  
$Result.value.servicePlans.GetEnumerator() | ?{($_.servicePlanName -eq "CLIPCHAMP" -or $_.servicePlanName -like "*SHAREPOINT*") -and $_.provisioningStatus -eq "Success"  } 
Disconnect-Graph


Der Unterschied gegenüber Abfrage 1 ist erkennbar. ServiceplanName wird für alle Pläne in normaler Form dargestellt.

PowerShell
Share
Avatar-Foto

Tobias Asböck

Tobias ist ein Senior System Engineer mit rund 10 Jahren Berufserfahrung für Microsoft 365 Produkte wie SharePoint Online, OneDrive for Business, Teams Collaboration, Entra ID, Information Protection, Universal Print und Microsoft 365 Lizenzierung. Aus der Vergangenheit kennt er über einen Zeitraum von 15+ Jahren die Planung, Administration und den Betrieb von SharePoint Server Umgebungen. Tobias ist ein PowerShell Scripter mit Zertifizierungen für Microsoft 365 Produkte. In seiner Freizeit beschäftigt sich Tobias mit Aktualisierungen in der M365-Welt, ist mit seinem Rennvelo unterwegs und anderen sportlichen Aktivitäten beschäftigt. Bei Fragen kontaktiere mich über LinkedIn oder [email protected].

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert