M365PowerShell

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.

  • Actualmente los módulos Azure AD, Azure AD Preview y MSOnline PowerShell están obsoletos. Microsoft Graph PowerShell es el módulo de PowerShell que se usa para interactuar con Microsoft Entra ID y otros servicios de Microsoft.

Conexión a Microsoft 365 con PowerShell de Microsoft Graph

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

Microsoft Graph connect

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

Get-MgSubscribedSku

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 @()

asignada licencia M365