Trabajar con Powershell y Office 365

29/07/2014

Cada vez Microsoft da más importancia al uso de PowerShell en sus productos: SharePoint, Windows Server, SQL Server, Exchange… y cuando trabajamos con Office 365, nos encontramos que necesitamos acceder a dichos productos usando PowerShell. Este post describe cómo podemos acceder vía PowerShell a nuestro Office 365.

Antes de empezar necesitamos descargar estos dos softwares gratuitos para poder conectar vía PowerShell a Office 365:

– El ayudante de inicio de sesión para iniciar correctamente sesión en Office 365

http://www.microsoft.com/es-es/download/details.aspx?id=41950

– El módulo de Windows Azure Directory para Windows PowerShell, osea el software que nos permite lanzar la propia consola de PowerShell para Office 365.

http://msdn.microsoft.com/es-es/library/azure/jj151815.aspx
http://go.microsoft.com/fwlink/p/?linkid=236297

Una vez descargado e instalado veremos que nos aparece el icono de PowerShell ya preparado para Azure y por tanto para Office365

Software de PowerShell para Office 365

Software de PowerShell para Office 365

 

Una vez abierto la consola de PowerShell, lanzamos el siguiente comando para que nos permita lanzar cualquier tipo de script

Set-ExecutionPolicy Unrestricted

Habilitar la ejecución de cualquier script en PowerShell

Habilitar la ejecución de cualquier script en PowerShell

 

Una vez tenemos ya permisos para lanzar scripts, podemos lanzar este conjunto de sentencias como scripts o copiandolo y pegándolo

 

$365cred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $365cred -Authentication Basic -AllowRedirection
Import-PSSession $Session
Import-Module MSOnline
Connect-MSOLservice –Credential $365cred

 

Este script lo que hace es inicialmente pedirnos usuario y contraseña y guardarlo en la variable $365cred. Con dicha variable, el script inicia sesión en Office365, en este caso en Exchange online. Además importa diferentes módulos para importar la propia sesión y el módulo de gestión online y finalmente conecta el módulo online con la variable de inicio de sesión.

 

Nada más iniciarlo nos pedirá que iniciemos sesión

Inicio de Sesión guardado en una variable de PowerShell

Inicio de Sesión guardado en una variable de PowerShell

Veremos que nos aparece distintos mensajes en donde se redirige la conexión al Exchange online hospedado.

Conexión y redirección a la url de Exchange online

Conexión y redirección a la url de Exchange online

Una vez iniciada la sesión, ya podemos ejecutar cualquier comando de PowerShell. Por ejemplo si queremos obtener las estadísticas de un buzón cualquiera, lanzamos el siguiente comando  Get-MailboxStatistics

 

Estadística de un buzón de Exchange

Estadística de un buzón de Exchange

 

y de esta forma podríamos lanzar cualquier otro comando de PowerShell.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: