Módulo Exchange Online PowerShell V2

Módulo Exchange Online PowerShell V2

El módulo Exchange Online PowerShell V2 (abreviado como el módulo EXO V2) permite que los administradores se conecten a su entorno de Exchange online en Office 365 para recuperar datos, crear nuevos objetos, actualizar objetos existentes, quitar objetos, así como configurar Exchange En línea y sus características.

Cómo funciona el módulo EXO V2

El módulo Exchange Online PowerShell V2 contiene un pequeño conjunto de cmdlets que se optimizan para escenarios de recuperación masiva de datos (piense en miles de objetos). Hasta que no cree una sesión para conectarse a su organización de Exchange Online, solo verá estos cmdlets nuevos en el módulo. Después de conectarse a la organización de Exchange Online, verá todos los cmdlets de PowerShell remotos anteriores.

El módulo EXO V2 usa la autenticación moderna para todos los cmdlets. No puede usar la autenticación básica en el módulo EXO V2; sin embargo, aún debe configurar la configuración de autenticación básica en WinRM, como se describe más adelante en este tema.

Los nuevos cmdlets del módulo EXO V2 están diseñados para reemplazar sus equivalentes más antiguos menos eficientes. Sin embargo, los cmdlets originales todavía están disponibles en el módulo EXO v2 para la compatibilidad con versiones anteriores después de crear una sesión para conectarse a la organización de Exchange Online.

En la tabla siguiente se enumeran los nuevos cmdlets del módulo EXO V2:

Nuevo cmdlet en el módulo EXO V2Cmdlet relacionado más antiguo
Connect-ExchangeOnlineConnect-EXOPSSession
o
New-PSSession
Get-EXOMailboxGet-Mailbox
Get-EXORecipientGet-Recipient
Get-EXOCASMailboxGet-CASMailbox
Get-EXOMailboxPermissionGet-MailboxPermission
Get-EXORecipientPermissionGet-RecipientPermission
Get-EXOMailboxStatisticsGet-MailboxStatistics
Get-EXOMailboxFolderStatisticsGet-MailboxFolderStatistics
Get-EXOMailboxFolderPermissionGet-MailboxFolderPermission
Get-EXOMobileDeviceStatisticsGet-MobileDeviceStatistics

 

Instalación y mantenimiento del módulo de Exchange Online PowerShell V2

Puede descargar el módulo EXO V2 desde la galería de PowerShell aquí.

Instalar el módulo EXO V2

Para instalar el módulo EXO V2 por primera vez, ejecute los comandos siguientes:

  1. En el equipo local, ejecute uno de los siguientes comandos desde una sesión de Windows PowerShell con privilegios elevados (una ventana de Windows PowerShell que se abre seleccionando Ejecutar como administrador):

    • Instala el módulo PowerShellGet por primera vez o ejecuta la versión actual del módulo powershellget en paralelo con la versión más reciente:

      Install-Module PowershellGet -Force
      
    • Actualice la versión existente del módulo PowerShellGet a la versión más reciente:

      Update-Module PowershellGet
      
  2. Windows PowerShell tiene que configurarse para ejecutar scripts y, de forma predeterminada, no lo es. Para requerir que todos los scripts de PowerShell que descargue desde Internet estén firmados por un editor de confianza, ejecute el siguiente comando en una ventana de Windows PowerShell con privilegios elevados: 

    Set-ExecutionPolicy RemoteSigned
    

    Notas:

    • Debe configurar esta opción una sola vez en el equipo. Obtenga más información sobre las directivas de ejecución aquí.

    • Si no realiza este paso, recibirá el siguiente error cuando intente conectar:

      No se pueden cargar los archivos porque la ejecución de scripts está deshabilitada en este sistema. Proporcione un certificado válido con el que firmar los archivos.

  3. Cierre y vuelva a abrir la ventana de Windows PowerShell con privilegios elevados para obtener los cambios de los pasos anteriores.

  4. Ejecute el siguiente comando desde una ventana de Windows PowerShell con privilegios elevados:

    Install-Module -Name ExchangeOnlineManagement
    

    Escriba Y para aceptar el contrato de licencia.

Actualizar el módulo EXO V2

Si el módulo EXO V2 ya está instalado en el equipo, puede ejecutar los siguientes comandos para ver la versión que está instalada actualmente y actualizarla a la versión más reciente.

  1. Para ver la versión del módulo EXO v2 que está instalada actualmente, ejecute los comandos siguientes: 

    Import-Module ExchangeOnlineManagement; Get-Module ExchangeOnlineManagement
    
  2. Ejecute el siguiente comando para actualizar el módulo EXO V2 a la versión más reciente que está disponible en la galería de PowerShell:

    Update-Module -Name ExchangeOnlineManagement
    

    Escriba Y para aceptar el contrato de licencia.

    Nota: Si recibe el siguiente error relacionado con el módulo powershellget, consulte el paso 1 de la sección instalación anterior del módulo Exo V2 para actualizar el módulo PowerShellGet a la versión más reciente.

    El módulo especificado ' ExchangeOnlineManagement ' con PowerShellGetFormatVersion '<versión>' no es compatible con la versión actual de PowerShellGet. Obtén la última versión del módulo PowerShellGet para instalar este módulo, "ExchangeOnlineManagement".

    Si necesita actualizar el módulo PowerShellGet, asegúrese de cerrar y volver a abrir la ventana de Windows PowerShell antes de intentar actualizar el módulo ExchangeOnlineManagement.

  3. Para confirmar que la actualización se ha realizado correctamente, ejecute los comandos siguientes:

    Import-Module ExchangeOnlineManagement; Get-Module ExchangeOnlineManagement
    

Desinstalar el módulo EXO V2

Para desinstalar el módulo, ejecute el siguiente comando:

Uninstall-Module -Name ExchangeOnlineManagement

Conectarse a Exchange online mediante el módulo EXO V2

 Nota

Si su cuenta usa multi-factor Authentication (MFA), omita el primer paso (el cmdlet Get-Credential no admite cuentas habilitadas para MFA).

  1. En el equipo local, abra una ventana de Windows PowerShell y ejecute el siguiente comando: 

    $UserCredential = Get-Credential
    

    En el cuadro de diálogo Solicitud de credenciales para Windows PowerShell, escriba el usuario de su cuenta profesional o educativa y la contraseña, y luego haga clic en Aceptar.

  2. Ejecute uno de los siguientes comandos:

    • Cuentas sin MFA habilitada

      Connect-ExchangeOnline -Credential $UserCredential -ShowProgress $true
      
    • Cuentas con MFA habilitada<UPN> Reemplace con su cuenta en el formato de nombre principal de usuario navin@contoso.com(por ejemplo,) y ejecute el siguiente comando:

      Connect-ExchangeOnline -UserPrincipalName <UPN> -ShowProgress $true
      

Para obtener información detallada acerca de la sintaxis y los parámetros, consulte Connect-ExchangeOnline.

Propiedades y conjuntos de propiedades en el módulo EXO V2

La salida de los cmdlets de Exchange Online tradicionales devuelve todas las propiedades de objeto posibles, incluidas muchas propiedades que suelen estar en blanco o que no son necesarias en muchos escenarios. Devolver un gran número de propiedades en blanco e innecesarias causa una disminución del rendimiento (más cálculo de servidor y carga de red agregada). El complemento completo de propiedades rara vez es necesario en la salida del cmdlet.

Los cmdlets del módulo EXO V2 tienen propiedades de salida categorizadas. En lugar de asignar a todas las propiedades el mismo valor de importancia y devolverlas en todos los escenarios, hemos clasificado propiedades relacionadas específicas en conjuntos de propiedades. En pocas palabras, estos conjuntos de propiedades son cubos de dos o más propiedades relacionadas en el cmdlet.

Los conjuntos de propiedades se controlan mediante los siguientes parámetros en los cmdlets del módulo EXO V2:

  • PropertySets: este parámetro acepta uno o varios nombres de conjuntos de propiedades disponibles separados por comas.

    En este ejemplo se devuelven las propiedades que están disponibles en los conjuntos de propiedades personalizadas y de archivo: 

    Get-EXOMailbox -PropertySets Archive,Custom
    
  • Propiedades: este parámetro acepta uno o más nombres de propiedad separados por comas.

    En este ejemplo se devuelven las propiedades especificadas:

    Get-EXOMailbox -Properties LitigationHoldEnabled,AuditEnabled
    

    Nota: los cmdlets que solo devuelven un pequeño número de propiedades de salida no tienen los parámetros PropertySet o Properties .

Puede usar PropertySets y propiedades en el mismo comando. Por ejemplo:

Get-EXOMailbox -Properties IsMailboxEnabled,SamAccountName -PropertySets Delivery
Get-EXOCASMailbox -Properties EwsEnabled, MAPIBlockOutlookNonCachedMode -PropertySets ActiveSync

También hemos incluido un conjunto de propiedades mínima (o minset) en los conjuntos de propiedades disponibles que incluye un conjunto mínimo de propiedades para el resultado del cmdlet.

  • Si no usa los parámetros PropertySets o Properties , obtendrá automáticamente las propiedades que se incluyen en el conjunto de propiedades mínimas.

  • Si usa los parámetros PropertySets o Properties , solo obtiene las propiedades especificadas.

En cualquier caso, el resultado del cmdlet contendrá muchas menos propiedades y el tiempo que se tarda en devolver esos resultados será mucho más rápido.

En este ejemplo se devuelven las propiedades del conjunto de propiedades mínimas de los diez primeros buzones.

Get-EXOMailbox -ResultSize 10

Por el contrario, el mismo cmdlet Get-Mailbox devolvería como mínimo 230 propiedades para los mismos diez buzones.

Para obtener información detallada sobre los conjuntos de propiedades que están disponibles en los cmdlets del módulo EXO V2, consulte conjuntos de propiedades en los cmdlets de Exchange Online PowerShell V2 o los temas de referencia de los cmdlets individuales de los módulos Exo V2.

Los cmdlets EXO también proporcionan una manera de recuperar todas las propiedades de un objeto mediante el parámetro ProperySets con el Allvalor.

En el siguiente ejemplo, se devuelven todas las propiedades de los 10 buzones:

Get-EXOMailbox -ResultSize 10 -PropertySets All