Ir al contenido principal

SDK de Microsoft Graph PowerShell y Módulo MgGraph

¡Hola a todos! En esta ocasión les traigo información introductoria para todos aquellos que les interese trabajar con el SDK de Microsoft Graph PowerShell y cómo podemos instalar el módulo de Microsoft Graph en PowerShell.

¿Qué es el SDK de Microsoft Graph PowerShell?

El SDK de Microsoft Graph PowerShell actúa como un contenedor para las API de Microsoft Graph, exponiendo todo el conjunto de API para su uso en PowerShell. Contiene un conjunto de comandos que lo ayudan a administrar identidades a escala, desde la automatización de tareas hasta la administración masiva de usuarios mediante Azure Active Directory (Azure AD). Ayudará a administrar cada función de Azure AD que tenga una API en Microsoft Graph. 


Nota: El SDK de Microsoft Graph PowerShell es el reemplazo del módulo Azure AD PowerShell y se recomienda para interactuar con Azure AD. El antiguo módulo de AzureAD, estará fuera de soporte a finales de 2022.



Características


El SDK de PowerShell de Microsoft Graph proporciona los siguientes beneficios:

  • Acceso a todas las API de Microsoft Graph, no solo a Azure Active Directory: El SDK de Microsoft Graph PowerShell se basa en la API de Microsoft Graph. La API de Microsoft Graph incluye, además de Azure AD, las API de otros servicios de Microsoft como SharePoint, Exchange, Outlook, etc., a los que se accede a través de un único punto final con un único token de acceso. Azure AD Graph PowerShell se basa en Azure AD Graph, que está en desuso. 
  • Compatibilidad multiplataforma y disponible en PowerShell 7 y versiones posteriores: El módulo Microsoft Graph PowerShell funciona con PowerShell 7 y versiones posteriores y en todas las plataformas, incluidas Windows, macOS y Linux. También es compatible con Windows PowerShell 5.1.
  • Admite la autenticación moderna: Microsoft Graph PowerShell admite la Biblioteca de autenticación de Microsoft (MSAL), que ofrece más seguridad que su contraparte de la Biblioteca de autenticación de Active Directory (ADAL) de Azure AD PowerShell.
  • Código abierto: Los equipos de características y la comunidad pueden crear excelentes experiencias de PowerShell y compartirlas con todos.


Requisitos para instalar el módulo Microsoft Graph PowerShell

Si tienes PowerShell 7 o una versión más reciente, no hay requisitos adicionales para poder utilizar el módulo de Microsoft Graph para PowerShell.

Para Windows PowerShell, los requisitos son los siguientes:

  • Actualizar a Windows PowerShell 5.1 o más reciente
  • Instalar .NET Framework 4.7.2 o más reciente
  • Actualizar el módulo PowerShellGet a la versión más reciente, puedes hacerlo ejecutando el siguiente comando:

Install-Module -Name PowerShellGet -Force 

  • La política de ejecución de script debe estar en modo "RemoteSigned", esto quiere decir que los scripts que son creados en el equipo local pueden ejecutarse sin ninguna restricción, sin embargo, requerirá una firma digital de un editor de confianza para los scripts y archivos de configuración que se descarguen desde Internet, lo que incluye programas de correo electrónico y mensajería instantánea. Para habilitar este modo, debemos ejecutar el siguiente comando:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser 


Descargar e Instalar el módulo de Microsoft Graph para PowerShell

Puedes descargar el modulo de Microsoft Graph para PowerShell desde la PowerShell Gallery o directamente puedes instalar la versión más reciente ejecutando el siguiente comando en PowerShell:


Install-Module -Name Microsoft.Graph 

Nota: Al instalar el módulo Microsoft.Graph, debemos tener en cuenta que el mismo incluye 38 sub-módulos. Por lo tanto, se recomienda solo instalar los necesarios, incluyendo el sub-módulo Microsoft.Graph.Authentication, el cual es instalado por defecto cuando decidimos instalar sub-módulos individualmente. Para poder ver todos los sub-módulos disponibles, debemos ejecutar el siguiente comando:

Find-Module Microsoft.Graph* 


Para verificar que se ha instalado el módulo correctamente, podemos utilizar el siguiente comando:

Get-InstalledModule Microsoft.Graph 

En mi caso, el resultado de esta consulta es el siguiente:

get installed module powershell


Conectar el módulo de Microsoft Graph para PowerShell

Antes de comenzar a utilizar el módulo, debemos tener en consideración que cada API en Microsoft Graph está protegida por uno o más ámbitos (Scopes) de permisos. Si un usuario inicia sesión, debe aceptar uno de los ámbitos (Scopes) requeridos para las API que desea usar. Para más información, favor consulta este enlace hacia el sitio web de Microsoft

Otra cosa a tener en cuenta, es que para conectar el módulo, debes iniciar sesión con una cuenta con permisos de administrador del tenant para poder aceptar los ámbitos (Scopes) requeridos.

Para conectar el módulo, ejecutamos el siguiente comando utilizando un Scope que nos permite leer información de todos los usuarios:

Connect-MgGraph -Scopes "User.Read.All" 

Desinstalando el módulo de Microsoft Graph para PowerShell

Cuando ya no necesites este módulo, debes seguir los siguientes pasos para desinstalar tanto el módulo principal, como los sub-módulos:

  1. Primero, use el siguiente comando para desinstalar el módulo principal:

  2. Uninstall-Module Microsoft.Graph 

  3. Luego, elimina todos los módulos de dependencia ejecutando los siguientes comandos:
Get-InstalledModule Microsoft.Graph.* | %{ if($_.Name -ne "Microsoft.Graph.Authentication"){ Uninstall-Module $_.Name } }
Uninstall-Module Microsoft.Graph.Authentication
 

Comentarios

Entradas populares de este blog

¿Qué es un tenant o inquilino en Azure?

Iniciaremos este blog explicando qué es un tenant en Azure Active Directory, para qué se utiliza y cómo podemos crearlos. En definición, un tenant o inquilino (nombre traducido al español), es la instancia dedicada de Microsoft  Azure Active Directory que adquiere una organización al momento de darse de alta en Microsoft Azure, Microsoft 365 o Microsoft Intune. Los tenants constan de un dominio único, el cual se emplea para la administración de identidades (usuarios, grupos y dispositivos) y registro de aplicaciones que usen la plataforma de identidades de Microsoft. Requisitos para obtener un tenant El único requisito que se debe tener en cuenta para la creación de un tenant es tener una cuenta con una suscripción activa de Microsoft Azure. Si quieres saber como crear una suscripción de Microsoft Azure, debajo te dejo un enlace en donde lo explico de una manera breve 🙂 Crear una suscripción en Azure Tenants y tipos de entorno Existen dos tipos de entornos en los que podemos ...

Como unir un equipo Windows a un dominio de Active Directory

¡Hola a todos! En este articulo explicaré brevemente las distintas maneras que tenemos disponibles para unir un equipo con Windows 10/11 o Windows Server 2022 / 2019 / 2016 a un dominio de Active Directory. Antes de iniciar con la configuración, es indispensable tener en cuenta los siguientes requisitos: El equipo debe estar conectado a la red, debe poder tener comunicación con al menos uno de los servidores de dominio de Active Directory y poder resolver via DNS el nombre del dominio existente. Para este ejemplo estaremos uniendo el equipo al dominio " noble.com "; Por lo tanto, podemos probar haciendo un ping al dominio desde una cmd. Si el sistema operativo del equipo es Windows 10/11, debemos asegurarnos que la edición sea Professional, Enterprise o Professional para estaciones de trabajo, ya que son las únicas compatibles. Asegurar que el equipo tiene el nombre ( hostname ) correcto antes de unirlo al dominio debido a que AD DS genera un objeto con el nombre que posea el...

Instalando Windows Server 2022

En este post explicaré de una manera resumida como instalar Windows Server . Los pasos que se explican en este tutorial se pueden aplicar para las versiones desde  Windows Server 2008 R2 hasta Windows Server 2022 , instalándolo tanto en un equipo físico como en una máquina virtual. Requisitos para la instalación: Pendrive USB / o DVD, con la imagen de Windows Server montada. En caso de utilizar una máquina virtual (Hyper-V, VMware, VirtualBox), puedes montar directamente la imagen .ISO en el hipervisor. Equipo físico (Servidor, ordenador de escritorio o portátil) o máquina virtual, donde será instalado el sistema operativo. El mismo como mínimo debe cumplir con las siguientes especificaciones técnicas: Procesador : procesador de 1.4 bits a 64 GHz, compatible con 64 bits RAM : 512 MB y 2 GB para la opción de instalar Desktop Experience. Red : tarjeta NIC con un ancho de banda mínimo de 1 GBPS HDD : 32GB Instalación de Windows Server 2022 Una vez iniciado el equipo, aparecerá un men...