Conexión a Exchange Online PowerShell

Exchange Online PowerShell le permite administrar la configuración de Exchange Online desde la línea de comandos. Use la sesión de Windows PowerShell en su equipo local para crear una sesión remota de PowerShell en Exchange Online. Es un sencillo proceso de tres pasos que consiste en escribir las credenciales de Office 365, proporcionar la configuración de conexión necesaria y, después, importar los cmdlets de Exchange Online en la sesión local de Windows PowerShell para poder usarlos.

Important

Si quiere usar la autenticación multifactor (MFA) para conectarse a Exchange Online PowerShell, necesita descargar y usar el Módulo de PowerShell remoto de Exchange Online. Para obtener más información, consulte Conectarse a Exchange Online PowerShell con la autenticación multifactor.

Si es un cliente independiente de Exchange Online Protection (EOP) (por ejemplo, si usa EOP para proteger su entorno de correo electrónico local), siga las instrucciones de conexión en Conectarse a Exchange Online Protection PowerShell. Si su suscripción independiente de EOP es Exchange Enterprise CAL con Servicios (incluye la prevención de pérdida de datos [DLP] e informes mediante servicios web), las instrucciones de conexión descritas en este tema le resultarán útiles.

¿Qué necesita saber antes de comenzar?

  • Tiempo estimado para finalizar: 5 minutos

  • Puede usar las siguientes versiones de Windows:

  • Windows PowerShell se debe configurar para ejecutar scripts y, por defecto, no lo está. Obtendrá el siguiente error al intentar conectar:

    Files cannot be loaded because running scripts is disabled on this system. Provide a valid certificate with which to sign the files.

    Para requerir que todos los scripts de PowerShell que se descargue de internet sean de publicadores de confianza, ejecute el siguiente comando en una ventana de Windows PowerShell con permisos elevados (o sea, una ventana de Windows PowerShell que se abre seleccionando Ejecutar como administrador):

    Set-ExecutionPolicy RemoteSigned
    

    Esta opción se configura una sola vez en el equipo, y no cada vez que se conecte.

  • Administración remota de Windows (WinRM) en el equipo debe permitir la autenticación básica (está activada de forma predeterminada). Para comprobar que la autenticación básica está habilitada, ejecute este comando en el símbolo del sistema:

    winrm get winrm/config/client/auth
    

    Si no ve el valor Basic = true, debe ejecutar este comando para habilitar la autenticación básica para WinRM:

    winrm set winrm/config/client/auth @{Basic="true"}
    

    Si la autenticación básica está deshabilitada, recibirá este error cuando intente conectar:

    The WinRM client cannot process the request. Basic authentication is currently disabled in the client configuration. Change the client configuration and try the request again.

Tip

¿Problemas? Solicite ayuda en los foros de Exchange. Visite los foros en Exchange Online o Exchange Online Protection.

Important

El 13 de octubre de 2020 retiramos la autenticación básica para PowerShell en remoto (RPS) en Exchange Online.

Conectarse a Exchange Online

  1. En el equipo local, abra 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 el siguiente comando:

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
    

    Notas:

    • Para Office 365 ofrecido por 21Vianet, use el valor ConnectionUri: https://partner.outlook.cn/PowerShell

    • Para Office 365 Germany, use el valor ConnectionUri: https://outlook.office.de/powershell-liveid/

    • Para la Nube de la comunidad de Office 365 Administración Pública (GCC High), use el valor ConnectionUri: https://outlook.office365.us/powershell-liveid/

    • Si está detrás de un servidor proxy, ejecute este comando primero: $ProxyOptions = New-PSSessionOption -ProxyAccessType <Value>, donde el valor ProxyAccessType es IEConfig, WinHttpConfig o AutoDetect.

      A continuación, agregue el parámetro siguiente y el valor al final del comando $Session =...: -SessionOption $ProxyOptions.

      Para obtener más información, consulte New-PSSessionOption.

  3. Ejecute el siguiente comando:

    Import-PSSession $Session -DisableNameChecking
    

Note

Asegúrese de desconectar la sesión remota de PowerShell cuando haya terminado. Si cierra la ventana de Windows PowerShell sin desconectar la sesión, podría agotar todas las sesiones de PowerShell remotas que tenga disponibles y deberá esperar a que las sesiones expiren. Ejecute el siguiente comando para desconectar la sesión de PowerShell remota.

Remove-PSSession $Session

¿Cómo saber si el proceso se ha completado correctamente?

Después del paso 3, los cmdlets de Exchange Online se importan en la sesión local de Windows PowerShell, tal y como se indica en una barra de progreso. Si no se muestra ningún error, la conexión se habrá establecido correctamente. Una prueba rápida consiste en ejecutar un cmdlet de Exchange Online como, por ejemplo, Get-Mailbox, y ver los resultados.

Si surgen errores, compruebe los siguientes requisitos:

  • Un problema habitual es una contraseña incorrecta. Vuelva a realizar los tres pasos y preste especial atención al nombre de usuario y contraseña que escriba en el paso 1.

  • Para evitar que se produzcan ataques por denegación de servicio (DoS), solo se pueden tener abiertas tres conexiones de PowerShell para la organización de Exchange Online.

  • La cuenta que use para conectarse a Exchange Online debe estar habilitada para PowerShell remoto. Para más información consulte Activar o desactivar el acceso a Exchange Online PowerShell.

  • Debe abrir el tráfico del puerto TCP 80 entre su equipo local y Office 365. Probablemente esté abierto, pero es un aspecto que se debe tener en cuenta si la directiva de acceso a Internet de su organización es restrictiva.

  • Si su organización usa la autenticación federada, y el proveedor de identidades (IDP) o el servicio de token de seguridad (STS) no están disponibles públicamente, no podrá usar una cuenta federada para conectarse a Exchange Online PowerShell. En su lugar, cree y use una cuenta no federada en Office 365 para conectarse a Exchange Online PowerShell.

Ver también

Los cmdlets que se usan en este tema son cmdlets de Windows PowerShell. Para obtener más información acerca de estos cmdlets, consulte los siguientes temas.

Para obtener más información acerca de la administración de Office 365, consulte Administrar Office 365.