Alejandro Mazzitelli

all about Microsoft 365!

Admin M365 Powershell

Bloquear Self-Service Purchase en Microsoft 365

Self-Service Purchase en Microsoft 365 (Licencias de autoservicio) son productos que los usuarios comunes de M365 pueden comprar sin pasar un por un administrador de Microsoft 365. Microsoft anunció esta funcion en 2019 y desde su entrada en vigencia, cualquier administrador que no esté atento puede provocar que se generen costos no deseados. Entre los productos que los usuarios pueden comprar son: Visio, Project, Windows 365, Power BI entre otros.

Si bien como administradores podemos enterarnos de los usuarios que realizar comprar, es muy probable que quiera bloquear esta característica, pero hay que estar en permanente atención a los anuncios que realizar Microsoft debido a que el bloqueo que vamos a ver en este articulo es solo por producto, lo cual si en el futuro Microsoft anuncio algún otro nuevo, el mismo estará disponible para los usuarios.

Para llevar a cabo la tarea de bloqueo, se requiere acceso al tenant mediante Powershell.

Iniciaremos Powershell como administrador ejecutaremos los siguientes comandos para instalar el modulo de MSCommerce. En caso de que ya lo tengamos, podemos omitir este paso.

Install-Module -Name MSCommerce
Import-Module -Name MSCommerce

Luego nos conectaremos al tenant con el siguiente comando:

Connect-MSCommerce

Nos pedirá que iniciemos sesión con la cuenta administrador del tenant.
El próximo paso será verificar el estado de los productos de autoservicio, para ver si están habilitados o no para que los usuarios compren. Para ello, ejecutaremos el siguiente comando:

Get-MSCommerceProductPolicies -PolicyId AllowSelfServicePurchase

Podremos ver que el resultado en nuestro caso es que todos los productos listados están en “Enabled” lo cual cualquier usuario podría comprarlos. Un ejemplo de esto, es que si un usuario busca el producto en linea y quiere avanzar en la compra podrá hacerlo.

Pero aquí veremos como deshabilitar los productos, ya sea uno en especifico o bien todo los disponibles hasta ahora. Para deshabilitar un producto especifico, ejecutaremos el siguiente comando, en donde especificamos el ProductID. El ProductID lo encontramos en los resultados de la consulta.

Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId CFQ7TTC0HDB0 -Enabled $False

Si avanzamos en el mismo proceso de compra como usuario que hicimos anteriormente, ahora veremos que recibirá un mensaje de que la organización no permite que los empleados compren el producto.

Ya testeado y comprobado como hemos cambiado la configuración de los productos del autoservicio, vamos a ver como deshabilitar con un solo script, a todos los productos disponibles en el momento. Recuerden, periódicamente ir verificando si aparecen productos nuevos ya que estarán habilitados por defecto.

Para deshabilitar todos los productos de forma facil, ejecutaremos el siguiente script:

Get-MSCommerceProductPolicies -PolicyId AllowSelfServicePurchase | Where { $_.PolicyValue -eq “Enabled”} | forEach {
Update-MSCommerceProductPolicy -PolicyId AllowSelfServicePurchase -ProductId $_.ProductID -Enabled $False }

Una vez terminado, si volvemos a ejecutar el comando de consulta, veremos a todos los productos en estado Disabled.

Espero les haya sido de utilidad.
Saludos.

LEAVE A RESPONSE

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Alejandro es consultor senior en infraestructura IT, principalmente en tecnologías Microsoft. Trabaja en forma independiente en empresas de diversas envergadura. En el año 2014 fue nombrado Microsoft MVP en la especialidad Windows ITPro. Hoy forma parte del programa Microsoft Reconnect. Adicionalmente es Partner de Microsoft.