Búsqueda de sitios web

Gestión e informes de licencias de Office 365 mediante PowerShell


Los administradores de Microsoft 365 necesitan administrar los usuarios y sus licencias de manera eficiente para reducir los costos de las licencias. Además, es necesario comprender los requisitos de los usuarios antes de asignar la licencia e identificar las licencias no utilizadas para optimizar la gestión de licencias.

Actualización de 2022: los módulos MSOnline y AzureAD PowerShell dejarán de estar disponibles en 2022

Este blog utiliza el módulo MSOnline para administrar y generar informes sobre licencias de Office 365. Dado que el módulo quedará obsoleto antes, hemos desarrollado un nuevo script para administrar las licencias de Office 365 utilizando MS Graph PowerShell. Puede descargar el script desde nuestro blog: Administrar licencias de Microsoft 365 usando MS Graph.

Si es una organización pequeña, puede usar el centro de administración de Microsoft 365 para asignar y monitorear licencias. Pero el centro de administración no es viable para organizaciones grandes. En este caso, puede utilizar cmdlets de PowerShell para administrar licencias. Pero, si es nuevo en PowerShell, le resultará complicado asignar o eliminar licencias de forma masiva y generar informes de licencias.

Para superar las dificultades, hemos creado un script All-in-One PowerShell para la administración de licencias de M365. ¡Sí! Una sola secuencia de comandos puede realizar más de 10 actividades de generación de informes y administración de licencias de Office 365.

Descarga del guión: O365LicenseReportingAndManagement.ps1

Guiones destacados:
  • Genera 5 informes de licencias de Office 365.
  • Permite realizar 6 acciones de administración de licencias que incluyen agregar o eliminar licencias de forma masiva.
  • El nombre de la licencia se muestra con su nombre descriptivo como "Office 365 Enterprise E3" en lugar de "ENTERPRISEPACK".
  • El script también se puede ejecutar con una cuenta habilitada para MFA .
  • Exporta el resultado del informe a CSV.
  • Exporta el archivo de registro de asignación y eliminación de licencias.
  • El script es compatible con el programador. es decir, puedes pasar las credenciales como parámetro en lugar de guardarlas dentro del script.

Informes y administración de licencias de Office 365 mediante PowerShell Script:

Como se dijo anteriormente, puede utilizar este script para generar varios informes de licencias y realizar acciones de administración de licencias. Hemos enumerado algunas acciones importantes aquí.

Informes de licencia de Office 365
  1. Obtenga el informe de todos los usuarios con licencia
  2. Obtenga el informe de todos los usuarios sin licencia
  3. Obtener usuarios con un tipo de licencia específico
  4. Encuentra todos los usuarios discapacitados con licencias
  5. Informe de uso de licencia de Office 365
Gestión de licencias de Office 365
  1. Masivo: asignar una licencia a los usuarios (ingrese CSV)
  2. Masivo: asignar múltiples licencias a los usuarios (ingrese CSV)
  3. Quitar licencia a un usuario
  4. Masivo: eliminar todas las licencias de los usuarios (ingrese CSV)
  5. Eliminar licencia específica de todos los usuarios
  6. Eliminar todas las licencias de usuarios discapacitados

Herramienta de administración e informes de licencias de Office 365: métodos de ejecución:

Para ejecutar este script, puede elegir cualquiera de los métodos siguientes.

Método 1: ejecutar el script con cuenta MFA y no MFA

.\O365LicenseReportingAndManagement.ps1

Método 2: Ejecute el script mencionando explícitamente la credencial y la "Acción" requerida.

.\O365LicenseReportingAndManagement.ps1 -UserName admin@contsoso.com -Password XXX -Action 1

Puede utilizar el formato anterior para automatizar la generación del informe. Si la cuenta de administrador tiene MFA, debe desactivar MFA según la política de acceso condicional para que funcione.

Método 3: Para realizar múltiples acciones sin ejecutar el script varias veces, puedes usar -MultipleActionsMode param.

.\O365LicenseReportingAndManagement.ps1 -MultipleActionsMode

Mostrará el menú principal hasta que finalice el script proporcionando una entrada como 0.

Libere todo el potencial de este script

La secuencia de comandos admite los siguientes parámetros integrados para facilitar la administración de licencias de Office 365 y sus necesidades de generación de informes.

1.Acción: para especificar directamente una acción de informes o administración en lugar de seleccionarla desde el menú principal.

2.LicenseName: para obtener usuarios con un plan de licencia específico.

3.Nombre de usuario y contraseña: para programar el script de PowerShell sin inicio de sesión interactivo.

4.MultipleActionsMode : para mostrar el menú principal nuevamente después de completar una acción. Le ayudará a realizar múltiples acciones continuamente sin ejecutar el script una y otra vez.

Exportar todos los usuarios con licencia en Office 365:

Para obtener una lista de usuarios con licencia en su organización, ejecute la secuencia de comandos de la siguiente manera o seleccione la acción requerida en el menú principal.

.\O365LicenseReportingAndManagement.ps1 -Action 1

Con este informe, puede encontrar usuarios con licencia y sus licencias asignadas, nombres descriptivos de licencia, estado de cuenta, etc.

Resultado de muestra:

Nota: Puede consultar nuestro blog anterior para obtener un informe de licencia detallado junto con los servicios asignados y su estado.

Consiga usuarios sin licencia en Office 365 mediante PowerShell:

Para ver todos los usuarios sin licencia de su organización, ejecute el siguiente código directamente o elija la opción requerida en el menú.

.\O365LicenseReportingAndManagement.ps1 -Action 2

Al consultar este informe, los administradores pueden identificar a los usuarios que no tienen ningún plan de licencia y asignarles una licencia, si es necesario.

Resultado de muestra:

Exportar lista de usuarios con un tipo de licencia específico:

Para que los usuarios de Office 365 tengan un plan de licencia específico, ejecute el script de la siguiente manera.

.\O365LicenseReportingAndManagement.ps1 -Action 3

Le solicitará un plan de licencia. Después de ingresar el plan de licencia, la secuencia de comandos enumerará los usuarios con licencia que coincidan con esa licencia.

Por ejemplo, para obtener una lista de usuarios con la licencia E3, ingrese "Contoso:EnterprisePack" cuando la secuencia de comandos solicite el nombre de la licencia.

También puede pasar el Plan de licencia como parámetro como se muestra a continuación.

.\O365LicenseReportingAndManagement.ps1 -Action 3 -LicenseName Contoso:EnterprisePack

Resultado de muestra:

El resultado de muestra enumera todos los usuarios con licencia E3.

Obtener usuarios deshabilitados aún con licencia en Office 365:

Generalmente, las cuentas de los ex empleados se desactivan después de que abandonan la oficina. En algunas situaciones, es posible que desee recuperar la licencia de Office 365 de los usuarios fallecidos para poder asignarlas a otros usuarios. Para buscar usuarios discapacitados con licencia, ejecute el script de la siguiente manera.

.\O365LicenseReportingAndManagement.ps1 -Action 4

El informe exportado contiene UPN, nombre para mostrar, plan de licencia, nombre descriptivo del plan de licencia, departamento y puesto de trabajo.

Resultado de muestra:

Informe de uso de licencias de Office 365:

El informe de uso de licencias de Office 365 enumera todas las suscripciones disponibles en su organización, junto con el recuento de licencias activas y el recuento de licencias asignadas. Pero consultando este informe, puede calcular el recuento de licencias no asignadas.

Para generar un informe de uso de licencia, ejecute el script y seleccione la acción necesaria en el menú. De lo contrario, ejecute directamente el siguiente código.

.\O365LicenseReportingAndManagement.ps1 -Action 5

Resultado de muestra:

Asignación masiva de licencias de Office 365 mediante PowerShell:

Los usuarios deben tener una licencia de Office 365 para utilizar cualquier servicio de Microsoft 365. Los administradores pueden asignar las licencias de forma masiva utilizando nuestro script de PowerShell. A continuación, cubrimos los casos de uso más solicitados.

Asignar una licencia a usuarios desde CSV:

Para asignar una licencia de Office 365 a varios usuarios mediante un archivo CSV, ejecute el script de PowerShell de la siguiente manera.

.\O365LicenseReportingAndManagement.ps1 -Action 6

El script le pedirá el nombre de la licencia y la ruta del archivo CSV. Hemos dado un ejemplo para los detalles de entrada a continuación.

Formato del archivo de entrada:

El archivo CSV/txt de entrada debe seguir el siguiente formato: UPN de usuarios separados por una nueva línea sin encabezado.

Archivo de registro de salida: muestra

Después de la ejecución del script, puede consultar el archivo 'Office365_License_Assignment_Log' para conocer el resultado de la asignación de licencia.

Asignar varias licencias a la lista de usuarios:

Para asignar varias licencias a usuarios de Microsoft 365, ejecute el script como se muestra a continuación.

.\O365LicenseReportingAndManagement.ps1 -Action 7

Le solicitará la ubicación del archivo CSV y las licencias que se asignarán. Puede ingresar los nombres de las licencias en el siguiente formato: contoso:EnterprisePack,contoso:Flow_Free

Por ejemplo,

Establecer ubicación de uso en Office 365

Antes de que se pueda asignar una licencia a los usuarios, estos deben tener una "Ubicación de uso". De lo contrario, recibirá el error "La licencia no se puede asignar a un usuario sin una ubicación de uso especificada'. Para configurar la ubicación de uso para los usuarios de Office 365, hemos proporcionado el parámetro 'LicenseUsageLocation’.

Mientras ejecuta los casos de uso de asignación de licencia, puede especificar el parámetro 'LicenseUsageLocation' para establecer la ubicación de uso para los usuarios cuyo valor de ubicación de uso esté vacío.

Por ejemplo,

.\O365LicenseReportingAndManagement.ps1 -Action 7 -LicenseUsageLocation US

O

.\O365LicenseReportingAndManagement.ps1 -LicenseUsageLocation US

Anular la asignación de licencias de usuarios de Office 365 mediante PowerShell:

Identificar y reclamar licencias no utilizadas ayuda a optimizar el uso de la licencia y reducir el costo de la licencia. A continuación, cubrimos las técnicas de eliminación de licencias más solicitadas.

Eliminar todas las licencias de un usuario:

Cuando un usuario ya no necesita licencias o abandona la organización, puede quitarle todas las licencias asignadas a ese usuario. Al utilizar el siguiente formato, puede eliminar todas las licencias de una cuenta de usuario.

.\O365LicenseReportingAndManagement.ps1 -Action 8

Después de ejecutar el formato anterior, el script le pedirá que ingrese la identidad del usuario para cancelar la asignación de licencias. Puede proporcionar UserPrincipalName como identidad.

Eliminar todas las licencias de Office 365 para una lista de usuarios en CSV:

Cuando desee recuperar las licencias de antiguos empleados y usuarios inactivos, puede desasignar las licencias de forma masiva ejecutando nuestro script en el siguiente formato.

.\O365LicenseReportingAndManagement.ps1 -Action 9

El script solicitará la entrada de CSV. Después de ingresar la ruta del archivo, el script elimina la licencia de las cuentas de usuario mencionadas en el CSV de entrada. Después de la ejecución, puede consultar el archivo "Office365_License_Removal_Log" para conocer el estado de eliminación de la licencia.

Eliminar licencia específica de todos los usuarios:

Puede elegir este caso de uso en los siguientes escenarios.

  • Cuando desee pasar de un plan de licencia a otro plan de licencia. Por ejemplo, E3 a E5.
  • Cuando ya no utilizas un plan de licencia específico

Para eliminar una licencia específica de todos los usuarios,

.\O365LicenseReportingAndManagement.ps1 -Action 10

Después de ejecutar el formato anterior, el script solicitará que se elimine el plan de licencia y luego procederá con la eliminación de la licencia. Al final, puede consultar el archivo de registro de auditoría de eliminación de licencia para conocer el estado.

Eliminar licencias de usuarios inhabilitados:

La mayoría de las organizaciones desactivan las cuentas de los usuarios fallecidos en lugar de eliminarlas. Para controlar los costos y obtener licencias no utilizadas, puede eliminar licencias de usuarios deshabilitados.

Para eliminar todas las licencias de todos los usuarios deshabilitados, ejecute el script de la siguiente manera:

.\O365LicenseReportingAndManagement.ps1 -Action 11

Puede consultar el archivo de registro para conocer la lista de usuarios deshabilitados y sus licencias no asignadas.

Programar informes de licencia de Office 365:

En lugar de ejecutar manualmente el script, puede utilizar el Programador de tareas de Windows para ejecutar el script automáticamente en un momento preconfigurado.

Para ejecutar el script como tarea programada de PowerShell, siga el siguiente formato

.\O365LicenseReportingAndManagement.ps1 -Action 1 -UserName admin@contoso.com -Password XX

Si la cuenta de administrador tiene MFA, debe desactivar MFA según la política de acceso condicional para que funcione.

¿Cómo obtener informes de licencia de Office 365 de forma sencilla?

Si está cansado de ejecutar cmdlets o scripts de PowerShell, puede probar la herramienta de informes AdminDroid Office 365. La herramienta proporciona más de 20 informes de licencia sin costo alguno para administrar las necesidades de licencias de su organización de manera eficiente.

Además, AdminDroid proporciona más de más de 100 informes y varios paneles completamente gratis. Incluye informes sobre usuarios, licencias, grupos, miembros de grupos, dispositivos, actividades de inicio de sesión, cambios de contraseña, cambios de licencia y más. La versión gratuita también te permite personalizar, programar y exportar. Descargue la herramienta gratuita de informes de Office 365 de AdminDroid y vea cómo le ayuda.

Cada informe proporciona análisis gráfico impulsado por IA para obtener información y comprender los datos de una manera visualmente atractiva.

Además, la herramienta de informes AdminDroid Microsoft 365 proporciona más de 1500 informes para obtener informes detallados sobre varios servicios de Office 365 como Azure AD, Exchange Online, SharePoint Online, Microsoft Teams, OneDrive for Business, Streams, One Note, Yammer. , etc.

Espero que este blog le ayude a administrar las licencias de Office 365 y generar informes de licencias. Puede compartir sus técnicas de gestión de licencias con otros administradores y con nosotros a través de la sección de comentarios.

Artículos relacionados