Usare la Exchange Management Shell in remoto su Office 365

ems-cloud Vorreste usare la Exchange management shell anche su Office 365?

Può capitare di voler usare i comandi Powershell che normalmente utilizzate nella gestione del vostro Exchange “on premise” anche nella versione in cloud. Ma come si accede con powershell ad Office365?

Anzitutto salvate nella variabile $UserCredential le vostre credenziali di accesso amministrativo ad Office 365:

$UserCredential = Get-Credential

Ora lanciate il comando ed attendete che la sessione venga creata:

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

Una volta creata la connessione, per accedere alla sessione remota su Office 365 digitate:

Import-PSSession $SessioneO365 -DisableNameChecking

Se tutto è andato bene lanciando il seguente comando otterete:

PS C:\Windows\system32> Get-Recipient | Where-Object {($_.RecipientType -eq “UserMailbox”)}

Name                             RecipientType
----                             -------------
Utente 1                         UserMailbox
Utente 2                         UserMailbox
Utente 3                         UserMailbox

Attenzione:

A fine lavoro non lasciate la sessione aperta ma rimuovetela col comando:

Remove-PSSession $SessioneO365

Se poi volete anche accedere alle risorse di Office365 installate il modulo MSonline. Questo il comando:

[PS] C:\Windows\system32>Install-Module MSOnline

Archivio non attendibile
Stai installando i moduli da un archivio non attendibile. Se ritieni attendibile questo archivio, modifica il relativo
valore InstallationPolicy eseguendo il cmdlet Set-PSRepository. Vuoi installare i moduli da 'PSGallery'?
[S] Sì  [T] Sì a tutti  [N] No  [U] No a tutti  [O] Sospendi  [?] Guida (il valore predefinito è "N"): S

Quindi per connettersi:

[PS] C:\Windows\system32>Connect-MsolService -Credential $UserCredential

Per testarne il funzionamento si potrà usare il comando Get-MsolUser ottenendo:

[PS] C:\Windows\system32>Get-MsolUser | select UserPrincipalName, DisplayName

UserPrincipalName               DisplayName
-----------------               -----------
mrossi@acme.onmicrosoft.com     Mario Rossi
ebianchi@acme.onmicrosoft.com   Enzo Bianchi
pneri@acme.onmicrosoft.com      Paolo Neri
imarroni@acme.onmicrosoft.com   Ilaria Marroni

Se il comando Install-Module vi da errore sappiate che esso è disponibile solo dalla versione 3 di powershell. Per verificare che versione di Powershell e di Windows avete lanciate:

$PSVersionTable.PSVersion
(Get-WmiObject Win32_operatingsystem).caption
(Get-WmiObject Win32_operatingsystem).OSarchitecture

se in corrispondenza della colonna Major avrete un risultato <5.1 allora bisognerà installare una versione più recente del Windows Management Framework.

Ecco il link:

https://docs.microsoft.com/it-it/powershell/wmf/5.1/install-configure

Oppure per versioni più vecchie puoi installare il PackageManagement PowerShell Modules:

https://www.microsoft.com/en-us/download/confirmation.aspx?id=51451&6B49FDFB-8E5B-4B07-BC31-15695C5A2143=1

Attenzione: se lanciando un comando remoto ricevete l’errore:

Exception : System.Management.Automation.RemoteException: The syntax is not supported by this runspace.
This can occur if the runspace is in no-language mode.

c’è un problema con le policy che permettono l’esecuzione degli script Powershell. Chiudete la sessione col comando suindicato e verificatele col comando Get-ExecutionPolicy -List. Settatele poi secondo esigenza col comando Set-ExecutionPolicy (per testare potete usare il comando Set-ExecutionPolicy bypass che permette l’esecuzione di tutti gli script).

Pubblicità

Lascia un commento qui

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...