gray pen beside coins on Indian rupee banknotes

Microsoft 365 Self-service Purchase Konfiguration

In diesem Artikel erkläre ich den M365 self-service purchase. Dieses Feature muss man deshalb auf dem Radar haben, weil man sicherlich unterbinden möchte, dass Benutzer eigenständig (ohne die Bestellprozesse des Unternehmens zu nutzen) Lizenzen erwerben und dann den Unternehmens-Helpdesk um Unterstützung bitten. Microsoft sieht dieses Problem nicht, aber meiner Meinung nach sieht die Realität anders aus. Kein Anwender sagt „das habe ich selber gekauft also frage ich nicht bei der Hotline“.

Was ist das nun, dieser Self-service purchase?

Microsoft versucht den Anwendern die Möglichkeit zu geben, Produkte in Eigenregie zu testen, indem diese gekauft werden. Um ungewollte Kosten für das Unternehmen zu vermeiden, können Admins die Optionen via Microsoft 365 Admin Center oder PowerShell anpassen. Um etwas zu kaufen, ist aber in jedem Fall eine Kreditkarte notwendig.

Wichtig: Stand jetzt (während ich diese Zeilen schreibe), werden die folgenden Produkte angeboten:  
- PowerBI
- PowerApps
- PowerAutomate
- Project
- Visio

Ich habe den Artikel in folgende Kapitel aufgeteilt:

Self-service purchase konfigurieren (mit PowerShell)

Self-service purchase konfigurieren (im Microsoft 365 Admin Center)

Weiterführende Links

Self-service purchase konfigurieren (mit PowerShell)

Für die Nutzung des PowerShell Moduls gibt es eine handvoll Voraussetzungen, die hier beschrieben sind: Use AllowSelfServicePurchase for the MSCommerce PowerShell module | Microsoft Docs. Für alle, die sich den Artikel nicht komplett durchlesen möchten, hier die Kurzfassung:

  • Windows 10
  • Lokale Adminrechte (oder das Recht Module zu installieren)
  • Mindestens Billing Administrator im Tenant

Zuerst muss das PowerShell Modul installiert und importiert werden (ich selbst mache das für gewöhnlich im Userprofil – nicht systemweit wie MS das schreibt). Mit dem installierten Modul kann man sich dann ganz einfach mit der Konfiguration verbinden:

Install-Module -Name MSCommerce -Scope CurrentUser
Import-Module -Name MSCommerce
Connect-MSCommerce
Code-Sprache: PowerShell (powershell)

Wie man das von anderen powerShell Modulen kennt, (beispielsweise AzureAD oder ExchangeOnlineManagement), muss man seine Anmeldeinformationen in einem extra Fenster angeben. Die Anmeldeinformationen müssen von einem Account sein der genug Rechte im Tenant hat (mindestens Billing Admin).

Mit der aufgebauten PowerShell Sitzung kann man nun die Konfiguration ansehen und nach Belieben anpassen:

Get-MSCommercePolicy -PolicyId AllowSelfServicePurchase
Code-Sprache: PowerShell (powershell)

Das Beispiel habe ich aus der oben erwähnten Microsoft Doku übernommen. Wie man sieht ist der Output recht.. hmm.. naja.. sagen wir mal „knapp“:

Um etwas zu erhalten mit dem man was anfangen kann, muss man exakt wissen was man abfragen muss. Man muss die Produkt ID mitgeben. Leider gibt es kein Kommando um die IDs abzufragen, da waren die Entwickler etwas vorschnell:

Auch die Hilfe ist eher *schüchtern* ….

Ach Microsoft… das könnt ihr doch besser!! Macht es den Admins halt nicht so schwer, PowerShell soll doch einfach sein! Zum Glück findet man die IDs in der Doku (wenn man weiß wo): Use AllowSelfServicePurchase for the MSCommerce PowerShell module | Microsoft Docs. Ich liste sie der Einfachheit halber (und damit man sich die Suche spart) hier auch mit auf:

Produkt / LizenzProdukt ID
PowerApps per userCFQ7TTC0KP0P
PowerAutomate per userCFQ7TTC0KP0N
PowerAutomate RPACFQ7TTC0KXG6
PowerBI Premium (standalone)CFQ7TTC0KXG7
PowerBI ProCFQ7TTC0L3PB
Project Plan 1CFQ7TTC0KXND
Project Plan 3CFQ7TTC0KXNC
Visio Plan 1CFQ7TTC0KXN9
Visio Plan 2CFQ7TTC0KXN8

Wunderschöne IDs, oder? Nein 🙂

Na gut, es gibt doch eine Möglichkeit die IDs per PowerShell abzufragen (wenn man weiß wonach man genau sucht):

Get-MSCommerceProductPolicies -PolicyId AllowSelfServicePurchase | where {$_.ProductName -match 'Project *'}
Code-Sprache: PowerShell (powershell)

Man kann hier mit Platzhaltern suchen (dann wird die Ergebnisliste länger) oder nach einem speziellen Produkt. Das Kommando listet alles auf was es als Treffer findet:

Im Rest des Artikels nehme ich Project Plan 1 als Beispiel, das macht die Beispiele leichter verständlich. Im Klartext sieht unser Kommando also so aus:

Get-MSCommerceProductPolicy -PolicyID AllowSelfServicePurchase -ProductID CFQ7TTC0KXND 
Code-Sprache: PowerShell (powershell)

Hier sieht man auf den ersten Blick, dass Project Plan 1 für self-service purchase aktiviert ist. Diese Einstellung kann man auch per PowerShell anpassen (indem man die dementsprechende ID mitgibt):

# Project Plan 1 freischalten
Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0KXND -Enabled $true

# Project Plan 1 sperren
Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0KXND -Enabled $false
Code-Sprache: PowerShell (powershell)

Self-service purchase konfigurieren (im M365 admin center)

Das lässt sich schnell und einfach beantworten – es geht nicht. Stand heute. Man muss die PowerShell hernehmen. Wenn es im Tenant Lizenzen gibt, die derartig erworben wurden, gibt es noch eine reduzierte Ansicht, die nur diese Lizenzen anzeigt, damit man die zuweisen kann. Das wars.

Administratoren können die so erworbenen Lizenzen im Menüpunkt Billing -> Licenses und dann im Filter Self-service sehen.

Mehr Infos und FAQs zu dem Thema gibt es hier: Self-service purchase FAQ | Microsoft Docs.

Self-service purchase aktivieren (offizielle Doku): Use AllowSelfServicePurchase for the MSCommerce PowerShell module | Microsoft Docs

Published by Andreas

Gründer von M365 Evangelists Cloud-Architekt, Strategieberater, Consultant für Microsoft Technologien Graph API Enthusiast, PowerShell Enthusiast