Los administradores de Microsoft 365 deben administrar cuentas de usuario, licencias y grupos. Aunque puede realizar la mayoría de estas tareas en el Centro de administración de Microsoft 365, algunas son más fáciles en PowerShell.
1.- Introducción
En entornos empresariales es habitual necesitar asignar licencias de Microsoft 365 a múltiples usuarios de forma rápida. Realizar esta tarea manualmente desde el portal de administración puede ser lento cuando se trata de varios usuarios.
Asignar licencias de Microsoft 365 (por ejemplo Microsoft 365 E3) utilizando PowerShell y Microsoft Graph, permitiendo automatizar el proceso a partir de un fichero CSV con el listado de usuarios y/o asignar de manera individual. Primero se debe asignar una ubicación a las cuentas de usuario. Especificar una ubicación es una parte necesaria de la creación de una nueva cuenta de usuario.
2.- Requisitos
Antes de comenzar, es necesario disponer de:
- Permisos de Administrador global o Administrador de licencias en Microsoft 365.
- PowerShell 5.1 o superior.
- Conexión a Internet.
- Módulo Microsoft Graph PowerShell instalado
3.- Instalar el módulo Microsoft Graph
Abrir PowerShell como administrador y ejecutar:
Install-Module Microsoft.Graph -Scope CurrentUser
4.- Conectarse a Microsoft 365
Para autenticarse en el tenant ejecutar:
Connect-MgGraph -Scopes User.ReadWrite.All, Organization.Read.All
Se abrirá una ventana de autenticación donde se debe iniciar sesión con una cuenta con permisos administrativos.
La asignación y eliminación de licencias para un usuario requiere el ámbito de permisos User.ReadWrite.All
5.- Comprobar las licencias disponibles
Para listar todas las licencias disponibles en el Tenant ejecutar:
Get-MgSubscribedSku | Select SkuPartNumber, SkuId
Para Microsoft 365 E3, el valor más común es:
SPE_E3
6.- Listar Microsoft 365 E3
Get-MgSubscribedSku | Where-Object {$_.SkuPartNumber -eq «SPE_E3»}
7.- Asignar la licencia al usuario
$upn=»usuario@empresa.com»
Set-MgUserLicense -UserId $upn -AddLicenses @{SkuId=$sku.SkuId} -RemoveLicenses @()





